Aujourd'hui, nous avons un traitement spécial: un article de Luke Stevens, auteur de The Truth About HTML5, qui jette un regard critique sur le passé, le présent et l'avenir de HTML5.
Qu'est-ce que HTML5, vraiment? Comment est-ce arrivé? Devrions-nous vraiment suivre aveuglément ce que l’on nous en dit ou faut-il un esprit critique? Continuez à lire pour le découvrir.
Deux HTML5
"HTML5 a, dans sa forme la plus buzzable qui soit, pris d'assaut le monde, mais tout ce que l'on prétend être" HTML5 ". n'est pas. En un sens, il existe deux «HTML5»: les spécifications techniques et la collection de nouvelles technologies passionnantes regroupées sous le nom de «HTML5».
D'un côté, il y a la spécification HTML5, un long document technique écrit en grande partie pour les éditeurs de navigateurs, qui est souvent un monde étrange pour ceux d'entre nous qui balisent les pages Web jour après jour. C'est? HTML5? dans le sens techniquement correct. (Et vraiment, y en a-t-il d'autres?)
D'autre part, il y a HTML5, le mot à la mode - la collection de technologies nouvelles (et pas si nouvelles) qui sont souvent carrément cool, mais qui ont peu à voir avec la spécification HTML5 ou ceux qui y contribuent. Par exemple, avez-vous vu la vidéo musicale interactive basée sur WebGL du projet Rome de Danger Mouses? Tout se passe de manière native dans votre navigateur (sauf IE pour des raisons de sécurité) et fera tomber votre mâchoire.
WebGL est nouveau et sexy, mais même les anciennes normes sont dépoussiérées et reconstituées. Avez-vous vu l'incroyable animation SVG Girl dans IE9? La prise en charge accélérée par le matériel de Microsoft de la norme SVG, vieille de dix ans, a rendu possible des choses en SVG auxquelles nous ne pouvions rêver que dix ans plus tôt. Et oui, Microsoft pousse les normes Web vers de nouveaux sommets.
Mais SVG - une fois annoncé comme? Le nouveau flash? - n'est pas HTML5 non plus.
Qu'est-ce que HTML5?
HTML5, en tant que spécification, est à son meilleur lorsqu'il est le plus ennuyeux. Ian Hickson, l'éditeur HTML5, a déployé beaucoup d'efforts pendant de nombreuses années pour mettre en forme le standard HTML afin que les constructeurs de navigateurs puissent le mettre en œuvre de manière cohérente. Les détails de mise en œuvre pour les fabricants de navigateurs ne sont pas vraiment des éléments sexy, mais ils facilitent toutes nos vies à long terme, et nous pouvons en être reconnaissants.
HTML5: les bonnes choses
En fait, le fait que HTML5 existe est en quelque sorte un petit miracle. Après avoir déclaré HTML 4.0 terminé et épousseté en 1999, le W3C a passé la première moitié des années 2000 à la recherche de XHTML 2, une impasse que l’évangéliste au HTML5, Bruce Lawson, décrit comme une «belle spécification de la pureté philosophique qui n’a aucune ressemblance avec le vrai monde?.
?????
«En 2004, un groupe travaillant pour des éditeurs de navigateurs extérieurs au W3C a envisagé l’avenir du code HTML différemment. Il a commencé à améliorer la spécification HTML afin de mieux prendre en charge les applications Web et a publié un document exposant leurs intentions. Après avoir été repoussé par le W3C, ce groupe - le groupe de travail sur la technologie des applications hypertextes Web (WHATWG) - a ensuite développé les spécifications de Web Applications 1.0 et Web Forms 2.0, éditées par Ian Hickson sous le dictateur bienveillant. modèle de développement des spécifications.
En bref, le W3C a finalement repris conscience et s'est rendu compte que XHTML 2 était une impasse; le WHATWG a eu le soutien de ceux qui comptaient vraiment (les fabricants de navigateurs); et ils n’ont pas eu beaucoup d’autre choix que de se joindre à nous et d’adopter les normes du WHATWG.
Les bonnes parties de HTML5 reflètent largement cette histoire. Par exemple, HTML5 est en partie issu de Web Forms 2.0 et contient donc de nouvelles fonctionnalités permettant d'ajouter un grand nombre de fonctionnalités permettant de simplifier considérablement le développement de formulaires, notamment l'attribut fictif très pratique, entre autres. Vous pouvez en savoir plus sur la prise en charge du navigateur de formulaires HTML5 dans l'excellent guide des formulaires HTML5 de Wufoo.
Il existe également toute une gamme de fonctionnalités orientées sur les applications Web, notamment l’API History, qui nous permet de manipuler l’historique du navigateur et l’URL de la barre d’adresses via JavaScript, et d’aller au-delà des vilains modèles d’URL hash-bang (#!), Et même du modèle d'actualisation de page complète que nous essayons de contourner depuis le monde des requêtes Web 2.0 et AJAX.
La spécification HTML5 (et ses prédécesseurs) est modifiée *, comme mentionné, par Ian Hickson. Comme Jeffrey Zeldman le dit:
«En réalité, il existe un« décideur »- l'éditeur de HTML5, Ian Hickson. Ses décisions sont définitives, il n’est nullement obligé d’expliquer ses raisons et il n’a pas besoin de donner la priorité aux recommandations des développeurs par-dessus le navigateur du constructeur - ni par-dessus le sandwich du fabricant. De par sa conception, Hixie est un agent libre selon la structure qu'il a elle-même créée et les utilisateurs finaux de son navigateur (maîtres?) L'aiment de cette manière.
Hickson n'est pas seulement l'éditeur, il a également contribué de manière significative aux spécifications qu'il édite, pour le meilleur et pour le pire. Par exemple, la démonstration WebGL que nous avons abordée précédemment utilise la technologie OpenGL basée sur l'élément. En 2004, cet élément avait été inventé par Apple pour ses graphiques 2D simples et scriptables dans son tableau de bord OS X. Plus tard, il a été ajouté à Safari. Hickson a conçu et normalisé cette technologie pour d'autres navigateurs.
Avance rapide jusqu'en 2012 et Microsoft a parrainé une version basée sur navigateur du succès pour mobile Cut The Rope qui utilise - vous l'avez deviné - l'élément pour ses graphiques 2D. Les normes Web apparaissent parfois de manière étrange.
???????
? HTML5, les choses pas très bonnes
Mais qu'en est-il des vieilles balises HTML simples? Qu'ajoute HTML5 là-bas? Eh bien, c'est la partie la moins bonne. HTML5 inclut les contributions de son éditeur / contributeur (en tant que joueur et arbitre) sous la forme de nouveaux éléments.
Vous connaissez probablement les nouveaux éléments structurels tels que
,,
etplus
et. Les quatre premiers font à peu près la même chose: ils créent une nouvelle section dans le plan du document. Mais en ce qui concerne les concepteurs et les développeurs Web, personne ne sait vraiment ce qu’est un bon? Document? est, ou pourquoi on devrait en créer (c'est expliqué en profondeur dans la spécification). En fait, mes recherches suggèrent que ces nouveaux éléments ont été dessinés sur un coup de tête par l'éditeur HTML5 sur un tableau blanc en 2004 et, avec un peu de retour, finalisés dans la spécification. Encore une fois, les normes Web se manifestent parfois de manière étrange.
Ces éléments peuvent sembler familiers, mais la manière dont ils sont spécifiés est tout sauf familière et cela a créé une grande confusion. Par exemple, si vous regardez la spécification, vous verrez un exemple qui suggère que nous utilisons
pour les commentaires, etpour l'en-tête de ceux
s? Je veux dire des commentaires. Pieds de page pour les en-têtes? Articles pour commentaires? C'est un peu le bordel.
Où allons-nous à partir d'ici?
Au cours des dernières années, les technologies liées à HTML5 ont suscité beaucoup d'intérêt, tout comme certaines des nouvelles fonctionnalités incluses dans les spécifications actuelles.
Cependant, le battage publicitaire occulte souvent le contrôle, et certaines des parties les plus fondamentales de HTML5 - telles que la manière dont nous sommes censés baliser une page Web de base - ont été mal examinées et simplement passées pour un fait accompli.
La vérité sur HTML5
À mon avis, cela ne suffit pas, et c’est en partie pourquoi j’ai écrit La vérité sur le HTML5. Il existe de nombreux livres, billets de blog et articles qui traitent de ce qui est contenu dans la spécification HTML5, mais très peu expliquent pourquoi elle est présente, et si et comment nous devrions l'utiliser.
Le battage publicitaire n'est pas un substitut à la substance, et trop souvent, les auteurs se contentent de répéter ce qu'ils ont dit sans creuser plus profondément et poser les questions difficiles de la spécification HTML5. Par conséquent, je me suis mis à faire des recherches sur la vérité sur HTML5 et suis parvenu à des positions controversées en cours de route, en particulier en ce qui concerne les nouveaux éléments sémantiques, que de nombreux concepteurs et développeurs ont sans le vouloir terriblement mal fait.
Je pense qu'il est de notre responsabilité de nous informer le plus possible sur la nature de la spécification HTML5 et sur son évolution. Après tout, si nous, ceux qui travaillent avec HTML5 au jour le jour, ne prêtons pas attention à ce qui est dans la norme que nous utilisons tous, qui le fera?
Note de l'auteur
* Ok, pour ceux d'entre vous qui suivent l'actualité du W3C et du WHATWG, le WHATWG a déclaré que sa spécification HTML5 était un? Niveau de vie? appelé plain old HTML; et le W3C a collé à son modèle instantané versionné de la spécification plus ou moins identique, l'appelant toujours HTML5. (Confus, hein?) Ian Hickson était en train de modifier à la fois le HTML5 du W3C et le code HTML du WHATWG, mais a depuis arrêté de modifier la version HTML5 du W3C afin que d'autres puissent le croiser et obtenir le i pour le dernier instantané HTML5 du W3C. , tout en continuant à travailler sur le standard de vie HTML. En bref, l'avenir du HTML est encore entre les mains d'un homme.