lundi 1 juin 2009

Sauvons le Web ! Il est en danger.


Mais nous allons finir par tuer le Web si ça continue comme ça ! Je suis attristé d'observer comment une industrie informatique sans recul et les intérêts mercantiles de quelques sociétés commerciales menacent de détruire les fondements même de ce qui a fait le succès du réseau mondial.

Le Web a été conçu il y a 18 ans au CERN, laboratoire de recherche européen sur les particules, par un scientifique anglais du nom de Tim Berners-Lee, désormais directeur du World Wide Web Consortium (W3C). Voilà une idée qu'elle était géniale ! Créer au dessus d'Internet, un réseau de pages reliées entre elles par les liens hypertextes. L'idée, comme un soufflet réussi, a très vite pris. Le nombre de sites Web est monté en flèche, les premiers standards ont été définis pour gérer les noms de domaines, le langage de balisage utilisé pour créer les pages (HTML). On peut vraiment dire que c'est le Web qui est à l'origine du succès d'Internet.

C'est également dans un centre de recherche, américain, le National Center for Supercomputing Applications (NCSA), qu'a été créé le navigateur Web Mosaic. Ce n'était pas le premier mais il était graphique et multi plate-forme et est vite devenu la killer application d'Internet. A un tel point qu'un des développeurs du logiciel, Marc Andreessen, crée en 1994 une société commerciale produisant le navigateur Netscape basé sur Mosaic. L'entrée en bourse de la société Netscape Communications l'année suivante, rendant Andreessen multimillionnaire en une nuit, a marqué le début de la bulle Internet et l'entrée du Web dans la sphère commerciale.

Microsoft, dont le PDG Bill Gates ne croyait pas du tout au potentiel d'Internet, a été pris par surprise par le succès du Web et de Netscape. Pour rattraper son retard, Microsoft a acheté une licence d'un navigateur, lui-même basé sur Mosaic, pour le renommer Internet Explorer en 1995. Cela marque le début de la première guerre des navigateurs, Netscape contre Internet Explorer. Cette guerre, finalement perdue par Netscape à cause d'un abus de monopole de Microsoft, même si elle a été à l'origine de certaines innovations (JavaScript normalisé sous le doux nom d'ECMAScript, applet Java, HTTPS), a bien failli avoir la peau du Web si prometteur. En effet, les deux camps se concentrant plus sur l'ajout de nouvelles fonctionnalités que sur la correction de bugs et sur l'innovation propriétaire plutôt que les respects des standards, ont produit des navigateurs de moins en moins interopérables et normalisés. L'exemple le plus pénible est sans doute les implémentations de JavaScript. Quel développeur Web n'a pas déjà pesté en découvrant que son site ne fonctionnait plus (qu')avec Internet Explorer ?

Cependant Netscape libère le code source de son navigateur en 1998 sous le nom de Mozilla, nom de code interne et mascotte du navigateur chez Netscape. Le succès viendra avec une version plus allégée du navigateur, renaissant tel un Phénix sous le nom de FireBird, puis de Firefox. Cela marque le début de la deuxième guerre des navigateurs, avec l'émergence de nouveaux belligérants comme Opera, Apple et récemment Google.

Plus encore que lors de la première guerre, celle-ci risque de remettre en cause la pérennité du Web en tant que réseau interopérable basé sur des standards. Y'en a marre des stratégies commerciales qui influent sur les normes dans le seul but d'emprisonner les internautes et les entreprises dans des produits propriétaires ! Y'en a marre que des normes, élaborées pourtant avec patience par des passionnés qui aiment les belles choses bien faites, soient torpillées par des industriels qui inondent le marché avec du mauvais logiciel produit à la chaîne, comme l'ex futur EcmaScript 2 qui ne plaisait pas à Microsoft !

A l'aube de la métamorphose du Web, d'un réseau de pages en une plate-forme d'accès à de services et des ressources, les technologies sur lesquelles il est basé se doivent d'évoluer. Donc, oui au client riche plus sexy et multimédia, oui au mode déconnecté, au Push depuis le serveur, et aux fonctionnalités du client lourd perdues lors de l'avènement du Web. Mais n'oublions pas que c'est l'existence d'un jeu de standards partagés et librement implémentables par tous qui a permis cet avènement. Quand je vois Microsoft, Adobe ou, dans une moindre mesure, Sun se tirer la bourre pour occuper le terrain en proposant tout bonnement de remplacer les standards par leurs technologies et protocoles propriétaires, j'attrape une crise d'urticaire rien qu'à l'évocation de ces solutions élevées en batterie !! Qu'est-ce que sont XAML, MXML ou JavaFX sinon les sombres rejetons d'éditeurs commerciaux qui rêvent de remplacer HTML et pousser leurs technologies qu'elles soient .Net, Flash ou Java ? Et que penser lorsqu'ils remplacent carrément le protocole HTTP ou sortent du navigateur avec le modèle Rich Desktop Application (RDA) ? On ne peut plus appeler cela du Web, juste du vieux client/serveur poussiéreux qui réutilise certaines notions démocratisées par le Web comme le balisage, la séparation du contenu de sa présentation et de son style, et la diffusion du code exécuté sur le client via le réseau.

Il reste cependant une lueur d'espoir. Certains libres penseurs subsistent et tentent d'améliorer et faire évoluer le Web via ses standards. Merci à Mozilla, Opera et Apple d'avoir décidé, en 2004 et en réaction à la stratégie Windows Presentation Foundation (WPF) de Microsoft, de s'allier, au sein du Web Hypertext Application Technology Working Group (WHATWG), pour proposer des évolutions des standards du Web à un W3C sclérosé. Depuis, leur travaux sur X/HTML 5 ont été repris au sein du W3C. Merci aussi à Google, qui – pour continuer à indexer nos vies ! – pousse également cette initiative et améliore l'existant en attendant, avec des solutions comme Google Gears pour le mode déconnecté ou son implémentation plus performante d'EcmaScript (V8).

X/HTML 5 et les standards Web connexes comme XBL 2 sont en cours de finalisation. Ils comblent eux aussi les manques du Web actuel avec des propositions comme les balises [canvas/] et [video/], le mode déconnecté, le support du drag-and-drop ou encore WebForms 2.0... intégrées à HTML 5. Alors que par ailleurs, le WHATWG continue de travailler sur la définition de notions telles que les WebWorkers pour permettre l'exécution parallèle de code JavaScript.

Mais comme il s'agit d'un travail de normalisation, cela prend forcément plus de temps que de sortir de nouvelles technologies d'un laboratoire propriétaire et d'essayer d'en faire un standard de facto. A nous de choisir entre du travail bien fait ou de la production industrielle et mercantile moins soucieuse de notre bien être... Surtout que certaines des recommandations sont et seront implémentées dans les navigateurs bien avant les versions officielles des normes. Par exemple les dernières versions de développement de Firefox implémentent déjà les balises [canvas/] et [video/], alors qu'Opera implémente en outre complètement WebForms 2.0.

Mais le chemin sera très certainement semé d'embûches, à l'instar de la controverse autour de la balise [video/] et du format Ogg Theora qui, suite à des pressions de la part d'Apple et Nokia, a été retiré d' HTML 5 en tant que codec recommandé...

Si l'on ne veut pas que le Web reste dans l'histoire de l'informatique comme une période révolue où l'ubiquité interopérable aura prévalu avant d'être exterminée par la recherche du profit et en raison des stratégies de domination des fournisseurs de technologies, il nous faut réagir maintenant ! Sauvons le Web ! Restons exigeants et donc patients ! Exigeons du développement informatique durable ! Consommons des produits sains et qui respectent l'écologie du Web !

Parce qu'y'en a marre de la médiocrité, des développeurs en batteries marqués au fer de tel ou tel éditeur et de la disparition des petits artisans soucieux du travail bien fait.

Jean-Pierre Troll

jp.troll@gmail.com (parce que j'adore qu'on indexe ma vie privée !)