Depuis quelque temps, j’entends dire ça et là que HTML5 pourrait remplacer Flash et Silverlight. Soit. Que ça serait une raison pour ne pas faire de Silverlight. Alors là, c’est tout faux.
La première question à se poser est: votre application riche, quand doit-elle tourner dans la majorité des navigateurs déployés? Aujourd’hui ou dans 4 ans?
Je parie que votre projet n’attendra pas 4 ans. Alors, s’il est de bon ton d’aider à avoir une norme pour HTML5 (la RFC est à l’état de Working Draft au W3C, c’est le moment d’y collaborer), il faut tout de même comprendre qu’adopter HTML5 aujourd’hui c’est condamner l’application à ne fonctionner que dans quelques rares navigateurs, et encore, au prix de nombreux “if navigateur==Firefox4.0 ne pas faire ça”. Aucun navigateur n’implémente complètement HTML5 aujourd’hui, et ça ne sera pas le cas demain. Pour une raison bête: la norme HTML5 n’existe pas encore. Pire: si une application est faite en HTML5 aujourd’hui, il faudra la corriger quand la norme finale sortira et que les navigateurs devront la respecter.
La deuxième question est: voulez-vous utiliser un standard à tout prix, ou est-ce que la fourniture d’une bonne expérience utilisateur compte pour vous? Silverlight est une technologie unique en son genre, car elle permet depuis le début (ça faisait partie de son cahier des charges) la collaboration ergonome-graphiste-développeur. Expression Blend et son SketchFlow sont la quintessence de ce qu’on peut faire de mieux pour offrir à l’utilisateur l’application de ses rêves. En HTML5, point d’outil de ce genre. Le but est d’avoir une norme, pas un workflow axé sur la satisfaction utilisateur.
La dernière question est: pourquoi parle-t-on autant de HTML5 aujourd’hui alors que ce n’est qu’un embryon? Il faut savoir que depuis quelques mois la guerre des RIA fait rage. Certains analystes ont prédit que les RIAs seraient le prochain succès, et du coup tout le monde veut avoir le sien. Adobe a amélioré le développement Flash avec Flex, Microsoft a créé et bien diffusé Silverlight, Oracle s’est cassé les dents avec son JavaFX. Et Google dans tout ça? Eux qui sentent qu’ils doivent absolument fournir toutes les technologies Web même s’ils ont 2 ans de retard et aucune légitimité (c.f. Google Wave, par exemple), que proposent-ils? Pas de lecteur RIA. Alors dire qu’on est gentil parce qu’on veut proposer un standard et expliquer à tous les internautes qu’il vaut mieux avoir dans 4 ans l’expérience utilisateur qu’on pourrait avoir aujourd’hui, c’est une tactique qui peut marcher quand on n’a rien de mieux.
Reste que dans la série “on est des gentils parce qu’on aime les standards”, je trouve un peu trop facile de taper sur Microsoft comme se plaît à le faire la communauté (Googlienne?) HTML5. Mon expérience de .NET ces 10 dernières années m’a montré que Microsoft a respecté et même soutenu les standards du Web que sont SOAP, WS-I 1.1, XML, JSON, et j’en passe.
Alors, mes clients et moi, nous offrons aujourd’hui à l’utilisateur l’expérience que certains lui promettent pour demain. Et nous passerons à HTML5 dans 4 ans, quand il deviendra légitime. Ou pas, si Silverlight conserve son avance.
Comments