V1V2
Blog & Projects

Les conférences sur HTML5 au Devoxx 2010

Logo Devoxx

Du 15 au 19 novembre a eu lieu à Anvers en Belgique l'événement Devoxx 2010. Il s'agit du plus grand salon européen autour des technologies Java. Ce salon annuel a été créé par Stephan Janssen, président du BeJug (Belgium Java User Group).

Cette année, pas moins de 3000 personnes ont eu le privilège d'assister aux conférences animées par des dizaines d'intervenants très reconnus du monde Java. Parmi ces intervenants on peut par exemple citer Joshua Bloch, ingénieur logiciel chez Google, et Romain Guy, un des ingénieurs travaillant sur Android.

Les conférences ne se limitaient pas à Java, et traitaient plus généralement des grandes tendances actuelles du monde informatique telles que le Cloud, le NoSQL, les RIA, les Frameworks Web, les méthodes agiles ou encore l'HTML5.

Je vais donc vous faire profiter de mes retours sur les conférences HTML5.

Keynote : The State of The Web

Cette keynote animée par Dion Almaer et Ben Galbraith a traité du potentiel des applications web. Après les avoir comparé les différents marchés des applications natives et des applications web, l'accent a été mis sur les frameworks capables de créer des applications natives à partir d'HTML/CSS/JavaScript, sans se soucier des contraintes spécifiques à chaque appareil. Deux projets en particulier :

Ces deux projets prometteurs sont déjà en production et utilisés. S'il est en effet pour le moment risqué favoriser les applications web par rapport aux applications natives, l'utilisation de tels frameworks permet de faire une transition en douceur vers les applications web, tout en conservant une portabilité maximum sur les téléphones et OS mobiles actuels.

Les WebSockets HTML5 avec Kaazing

Cette conférence a été animée par par Jonas Jacobi. Jonas Jacobi travaille sur le projet Kaazing, qui se focalise entièrement sur l'exploitation des WebSockets HTML5 afin de fournir un protocole de liaison client-serveur à haute vitesse. Voici une démonstration des capacités des WebSockets avec Kaazing.

Pour résumer, les WebSockets permettent le full-duplex entre le client et le serveur, c'est à dire que le serveur sera capable d'envoyer des informations au client en temps réel, sans que le client ne fasse de requête serveur pour vérifier si le serveur a une nouvelle information à lui envoyer. Ce système remplacera à terme le "polling", réalisé par appels AJAX effectués toutes les n secondes pour actualiser un contenu.

Les WebSockets permettent uniquement l'échange de chaînes de caractères entre le client et le serveur. Cette limitation vient du fait que les échanges via WebSockets sont très bas niveau. Si l'on souhaite travailler avec une couche d'abstraction supplémentaire il faut utiliser un protocole plus haut niveau, ce que propose Kaazing.

D'autres démonstrations sur les websockets sont disponibles sur websocket.org.

HTML5 Fact and Fiction

Cette conférence orchestrée par Nathaniel Schutta a présenté de nombreuses nouveautés apportées par l'HTML5. Elle reprend dans l'ensemble le contenu de l'ebook de Mark Pilgrim, DiveIntoHTML5. La plupart des nouveautés présentées concernaient les nouvelles balises HTML5 ainsi que la vérification de la capacité du navigateur à les supporter. Celle-ci est grandement simplifiée par l'utilisation de la bibliothèque JavaScript Modernizr.

La détection de la capacité à utiliser le canvas HTML5 peut être par exemple effectuée avec la simple ligne :

if (Modernizr.canvas)

La création d'un site en production utilisant les fonctionnalités de l'HTML5 requiert de gérer convenablement le cas des navigateurs non compatibles, et c'est ce que fait Modernizr. Un incontournable donc.

L'application Devoxx avec GWT et HTML5

Salvador Diaz de chez Sfeir a présenté le fonctionnement de son client Devoxx réalisé sous GWT. Il s'agit d'une application web fonctionnant sur Google App Engine qui permet d'accéder à l'ensemble des informations des conférences et intervenants du Devoxx 2010. Cette application utilise les WebServices REST fournis par Devoxx et a été couplée avec la capacité offline de l'HTML5 qui est particulièrement pratique afin de maintenir une consultation du contenu même en cas de déconnexion. Ceci est possible grâce a l'utilisation du cache manifest HTML5.

L'application est disponible ici et son code source est accessible sur Google Code.

On peut d'ailleurs noter que les boutons de l'applications sont entièrement réalisés en CSS3, sans utilisation d'image. Un tel résultat peut être obtenu en suivant mon tutoriel des ombres en CSS3 avec box-shadow.

Enfin je remercie Didier Girard de chez Sfeir, qui m'a permit d'assister à ce Devoxx 2010. J'effectuerai d'ailleurs mon stage chez Sfeir à partir de février sur le thème de l'HTML5, ce qui me permettra de me focaliser à 100% sur cette technologie, et de vous tenir informés de toutes mes découvertes grâce à des tutoriels sur ce site.

A très bientôt !