Mieux comprendre l’écosystème autour du développement de HTML

Openweb.eu.org > Articles  > Mieux comprendre l’écosystème autour du développement de HTML

Abstract

Plusieurs annonces à propos d’HTML5 ont été relayées et ont semé le trouble ainsi qu’une certaine inquiétude dans l’écosystème du Web et même dans les médias classiques. Comme toujours, beaucoup de sensationnalisme, de grands titres, « l’information » circule vite… la réalité est bien plus nuancée et bien différente. Le collectif OpenWeb en immersion vous propose une remise en perspective de ces sujets hors de toute excitation médiatique.

Article

Été 2012

En juillet 2012, Ian Hickson décide de renommer sa copie de travail au sein du WHATWG. Des sentiments de panique ou d'encouragement font feu un peu partout. Les réseaux sociaux ainsi que la presse traditionnelle se lancent dans une interprétation digne de la lecture des feuilles de thé. Quelques mois plus tard, tout semble bien calme et depuis le W3C possède un groupe d'éditeurs dont Robin Berjon à temps plein afin de définir la recommandation HTML5.

Beaucoup de bruit pour rien.

Ian Hickson explique que le suivi des bugs entre les spécifications autour de HTML5 au W3C et le brouillon de travail en rédaction au WHATWG seront désormais dissociés. Ces deux spécifications ne sont pas antagonistes mais complémentaires :

  • Le W3C, à travers le groupe HTML, se concentre sur la finalisation de la spécification HTML5 en suivant ses processus habituels. Il ne place dans la spécification uniquement que ce qui est utilisable actuellement dans les navigateurs et non soumis à des brevets. Il prend en compte aussi directement les requis d'accessibilité et d'internationalisation.
  • Le WHATWG continue son travail exploratoire en termes de nouvelles fonctionnalités, et très souvent instables.

Bref, une branche en cours de stabilisation/finalisation d'un côté et une branche de développement de l'autre. Il est à noter que le travail exploratoire n'est pas seulement réalisé au WHATWG. Très récemment, Steve Faulkner s'est beaucoup investi pour définir le nouvel élément main de HTML5. Michael Smith résume assez bien la situation dans un billet personnel.

Tout d'abord un peu d'histoire.

Papy HTML fait de la résistance

Depuis la première version de HTML conçue par Tim Berners-Lee jusqu'à ce jour, HTML a changé de domaine d'applications ainsi que de communauté. Le Web a évolué dans ses usages, dans son infrastructure économique et technologique. Le contexte historique permet de mieux comprendre et de modérer les titres à sensation que l'on peut lire (une fois de plus) dans la presse. Cependant il est très difficile de choisir les moments significatifs car les rebondissements sont nombreux. Ces quelques dates vont donner relief aux événements de juillet 2012.

1991, la naissance d'une communauté

Depuis 1991, date de la première version écrite par Tim Berners-Lee de HTML, la communauté a discuté ouvertement des développements du langage. À cette époque, les propositions technologiques pour Internet étaient généralement débattues à l'IETF. En juin 1993, une première spécification de HTML est proposée à l'IETF. Sur le marché, il y a de nombreux navigateurs plus ou moins expérimentaux mais un domine le marché sous le nom de NCSA Mosaic. En 1994 apparaît la première version de Netscape. Et ainsi commença la première course aux ajouts de HTML avec des implémentations de plus en plus différentes.

1996, la première rupture

En novembre 1995, la spécification HTML 2.0 est publiée à l'IETF. C'est un assemblage de nombreuses propositions faites sur la liste de discussion HTML (voir le bas de la page). Cependant, peu de choses de la spécification HTML 2.0 sont vraiment implémentées dans Netscape et Mosaic. Les deux navigateurs divergent. La spécification n'est pas une norme. Les discussions sur HTML 3.0 s'enlisent à l'IETF. En mars 1996, Murray Altheim envoie un message donnant une idée du panorama quelque peu chaotique. En mai 1996, Dan Connolly annonce que le W3C (créé en 1994) a des ressources pour travailler sur Wilbur qui deviendra HTML 3.2. Les participants sont IBM, Microsoft, Netscape Communications Corporation, Novell, SoftQuad, Spyglass, et Sun Microsystems. L'objectif est clair, Dan Connolly mentionne HTML 3.2 est une sorte de retour. C'est une description des pratiques actuelles. Cela ne plaît pas à tout le monde.

1997, l'ère des auteurs

Entre temps Microsoft est entré dans la danse des navigateurs et devient l'adversaire principal de Netscape. HTML 3.2 sera rapidement publié au W3C en janvier 1997 et le travail sur Cougar (HTML 4) démarre aussitôt en parallèle. Le travail a entre-autres pour objectif d'apporter une notion d'accessibilité pour les personnes qui ont des handicaps divers. La spécification doit devenir suffisamment descriptive pour permettre aux auteurs de documents d'utiliser la sémantique appropriée. Il y a de nombreux exemples dans la spécification HTML 4.0 qui est publiée en décembre 1997.

1998, la volonté d'une renaissance

HTML 4 est sûrement l'une des pierres angulaires du Web. Il a été un pas majeur dans l'établissement du langage et dans sa compréhension. En 1998, le W3C décide d'organiser un atelier pour déterminer quelles sont les directions à donner à HTML dans le futur. Une liste est créée pour que les personnes puissent exposer leurs points de vue avant l'atelier. En mai 1998 se tient donc l'atelier « Définir le futur de HTML ». L'ensemble des points de vue des différents participants permet d'avoir une idée de ce que les participants veulent du futur de HTML. Malheureusement les compte-rendus des discussions ne sont pas publics. Les buts de l'atelier sont très clairs.

  • Est-ce que HTML 4.0 est le dernier HTML ?
  • Est-ce que XML signifie la fin de HTML ?
  • Est-ce que le W3C a abandonné HTML ?

Les participants devront répondre à ces questions :

  • Avons-nous besoin d'une nouvelle version de HTML ?
  • Est-ce que le W3C doit créer un nouveau groupe HTML ?

2004, la seconde rupture

La conclusion de l'atelier de mai 1998 invite à travailler sur une nouvelle version du langage HTML utilisant le formalisme de XML afin de redémarrer un Web plus propre. Les participants dans l'ensemble estiment que cela permettra de se débarasser des problèmes du passé. Pour arriver à ce but, une version intermédiaire sera créée : XHTML 1.0. Elle devrait permettre à toute la communauté de modifier les outils et le contenu vers les futures générations de HTML : XHTML 2.0. Cela n'a pas fonctionné. Le Web n'étant pas un logiciel centralisé que l'on met à jour, il est beaucoup plus social que technologique. Sa nature décentralisée implique que tout le monde ne change pas de version au même moment. Les développeurs d'outils (navigateurs, moteurs de recherche, éditeurs, etc.) ont beaucoup investi pour pouvoir lire et comprendre le Web qui était déjà déployé. Passer à XHTML de façon stricte signifiait pour tous ces développeurs de maintenir non seulement un second moteur, mais également un nouvel ensemble de problèmes.

En juin 2004, le W3C décide d'organiser un nouvel atelier afin de déterminer quel sera le futur des applications sur le Web. Le Web est entré dans le monde de l'entreprise et des intranets. Toutes les entreprises n'ont pas les mêmes enjeux face aux technologies Web. Certains entreprises veulent capitaliser sur la chaîne de valeur offerte par XML dans un environnement contrôlé, d'autres veulent améliorer la plateforme Web en tenant compte de l'existant (imparfait). C'est la rupture ! La majorité des membres du W3C veulent continuer dans la voie XML. Les fabricants de navigateurs (Apple, Mozilla et Opera) entendent le message et donc décident de créer un groupe, le WHATWG, en dehors du W3C pour pouvoir continuer à améliorer la plate-forme Web mais dans la voie HTML. Les premiers travaux seront WebForms 2.

2007, un nouveau Wilbur

XHTML2 n'a pas eu lieu. Le groupe de travail HTML a été abandonné petit à petit par les implémenteurs directs de la technologie, notamment les développeurs de navigateurs. Pendant des années, ils ont investi dans le développement de leurs navigateurs, dans le fonctionnement de leurs moteurs d'interprétation et de rendu HTML. Abandonner HTML au profit d'un tout XML n'est pas réalisable sans se couper de 97% du Web. Installer plusieurs moteurs de traitement dans le navigateur n'est pas une solution suffisamment intéressante.

Le W3C décide de dissoudre l'ancien groupe HTML et permettre l'émergence d'un nouveau travaillant sur HTML et incluant la participation active des navigateurs. Tim Berners Lee publie un billet sur la réinvention de HTML annonçant la création du nouveau groupe HTML. Le groupe devra être ouvert à la participation du public, il devra se concentrer sur l'implémentabilité des technologies et leur déploiement réel dans les navigateurs.

Cela n'est pas sans poser d'enjeux. Les communautés participantes d'un groupe totalement ouvert sont de culture et compétences très différentes. Les attentes ne sont pas toujours les mêmes et des conflits font jour, bien souvent beaucoup plus autour du processus de décision que de la technologie elle-même. Cette atmosphère parfois difficile à gérer encourage le WHATWG à maintenir un groupe plus homogène pour travailler sur les sujets qui les passionnent et qui ont un impact direct sur les navigateurs.

La création du groupe de travail HTML au W3C a également le bénéfice de placer les travaux sous la politique de brevets du W3C. Autrement dit, toutes les technologies développées par le W3C doivent être librement implémentables sans contraintes de brevets.

2012, de nouveaux éditeurs pour la spécification HTML5

Une fois placée dans le contexte des aventures de HTML tout au long de son histoire, l'annonce du « HTML Living Standard » a beaucoup moins d'impact. Le W3C a de nouveaux éditeurs pour HTML5, dont Robin Berjon. Le WHATWG travaille sur une branche expérimentale. Et depuis quelques mois, le travail pour la prochaine version de HTML5, c'est à dire HTML5.1 a déjà commencé.

Mieux comprendre ce qu'est le W3C

Pourquoi les acteurs majeurs de la technologie ont-ils choisi de faire bande à part du W3C à l'époque ? Le W3C est un consortium industriel (un regroupement d'entreprises et de groupes d'intérêts) permettant à diverses organisations aux intérêts économiques et sociaux variés de s'asseoir autour d'une table pour discuter de la meilleur façon de définir et de mettre en œuvre les technologies nécessaires au Web. Le W3C est financé avec différents modes de revenus : la cotisation des membres (indexée sur le chiffre d'affaires et la localisation géographique), les dons du public ou d'organisations ainsi que le travail volontaire (du temps plutôt que de l'argent). La cotisation, bien qu'importante pour certaines entreprises, reste toutefois secondaire si on la compare au temps nécessaire à investir pour contribuer efficacement. Les processus de décision sont faits de telle manière que ce soit le consensus général qui prime dans l'élaboration des standards. Ce mode de fonctionnement doit cependant s'aligner avec la réalité du marché :

  • Une technologie n'a de succès que si elle est implémentée. Les participants avec une part de marché significative auront donc plus de facilité à pousser leurs fonctionnalités par voie d'implémentation. Une décision d'un groupe de travail qui ne serait suivie d'aucune implémentation réelle n'aurait que peu de valeur. Si le groupe insiste dans une voie qui s'oppose à la volonté des acteurs majeurs, il y a de fortes chances qu'il devienne caduque. En 2004, l'ancien groupe HTML et le travail sur XHTML2 et XForms ont conduit à la création du WHATWG.
  • La recherche de consensus est un processus long, surtout quand les acteurs en place ont des intérêts économiques divergents et que leur nombre est important : Le HTML WG compte 494 participants dont 302 appartenant à 82 organisations différentes et 192 experts invités… Il est parfois difficile de trouver le consensus avec tant de monde. Les discussions sont parfois dominées par les discussions sur le processus de décision ou sur des sujets non prioritaires pour les fabricants de navigateurs.

Les relations entre WHATWG et W3C

Il y a quelques points à noter pour comprendre la nature exacte des relations entre le WHATWG et le W3C :

  • Tous les membres du WHATWG sont également membres du W3C et participent tous activement au processus de standardisation du W3C.
  • Malgré les annonces récentes, depuis longtemps les deux groupes travaillent en parallèle. L'annonce du « HTML Living Standard » du WHATWG a été faite en décembre 2009, suivie d'une formalisation du concept par Ian Hickson en 2011. Le WHATWG n'a jamais arrêté ses activités depuis la reprise des travaux sur HTML au W3C.
  • Microsoft ne fait pas partie du WHATWG. D'autres acteurs n'y sont pas représentés.

L'objectif du W3C est de produire une version stable qui d'une part cherche à se rapprocher le plus possible de l'état de l'art des implémentations réelles et d'autre part à s'adapter le plus harmonieusement possible avec toutes les autres technologies Web (CSS, ARIA, SVG, DOM, etc.) L'objectif du WHATWG quant à lui est de proposer de nouvelles fonctionnalités, de s'assurer de leur faisabilité technique et d'explorer de nouvelles voies de développement pour HTML.

Ainsi, on voit que l'on est dans une configuration proche de ce qui se fait dans le développement logiciel : un effort de stabilisation et de rationalisation sur les éléments stables d'un côté et un effort de R&D important sur les évolutions à apporter de l'autre.

L'impact réel sur les corps de métier

Finalement qu'est-ce que cela va changer pour les développeurs Web ?

Absolument rien.

Les nombreux articles qui ont traité le sujet ont promis l'abandon de l'idée de standard unique (Numerama, Jounal du Net, ZDNet) ; une fragmentation accrue entre les navigateurs (Numerama, Journal du Net) ; l'impossibilité à suivre l'évolution du standard (Journal du Net) ; le règne des intérets économiques au détriment des utilisateurs (Numerama) ; la prédominance des questions techniques au mépris des utilisateurs (PCinpact). La presse anglosaxone y est allé aussi de son sensationalisme.

L'abandon de l'idée de standard unique

Tous les membres du WHATWG participant au W3C, les deux groupes ne vont pas radicalement diverger. Google a donné des fonds au W3C pour continuer à travailler sur HTML5. Un employé d'Apple (Ted O'Connors) devient un des nouveaux éditeurs de la spécification HTML5 du W3C. Ian Hickson (Google) et David Baron (Mozilla) ont créé le groupe de la communauté WHATWG au W3C où on retrouve d'ailleurs certains des nouveaux éditeurs de la spécification HTML5. On est loin d'un schisme entre deux entités antagonistes. Il y a une forte volonté de collaboration entre les deux organismes.

Une fragmentation accrue entre les navigateurs

Les navigateurs Web ont des cycles de développement différents dépendant des priorités industrielles de chaque fabricant. La nouvelle génération d'HTML est beaucoup plus proche des fonctionnalités des navigateurs. Comme dans le passé, il est délicat d'utiliser une technologie qui n'est pas déployée dans tous les navigateurs. Caniuse.com peut vous aider à choisir si la technologie est suffisamment mature. Nous oublions que lorsque les tableaux ont été créés, ils ne fonctionnaient que dans un seul navigateur. Il a fallu un peu plus de temps aux autres pour rattraper le retard. Les spécifications sont beaucoup plus descriptives et proches de l'implémentation et donc plus proches de l'interopérabilité. L'implémentation définitive se fait par la stabilisation entre les différents navigateurs et autres logiciels.

HTML5 a pour la première fois décrit formellement comment traiter et lire le HTML pour le transformer en un DOM cohérent. Les navigateurs ont tous implémenté pour la première fois le même algorithme. Face à un document HTML, la représentation du DOM des navigateurs est dorénavant pratiquement la même.

L'impossibilité de suivre l'évolution du standard

Suivre les évolutions des technologies Web est très difficile, mais fait aussi partie du métier de développeur Web. Certaines technologies apparaissent, d'autres disparaissent. Le volume d'informations et la complexité des technologies déployées a augmenté. Toute technologie évoluant dans ce sens crée souvent un environnement de spécialisation. On ne maîtrise plus l'ensemble de la plateforme.

Le règne des intérêts économiques au détriment des utilisateurs

Les intérêts économiques des implémenteurs sont directement liés aux besoins des utilisateurs. Les utilisateurs ne sont pas seulement les personnes qui consomment les services mais également les compagnies qui développent des services avec les technologies Web. Tous les acteurs cherchent avant tout à gagner des parts de marché et donc, de fait, à satisfaire leurs utilisateurs. La bataille sur l'internationalisation et l'accessibilité est à mener sur deux fronts : les fabricants de navigateurs, mais également ceux qui conçoivent des services utilisant les technologies Web.

Conclusion

Le développement des technologies Web se réalise dans un contexte historique, économique et social. Nous réagissons bien souvent aux effets d'annonce en oubliant le contexte plus large de la technologie. HTML5 est bien en développement au W3C, sans oublier CSS, les APIs des applications Web, etc. Le groupe de travail œuvre à la version stabilisée de HTML5. Différents acteurs, y compris le WHATWG, tentent de résoudre des problèmes d'implémentation concrets et d'explorer des alternatives technologiques qui trouveront pour certaines leur voie dans une spécification du W3C si la technologie se stabilise vraiment.

Le W3C existe car il y a du conflit. Sa mission est de gérer ce conflit et de trouver une solution acceptable pour l'ensemble des participants.

À propos de cet article

Vos commentaires

  • Denis Le 9 février 2013 à 11:01

    Très bon article, bien détaillé. Il y a tellement de conflits au sujet de l’HTML5 qu’on peut penser qu’il y aura forcément des changements assez vite... Je trouve personnellement que le HTML5 est une bonne évolution, il y a eu de bonnes idées de balises comme les audio et vidéo qui rendent le code plus simple par rapport aux autres possiblités, ou les section et article pour mieux structurer... Il est vrai qu’il y a toujours le problème de standardisation à régler

  • Hélène Le 10 février 2013 à 08:18

    La relation entre le WHATWG et le W3C est intéressante. On pourrait imaginer que d’autres groupes d’intérêts liés à l’avenir du HTML forment d’autres organisations, formelles ou informelles, entretenant leur propre version "R&D" de HTML, sur le même modèle.

    C’est peut-être déjà le cas : au fond, l’IDPF ne le fait-elle pas avec l’ePub, qui se base sur les technologies du W3C ? la situation est un peu différente de celle que je décris (où il y a un retour au W3C) mais elle me semble s’en rapprocher.

  • Fabien Le 12 février 2013 à 14:16

    Un tout ptit commentaire pour dire : merci :)

  • Julien Le 7 mars 2013 à 22:09

    Toujours ce soucis de compatibilité entre les différents navigateurs.
    L’évolution et la recherche autour du HTML serait tellement plus simple si des normes et des standards étaient imposés aux navigateurs...
    En tout cas, un très bon résumé de ta part qui présage encore de belles évolutions pour ce beau language.

  • intégrateur web Le 18 avril 2013 à 11:52

    Merci pour le bon récapitulatif. html5 apporte un vrai plus et permet d’établir une structure mieux interprétée par les moteurs de recherche !

  • Zakaria Le 2 février 2014 à 03:48

    Merci.
    Un article très intéressant. Comprendre les rouages du fonctionnement du processus de la standardisation n’est pas évident au premier abord. Tellement de boulot !

Vos commentaires

modération a priori

Attention, votre message n’apparaîtra qu’après avoir été relu et approuvé.

Qui êtes-vous ?
Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Suivre les commentaires : RSS 2.0 | Atom