I

ll Web si sta evolvendo più rapidamente che mai e la sfida più grande che abbiamo in quest'area è sicuramente rappresentata dall'interoperabilità tra le implementazioni dei nuovi standard nei diversi browser e dall'esigenza di nuove tecniche che consentano di innovare, garantendo l'affidabilità e stabilità nelle implementazioni. Le tecnologie HTML5 accelerano lo sviluppo del Web e per garantire interoperabilità ed affidabilità delle implementazioni, c'è bisogno di nuove modalità che consentano di distinguere le varie parti più sperimentali di HTML5 dalle parti pronte per l'uso in siti mainstream.

Altre società /fornitori di browser stanno implementando  nel proprio browser, anche le specifiche meno stabili già nelle prime fasi di definizione, nella fretta di essere i primi a supportarle, mettendo di fatto a rischio gli sviluppatori di costruire siti su specifiche instabili, che subiranno modifiche e che di fatto non sono interoperabili e che non sono ancora ampiamente sostenute ed approvate negli enti di standardizzazione. Questo modo di procedere rende anche di fatto più difficile l'evoluzione degli standard e l'interoperabilità, generando  rischi per gli sviluppatori di incoerenze e instabilità, creando anche vincoli all'evoluzione degli standard stessi, come successo recentemente anche per alcune specifiche come i WebSocket .

L'interoperabilità, assieme alle performance, sicurezza e integrazione con il desktop, sono tra le principali priorità di Internet Explorer 9 (IE9).  A differenza di altri browser, l'approccio utilizzato in IE9 per l'implementazione delle nuove specifiche Web è un approccio  "site ready" .  Relativamente alle specifiche come l'HTML5 queste vengono divise in due categorie - le specifiche e norme stabili che vengono implementate in Internet Explorer 9; e le specifiche emergenti ma ancora immature ed instabili, su cui sperimentare per il futuro, ma su cui è rischioso sviluppare soluzioni perchè subiranno modifiche significative ed in alcuni casi potrebbero anche presentare problematiche di sicurezza oltre che di stabilità nell'implementazione per le quali è ora disponibili i nuovi HTML5 Labs che consentono di sperimentare le nuove specifiche installandole come componenti aggiuntivi, da utilizzare solo per test e sperimentazione.

L'approccio seguito con IE9  vuole assicurare agli sviluppatori che le feature HTML5 inserite e disponibili nel browser rilasciato siano stabili ed utilizzabili per implementare siti reali,  e fornire al tempo stesso gli strumenti per poter sperimentare i nuovi standard emergenti, mantenendo però una chiara separazione tra le specifiche stabili e quelle invece in evoluzione . Questo approccio consente agli sviluppatori di lavorare con meno  rischi relativamente a ciò che è stabile e instabile e senza dover analizzare e distingure le feature stabili da quelle che subiranno sicuramente modifiche, perchè basate su specifiche ancora in corso di evoluzione negli enti di standardizzazione.

 Microsoft con il team di Internet Explorer collabora fortemente con gli enti di standardizzazione e la comunità degli sviluppatori  per contribuire a dar forma al futuro del Web moderno per l'HTML5 e per i successi passi degli standard, garantendo stabilità e interoperabilità . Per questo oltre a garantire la funzionalità e la stabilità delle feature aggiunte al browser rilasciato, diventa  importante cominciare a sperimentare gli standard meno maturi in sviluppo e permettere anche alla comunità degli sviluppatori di contribuire allo sviluppo delle specifiche, fornendo anche delle implementazioni degli standard emergenti che possano essere utilizzate per sviluppare applicazioni di test e studio e di poter fornire feedback sulle implementazioni.

Un primo importante passo per questo processo è rappresenta dalle Platform Preview (l'ultima disponibile con IE9 è la 7)  e dal test drive center, che consentono di accedere in anticipo alle specifiche in sviluppo nella nuove release del browser ma che sono appunto sufficientemente stabili per l'inserimento nelle release finali .

I nuovi HTML5 Labs  si sommano agli altri elementi e forniscono un nuovo strumento per la valutazione delle feature più interessanti del prossimo futuro del Web, permettendo di poter accedere per test e studio, all'implementazione degli standard web più interessanti che sono ancora in corso di definizione negli enti di standardizzazione. HTML5 Labs e IE9 consentono di  poter provare i nuovi standard  aggiungendone l'implementazione con l'installazione delle specifiche feature in definizione negli enti di standardizzazione. Sul sito dei labs  oltre a documentazione e materiali, si possono scaricare ed installare delle componenti aggiuntive e poterle provare per sviluppare delle soluzioni di test.

HTML5 Labs offre agli sviluppatori una base stabile per costruire una esperienza sulle nuove specifiche con una chiara suddivisione tra le feature stabili e quelle che invece subiranno ancora significative modifiche.

Le prime specifiche implementate negli HTML5 Labs sono:

  • Web Sockets che sono una specifica  che potrà essere implementatata nei browser Web per semplificare la complessità della comunicazione dando la possibilità di coinvolgere direttamente dei socket TCP. Uleriori info sull'implementazione prototipale in questo post
  • IndexedDB è un evoluzione del W3C Web standard per l'archiviazione di grandi quantità di dati strutturati nel browser e per uso nelle ricerche ad alte prestazioni sui dati. Ulteriori info sull' implementazione prototipale in questo post  e sul post che ho scritto sul mio blog sull'argomento

Microsoft ha individuato questi prototipi sulla base della loro attuale instabilità, e per l'alto valore che potenzialmente offrono agli sviluppatori.

L'approccio di IE9  offre agli sviluppatori la fiducia che i loro siti continueranno a funzionare in futuro senza dover applicare variazioni o riscritture per modifiche significative alle feature disponibili nel browser, consentendo anche di poter sperimentare gli standard più interessanti in sviluppo con gli HTML5 Labs, e di avviare con semplicità e sicurezza l'adozione di quelle parti di HTML5 e dei nuovi standard che sono più stabili ed inserite nel browser,senza danneggiare la possibilità di evoluzione delle specifiche in sviluppo e con anche la garanzia della aderenza alle specifiche delgli standard e quindi anche dell'interoperabilità delle nostre applicazioni verso gli altri browser, tema estremamente importante nello sviluppo di Internet. 

 Il cliclo di sviluppo di Internet Explorer 9 si avvicina alla release finale ed il rilascio degli HTML5 Labs assieme alle Platform Preview offre un nuovo strumento ai developer Web per sperimentare e contribuire allo sviluppo dei futuri standard web, consentendogli di cominciare da subito a innovare le applicazioni con quelle parti degli standard già maturi , contribuendo a migliorare interoperabilità e le nuove evoluzioni.

Ulteriori informazioni le trovate nel post specifico sul blog del team di IE e nel post sul blog Interoperability .

 Ci aspetta un Web sempre più bello e sempre più standard per una nuova generazione di applicazioni  più utile ed interessante.