Alla conferenza Google I/O di quest'anno abbiamo presentato Baseline, con l'obiettivo di creare una linea comune che indichi se le funzionalità della piattaforma web erano pronte per l'uso. Questo post spiega come si è evoluta la definizione, con l'aiuto dei feedback che abbiamo ricevuto dalla community e del lavoro del Community Group di WebDX.
Che cosa è cambiato?
La definizione originale di Baseline era che le funzionalità diventano parte di Baseline quando sono supportate nella versione attuale e precedente di tutti i principali browser: Chrome, Edge, Firefox e Safari.
Lavorando con la community abbiamo scoperto che c'erano due punti degni di nota nel ciclo di vita di una funzionalità sulla piattaforma web:
- Nel momento in cui la funzionalità diventa interoperabile, disponibile in tutti i principali motori.
- Il punto in cui la maggior parte dei siti può implementare in modo sicuro questa funzionalità, senza doversi preoccupare dell'assistenza.
La prima di queste fasi è molto semplice da definire; sappiamo quando una funzionalità sarà disponibile in tutti i principali motori. Qui su web.dev spesso celebriamo questi momenti.
La seconda fase è molto più difficile da definire. A seconda del pubblico di un sito o di un'applicazione, potresti essere disposto a iniziare a utilizzare le funzioni molto presto dopo che diventano interoperabili oppure potrebbe essere necessario attendere un periodo di anni affinché un numero sufficiente di utenti abbia eseguito l'upgrade a versioni del browser che le supportano.
Per svolgere la supervisione di Baseline, il WebDX Community Group, che include rappresentanti di tutti i principali fornitori di browser, ha formato un gruppo di governance per il progetto Web Features. Dopo un'ampia discussione da parte dell'intero gruppo, il gruppo di governance ha ridefinito la base di riferimento per riflettere i due punti chiave nella sequenza temporale di una funzionalità.
- Disponibile di recente: un elemento è da poco disponibile in Baseline quando diventa interoperabile nei browser principali.
- Ampia disponibilità: il punto in cui la funzionalità è generalmente sicura da usare. Questa linea è impostata su 30 mesi dopo il punto appena disponibile.
Abbiamo inoltre ampliato il set di browser principali per includere esplicitamente le versioni mobile di questi browser. Ciò significa che una funzionalità non verrà classificata come nuova disponibile finché non sarà disponibile in:
- Safari (macOS e iOS)
- Firefox (computer e Android)
- Chrome (computer e Android)
- Edge (computer)
Sappiamo che questa linea ampiamente disponibile non può essere precisa per tutti. Tuttavia, esaminando i dati disponibili relativi all'adozione delle versioni del browser, abbiamo appreso che per la maggior parte delle funzionalità non sono necessari più di 30 mesi perché siano disponibili per circa il 95% degli utenti a livello globale. Potresti voler usare le funzionalità molto prima di questa data, ma è improbabile che dopo questo periodo di 30 mesi dall'interoperabilità non sarai più in grado di usarla.
Il tuo lembo nella sabbia potrebbe essere tra quelli appena resi disponibili e quelli ampiamente disponibili. Come minimo, il nuovo punto di accesso è un ottimo indicatore del fatto che questa funzionalità è qualcosa che potresti voler iniziare a imparare. In questo modo potrai utilizzarlo in produzione quando sarà disponibile su larga scala.
Quali sono le prospettive per la base di riferimento?
Per raggiungere l'obiettivo di mostrare lo stato di riferimento su MDN e altre proprietà, dobbiamo mappare tutte le funzionalità della piattaforma web nel set di dati delle funzionalità web. Questo lavoro è ancora in corso e prevediamo di terminare nel 2024.
Anche MDN ha annunciato questo cambiamento a Baseline. Puoi leggere il post sull'evoluzione di Baseline su MDN sul blog di MDN e vedere alcuni esempi del nuovo badge Baseline che viene implementato nelle pagine MDN.
Intendiamo iniziare a implementare un badge che indichi lo stato di riferimento su web.dev e developer.chrome.com.