Con l'idea di farlo diventare un'appuntamento fisso, traduciamo e pubblichiamo la prima ottima intervista di Bruce Lawson (@brucel su Twitter) che Chris Heilmann (@codepo8 su Twitter) ha appena pubblicato su Mozilla Hacks. Bruce è uno dei principali "ambasciatori" di HTML5 soprattutto attraverso il suo lavoro per Opera. E' inoltre uno dei curatori di HTML5 Doctor.

fowd-london-18-19.05.2010_5761 1) Che cosa significa, secondo te, la nascita di HTML5 per il mondo del web development?
E' il linguaggio per le applicazioni web: aiuta nella creazione di app più robuste, interoperabili ed espande le possibilità dei browser fino a farli diventare la base per la creazione di soluzioni molto simili ad app native

2) Come sei entrato in HTML5? Qual è il tuo background e, soprattutto, quali sono le tue motivazioni?
Io vengo dal mondo dell'accessibilità e della creazione di markup. Così essere parte della nascita di un nuovo linguaggio per il web è stata un'occasione che non mi sono potuto lasciar sfuggire e dal momento che Opera (dove lavoro attualmente) è un'azienda molto legata a HTML5 convincere il mio capo a lasciarmi fare le cose che faccio adesso è stato piuttosto semplice

3) Quali sono gli aspetti delle nuove tecnologie che consideri più interessanti?
HTML5, ovviamente, ma anche DAP ("Device APIs and Policy Working Group"). Questa cosa dal nome poco evocativo è un set di specifiche per espandere le possibilità del web indicando delle API che consentono un facile accesso a features del device che si utilizza come ad esempio la macchina fotografica, la rubrica, l'agenda – più o meno come avviene adesso con la geolocalizzazione che utilizza le funzionalità GPS. Come HTML5, DAP vuole unificare delle API proprietarie esistenti, e molti produttori di telefoni e device si sono detti interessati

4) Tu sei uno degli autori di "Introducing HTML5" – qual'è stata la cosa più frustrante nella stesura del libro? HTML5 sembra essere ancora in "formazione", no?
A parte il fatto che scrivere per carta (alberi morti!) e usare Microsoft Word mi è parso un po' strano, sì, è vero, la parte più complicata è stata scrivere su un argomento che continuava a "muoversi" sotto i nostri piedi. Il capitolo sul video, ad esempio, era stato appena completato che il formato webM è stato annunciato e dunque abbiamo dovuto rifare tutto d'accapo. In conclusione, però, siamo abbastanza convinti che tutto ciò che abbiamo scritto si riferisce a features e aspetti consolidati di HTML5 – e comunque in un libro introduttivo non volevamo affrontare argomenti più "esoterici"…

5) Tu hai proposto l'utilizzo del termine "NEWT" invece che solo HTML5: che cosa significa, e perchè usare un altro termine?
I clienti e i giornalisti usano il termine "HTML5" per indicare CSS3/video-su-iCosa/applicazioni-geolocalizzate. E' il nuova "Web 2.0". Ma noi sviluppatori abbiamo bisogno di usare le parole giuste: non ci sono image transitions HTML5, così come non c'è semantica CSS3 – e affermarlo vuol dire non aver capito che bisogna separare stile e contenuti. Avendo bisogno di un termine che includa DAP, CSS3, HTML5, Geolocation, SVG, WebGL, allora chiamiamolo Open Web Stack. Ma siccome alle persone piacciono parole facili da pronunciare e logo carini ecco NEWT come termine "fico" per eliminare un po' di confusione

6) Qual è a tuo modo di vedere l'ostacolo principale alla diffusione di HTML5?
L'ignoranza degli sviluppatori: "Non lo uso perchè non è ancora finito. Non lo uso perchè devo ancora supportare IE6" sono le due obiezioni principali. "Non è ancora finito" è la cosa che mi da più fastidio: e allora smettiamo di usare l'inglese perchè "non è ancora finito" e usiamo il francese, che a quanto pare è stato "finito" nel 1799. E poi c'è il problema di IE6. HTML5 Shim consente di usare elementi HTML5 anche in IE6, basta avere JavaScript. E se non hai JavaScript, il web di oggi è pressochè inutilizzabile e il tuo sito non sarà il peggiore. In ogni caso, non sta scritto da nessuno parte che si debba usare HTML5: se non vuoi creare applicazioni web HTML4 e XHTML1 vanno più che bene.

7) Attualmente ci sono un sacco di metodi per "degradare" HTML5 e farlo funzionare anche in vecchi browser e IE6. HTML5 Boilerplate, ad esempio, sembra una bella faticaccia. Ne vale proprio la pena? Che ne pensi dei cosiddetti "polyfills"?
In realtà, tutto quello che ti serve è HTML5 Shim di Remy per mostrare correttamente anche in IE6 gli elementi HTML5. A seconda delle esigenze del progetto potrai poi scegliere il polyfill più adeguato. Una faticaccia? Può darsi, ma forse usare un polyfill che consente di far "funzionare" i web sockets in browser vecchi che non li supportano è un po' meno faticoso che inventarsi una soluzione da zero, no? Il problema è che i polyfills nascono con un problema di obsolescenza incorporata. Servono solo per i vecchi browser, e per definizione questi stanno scomparendo. Sebbene non sia un metodo troppo elegante, features detection e polyfilling sono comunque meglio del browser sniffing o dell'esclusione di certe categorie di utenti

8) C'è qualcosa nella specifica HTML5 che non ti piace? O su cui non sei d'accordo?
Avrei voluto che le specifiche di accessibilità del canvas fossero completate molto tempo fa così da averle implementate nei browser già adesso. La gente usa già il canvas per creare interfacce utente e quello dell'accessibilità sarà un grosso problema, credo. Penso poi che sia un po' sciocco non poter usare CITE come tag del nome di una persona, che è una delle poche "rotture" con HTML4

9) Se volessi imparare HTML5 da zero, dove mi suggeriresti di cominciare?
C'è un ottimo libro di introduzione a HTML5, uhm, adesso non ricordo proprio bene il nome… Oltre a questo Marck Pilgrim ha creato un bel libro online, che consiglio. Sono inoltre uno dei curatori di HTML5 Doctor dove ci sono un sacco di articoli introduttivi. Ci sono poi, putroppo, una serie di "siti scuola" con informazioni datate o addirittura libri pubblicati con informazioni vecchie e riferite ad una versione non più attuale delle specifiche

10) HTML5 ha un approccio molto più benevolo al markup rispetto a HTML 4.0.1 strict o XHTML. Non è questo un passo indietro in termini di qualità del codice?
No. Dovrà essere facile trasformare i siti HTML4 o XHTML 1, a ai browser comunque non è mai importato molto della sintassi (quando il documento era presentato come text/html) quindi non vedo motivi per imporre regole stringenti sull'utilizzo del minuscolo, maiuscolo o slash finali. Gli sviluppatori dovrebbero scegliere il loro stile e aderirvi: siti come HTML Lint offrono la possibilità di scegliere uno stile di codifica e mi aspetto che anche i principali editor faranno lo stesso. Il vero test di qualità è il DOM che il browser costruisce dal codice e quando i browser hanno un parser HTML5 costruiranno lo stesso DOM da codice "non valido", e questo è fantastico in termini di interoperabilità del web.

Bonus: E adesso? Quale pensi sia il prossimo grosso problema da risolvere per rendere il web un posto migliore e un mondo più facile da creare?
Abbiamo bisogno di un sistema di layout CSS comprensibile anche ai mortali, accessibilità vera per canvas e webGL e una quantità maggiore di foto di evangelisti Open Standards nudi.

Questo è quanto per l'intervista di oggi. Il link all'intervista è http://hacks.mozilla.org/2011/01/people-of-html5-bruce-lawson/ mentre per chi vuole godersela nella versione originale, ecco il video: