A Santo Stefano, Dan Rowinski di ReadWrite (ex ReadWriteWeb) ha predetto cosa dobbiamo aspettarci da HTML5 nel 2013: è uno tra i tech trend più importanti perché rappresenta la migliore risposta alle esigenze di portabilità degli utenti. Sappiamo che il linguaggio è completo, ma sarà stabile soltanto nel 2014. Il 2012 sarebbe dovuto essere l’anno di HTML5 e, invece, così non è stato. Facebook e Apple, le prime a crederci, sono tornate indietro preferendo le applicazioni “native” e i videogame continuano a scegliere Adobe Flash.

Per quanto sembri paradossale, a sostenere con forza HTML5 restano giusto Adobe e Microsoft: aziende che fino a qualche tempo fa ignoravano gli standard e avrebbero rischiato di perdere un intero segmento di mercato se non si fossero adeguate. La prima ha iniziato ad abbandonare Flash Player, la seconda ha migliorato Internet Explorer 10 che rispetta le direttive del W3C meglio di tanti altri browser. Insieme a loro c’è Mozilla che al contrario non ha mai avuto dei dubbi su HTML5 arrivando a utilizzarlo per un sistema operativo.

Questo è il presente, ma cosa porterà con sé il futuro? Rowinski ha identificato quelle che anche secondo me saranno le 2 sfide di HTML5 nel 2013. Ovvero:

  1. migliorare il design responsivo delle applicazioni;
  2. sfruttare i componenti hardware dei dispositivi.

HTML5 permetterebbe di risolvere entrambi i problemi, a patto di prestare una grande attenzione ai dettagli. Spesso, a scrivere le applicazioni web è un designer e non un programmatore. Mi sento chiamato in causa, affrontando quotidianamente le difficoltà degli sviluppatori.

Un web designer non è un programmatore e solitamente i programmatori sono dei pessimi web designer. I siti sono una cosa, le applicazioni un’altra: HTML5 obbliga a coniugare approcci e capacità molto diversi. Nel 2002, quando ho iniziato, chiunque poteva creare un sito decente in cinque minuti. Oggi fatico a terminare un progetto entro tre mesi, applicandomi dalle due alle sei ore al giorno, e non sempre sono soddisfatto. Questo perché i siti e le applicazioni sono più simili e i device hanno risoluzioni e grandezze differenti.

Perché gli sviluppatori preferiscono distribuire delle applicazioni “native” su iOS? Beh, la risposta è semplice: richiede molto meno tempo. Apple ha soltanto tre classi di dispositivi, utilizza lo stesso ambiente su tutti e le dimensioni non variano. HTML5 costringe a considerare almeno il doppio delle risoluzioni. Esclude il problema del linguaggio perché sfrutta prevalentemente JavaScript, ma non assicura lo stesso risultato su ogni device. I principali engine dei browser sono quattro e interpretano il codice in modo diverso.

Affinché HTML5 possa emergere nel 2013, non basta che gli sviluppatori imparino a sfruttarne tutte le potenzialità. Già oggi è possibile abilitare l’accelerazione hardware dei dispositivi con JavaScript per WebGL e i CSS supportano delle transizioni tridimensionali per creare effetti straordinari. L’ostacolo è nell’interpretazione del codice: finché gli engine continueranno ad adottare soluzioni diverse, HTML5 richiederà degli sforzi enormi per arrivare a garantire l’omogeneità delle applicazioni su tutti i device in commercio.

Photo Credit: Christian Heilmann via Photo Pin (CC)