Le quattro parti in movimento
Il tracking in diretta moderno di una gara è una catena di quattro cose: un dispositivo che sa dov'è il ciclista, una rete che porta quella posizione da qualche parte, un server che la conserva e la interpreta, e uno schermo che la mostra a un pubblico. Ogni piattaforma di tracking in diretta, tracker satellitari, app basate sul telefono, beacon degli orologi GPS, è una combinazione diversa di quelle stesse quattro parti.
Capire quale combinazione usa una piattaforma è l'intera ragione per cui due piattaforme si comportano in modo diverso. Copertura, latenza, costo, la dimensione del pubblico che può guardare: tutto discende da quale dispositivo, rete, server e schermo hai scelto.
1. Il dispositivo, ciò che sa dov'è il ciclista
Ogni dispositivo di tracking in diretta, satellitare o telefono, usa la stessa tecnologia di base: un chip GPS ascolta i segnali della costellazione di satelliti GPS in orbita intorno alla Terra e triangola una posizione con un margine di pochi metri. Il chip GPS in sé ormai è praticamente gratis, ogni smartphone ne ha uno, e così ogni tracker dedicato.
Ciò che separa le categorie è cosa fa il dispositivo con quella posizione una volta che ce l'ha.
- I tracker satellitari (Spot, inReach, i dispositivi YB Tracking) inviano la posizione tramite un collegamento satellitare, che funziona ovunque nel mondo, ma il costo per messaggio è alto e il dispositivo costa da 200 a 500 sterline.
- Le app basate sul telefono (Aster, Strava Beacon, RideWithGPS Live) inviano la posizione tramite i dati cellulari che il telefono ha già, gratis al margine, dipendenti dalla copertura cellulare.
- Gli orologi GPS (Garmin LiveTrack, Wahoo Live) stanno in mezzo: l'orologio ha il chip GPS ma non la rete, quindi si accoppia con il telefono del ciclista via Bluetooth ed è il telefono a caricare i dati.
Aster sta nella categoria delle app basate sul telefono. Il telefono del ciclista è il dispositivo, il piano dati cellulare che il ciclista ha già è la rete. Non c'è hardware separato da spedire alla linea di partenza, nessun costo di attivazione per tracker, nessuna logistica di recupero dopo la gara.
2. La rete, come la posizione arriva al server
Una volta che il dispositivo ha una posizione, questa deve andare da qualche parte. Il vincolo qui è la banda e l'affidabilità, non la distanza in sé. Una posizione è minuscola, di solito tra 60 e 200 byte inclusi timestamp, precisione, velocità e percentuale della batteria. La sfida non è una posizione, ma una ogni pochi secondi per ore, attraverso una copertura a macchia di leopardo.
I tracker moderni basati sul telefono risolvono la copertura irregolare nello stesso modo di ogni app tollerante all'offline: con una coda sul dispositivo. Il telefono registra ogni posizione mentre avviene, ogni cinque secondi, diciamo, e conserva le posizioni in locale. Nel momento in cui torna il segnale cellulare, la coda si svuota in background. Su Aster la coda vive in SQLite nativo su iOS e Android, e sopravvive alla chiusura dell'app, al riavvio del telefono e (entro sette giorni) alla batteria che si scarica del tutto.
In pratica un ciclista può attraversare un tratto di 40 chilometri senza alcun segnale. La sua posizione si ferma sulla pagina di visione mentre è nella zona senza copertura, poi ricompare nella posizione attuale nel momento in cui torna il segnale, e la linea percorsa nella zona senza copertura si riempie sulla mappa.
3. Il server, cosa diventa la posizione
Una posizione che arriva al server viene interpretata, non semplicemente conservata. Il server la aggancia al percorso pianificato della gara così l'indicatore del ciclista segue la strada anziché la sua oscillazione di tre metri, calcola quanto il ciclista è avanzato lungo il percorso, aggiorna l'ordine della classifica, controlla se il ciclista ha attraversato il geofence del traguardo e trasmette l'aggiornamento a chiunque stia guardando l'evento in quel momento.
Due pezzi di infrastruttura fanno il lavoro pesante su una piattaforma moderna. Un database spaziale (Aster usa PostgreSQL con PostGIS) gestisce l'aggancio al percorso e le interrogazioni geografiche, così, dati un punto e la polilinea di un percorso, può rispondere qual è il punto più vicino sul percorso, a che altezza si trova e se il ciclista è al momento fuori percorso. E una cache in memoria (Aster usa i sorted set di Redis) tiene la posizione attuale in classifica così chi guarda e carica la pagina non deve aspettare un'interrogazione completa del database.
La parte poco appariscente ma critica è la gestione delle posizioni che arrivano in ritardo. Il telefono di un ciclista può caricare una coda di ping di due ore prima quando finalmente trova segnale. Il server deve inserirli nella cronologia nel giusto ordine temporale, ricalcolare la distanza totale e il tempo in movimento del ciclista, e non estendere la polilinea in diretta oltre dove il ciclista si trova davvero adesso. È qui che si vede la differenza tra un tracker ben costruito e uno raffazzonato, e nella nostra esperienza di costruzione i guasti da cui valeva la pena proteggersi sono stati svuotamenti tardivi che corrompevano la linea temporale, più che il GPS in sé.
4. Lo schermo, l'esperienza di chi guarda
Il passo finale è tutto ciò che il pubblico vede: la mappa in diretta con ogni ciclista che si muove, la classifica, i distacchi, gli orari stimati al prossimo Checkpoint, la chat in diretta, la visibilità degli Alert. È qui che i tracker moderni basati sul telefono hanno superato di slancio i tracker satellitari storici, perché il tetto di costo dell'esperienza di chi guarda non è più vincolato dall'economia dell'hardware.
Su una piattaforma satellitare hardware, la mappa per chi guarda è di solito una pagina web basilare che interroga il server ogni 30 o 60 secondi e ridisegna gli indicatori. Su una piattaforma nata sul telefono, la mappa per chi guarda può tenere un WebSocket in diretta con il server, ricevere gli aggiornamenti di posizione nell'istante in cui arrivano, animare i ciclisti fluidamente tra una posizione e l'altra e mostrare contenuti accessori ricchi, profilo del ciclista, colori della squadra, foto, commenti, senza sforzo. Il pubblico è sul telefono, e anche l'esperienza di chi guarda lo è.
Cosa significa per un organizzatore che deve decidere
Se sei un organizzatore di gare che confronta piattaforme di tracking, il modello a quattro parti è la lente giusta per valutare, quindi fai a ogni piattaforma le stesse quattro domande.
- Quanto costa il dispositivo per ciclista, in totale (hardware, attivazione, spedizione e recupero)?
- Cosa succede quando il ciclista perde la copertura cellulare o satellitare: le posizioni vengono messe in coda o vanno perse?
- Il server aggancia le posizioni al mio percorso, rileva i passaggi sul giro, tiene una classifica in diretta?
- Tutto il mio pubblico può guardare dal telefono senza account né installare un'app?
Le risposte ti dicono se stai comprando un tracker hardware del tipo che ha definito il formato quindici anni fa, esperienza di chi guarda compresa, o una piattaforma costruita intorno al dispositivo che quasi ogni ciclista ha già nella tasca della maglia.