fastclemmy.com

Remise au goût du jour d'un des premiers articles publiés sur ce blog (30 juillet 2003). Vous pouvez également le retrouver sur le Wiki de W3Québec, riche en informations sur les standards.

L'idée qu'un site web conforme et/ou accessible ne soit pas esthétique est un lieu commun souvent entendu dans la bouche des détracteurs des standards du web. Pourtant, cette assertion ne repose sur aucune réalité tangible. Elle est seulement le fruit de circonstances liées au mouvement des standards du web.

Les normes, une affaire de programmeurs avant tout

La sensibilisation aux standards du web a commencé historiquement dans le milieu des programmeurs/intégrateurs Internet. Assez logique finalement, car appliquer les standards du web, c'est avant tout un travail qui se fait au niveau du code (X)HTML.

Aux premières loges pour découvrir tous les bénéfices que peuvent apporter un code conforme et accessible, ce sont donc eux qui ont été les premiers moteurs de la prise de conscience, ont construits les premiers sites (X)HTML/CSS. Sensibilisés aux normes, mais n'ayant pas forcément une sensibilité graphique. D'où le reproche de sites web "trop carrés".

Une mise en oeuvre restreinte au domaine des weblogs

Un autre facteur qui a renforcé le sentiment que la conformité avait une influence sur l'aspect graphique d'un site est que les premiers sites conformes étaient essentiellement des carnets web (weblogs).

Il ne s'agit là encore qu'un concours de circonstances.

Il se trouve que le mouvement autour des normes a coïncidé (participé ?) avec l'émergence du phénomène des weblogs. Les différentes plateformes de blogging ont d'ailleurs rapidement adopté des structures (X)HTML valides en conséquence. Avec leur sempiternelle structure barre de menu/articles triés par date/liste de liens, on en est abusivement venu à penser que l'utilisation des normes imposait une structure spécifique (2 ou 3 colonnes).

Heureusement, l'initiative CSSZenGarden lancée par Dave Shea a démontré que les possibilités graphiques n'étaient en rien limitées par XHTML ou CSS. En changeant simplement la feuille de style et les images, on peut ainsi visionner le même site avec des mises en page totalement différentes.

Une approche nouvelle

Enfin, il est bon de signaler que la conception aux normes est encore très jeune, les meilleurs exemples de sites conformes et beaux sont donc sans doute à venir !

Des sites conformes, accessibles... et beaux !

Pour consulter des ressources prouvant qu'on peut faire des sites conformes et accessibles sans sacrifier l'apparence, je vous invite à consulter le log intitulé Classious Style Sheets.

#xhtmlCSS

Etonnant de voir comment ce qui fait grand bruit chez nos voisins anglophones passe tout à fait inaperçu dans la blogosphère francophone. Tout comme l'apparition du social tagging, AJAX -le nouvel acronyme désignant l'utilisation de javascript et en particulier d'XMLHTTPRequest pour rendre les applications réactives (Google Maps, Google Suggest et consors)- est complètement passé sous silence... Peut-être est-ce le fait que cela dépasse un peu le cadre habituel de la blogoroutine des standards, toujours est-il que le phénomène est à mon avis suffisamment intéressant pour que l'on s'y attarde...

AJAX, nouvel emballage pour un vieux produit

AJAX, c'est le nom baptismal donné par Jesse J. Garrett à un regroupement de technologies :

  • XHTML/CSS
  • Javascript/XMLHTTPRequest/DOM
  • XML/XSLT

Très bien, mais concrètement ça donne quoi ? Gmail, Google Suggest, Google Maps (Y'a blogmarks aussi, à droite) sont des exemples concrets et à grande échelle de son utilisation. L'idée qui sous-tend tout cela, c'est d'éviter le processus de rechargement de la page web à chaque action. Dans Yahoo!Mail, quand je supprime un e-mail courriel, la page se recharge et me réaffiche la liste de mes messages. Dans Gmail le processus est strictement le même, à la différence près que celui-ci est quasi-instantané car le système fait sa cuisine en coulisses grâce à javascript. L'utilisation d'une application web devient enfin "seamless" comme disent les anglo-saxons, fluide pourrait-on traduire. Difficile en fait de rendre par l'écrit cette impression, le mieux est d'utiliser lesdites applications pour s'en rendre compte. Fiftyfoureleven liste d'ailleurs un grand nombre d'entre elles.

Si l'article de Garrett a le mérite d'avoir trouvé un nom mnémotechnique pour définir ce mécanisme (c'est vrai, ça sonne presque comme un produit lessivier), il soulève des critiques justifiées car il se base sur les exemples AJAX existants pour expliquer concept. Il en ressort que la théorisation faite d'AJAX (utilisation d'XML/XSL par exemple) se vérifie dans le cas particulier de Google Maps, mais ne s'appliquera pas forcément dans une autre application AJAX. Y'a un peu tromperie sur la marchandise en somme.

Par ailleurs l'article fait à peine mention du fait que le concept de l'application réactive n'est pas vraiment nouveau. On l'indique simplement en bas de page dans les Q&A, où l'on fait aussi mention du fait que non XML/XSL ne sont pas des prérequis dans l'équation AJAX... Bonjour l'embrouille.

Si je comprends bien, tout ça c'est du flan ?

Pas vraiment en fait. En effet, on pouvait déjà avoir des mécanismes de ce genre avec des solutions que l'on qualifiera pudiquement de "peu élégantes".

Ce qui est intéressant avec cette "nouvelle" approche c'est :

  • que Google a validé le concept en le déployant à grande échelle, donc que ça marche
  • que les technologies utilisées reposent sur de véritables standards (à la réserve près qu'XMLHTTPRequest est une invention de Microsoft implémentée par tous les gros navigateurs, mais la standardisation est à l'étude)
  • que la réapparition de ces technologies réactives intervient à un moment où le microcosme des développeurs web s'intéresse à des concepts comme l'ergonomie, l'accessibilité, etc. Nul doute donc que ce qui sortira de la marmite aura un bon goût de technologie mature et intelligente.

Voilà pour un rapide état des lieux et quelques perspectives qui se dégagent déjà. Il semble donc que l'avènement annoncé de DOM en 2005 se matérialise peu à peu avec AJAX...

#conceptionWeb

Petite nouveauté sur fastclemmy.com, un invité de marque a bien voulu prendre un peu de son précieux temps pour répondre à quelques questions portant sur les normes et les standards du web. Découvrez ci-dessous le point de vue éclairé d'Eric Daspet sur le sujet.

"Norme" et "standard", ces deux termes recouvrent-ils des réalités différentes dans le domaine du Web ?

"Pour moi normes et standards sont indissociables. Une norme c'est un ensemble de règles qu'une réalisation se doit de respecter (normes de qualité par exemple). Le terme de standard recoupe lui l'idée de l'établissement de conventions communes ou générales (format standards des feuilles de papier par exemple).

Or pour échanger avec les autres, ce qui est le but du Web, parler tous la même langue est un impératif. Une application se doit de respecter tout standard établi. Dans une optique d'échange d'informations standard et norme cernent à mon avis le même concept, celui de l'intéropérabilité. Ils prennent juste ce concept par des optiques différentes et complémentaires."

Dans quelle mesure les "standards de fait" ont-ils une légitimité ?

"Tout d'abord je n'aime pas cette expression, c'est accoler volontairement une connotation d'usurpation au mot "standard". Le terme contient déjà une notion d'illégitimité quand on lui accole ce suffixe. Je vais donc parler de "standard", peu importe d'où il vient ou comment il a été établi.

Le but c'est de communiquer ensemble. Un bon parallèle que j'aime utiliser c'est celui de la langue. Dans notre langue parlée on utilise beaucoup d'expressions qui ne sont pas vraiment correctes, de mots qui sont inventées ou construits sur le moment. Même si on ne les retrouve pas dans le dictionnaire, si tout le monde les comprend notre but est atteint. Inversement, si j'utilise des mots du dictionnaire qui sont inconnus par la majorité, je n'aurai pas atteint mon objectif.

Pour le Web notre but est aussi de communiquer. Tout ce qui peut nous faire communiquer ensemble est de fait légitime. Le standard, la convention commune, l'est donc aussi.

Maintenant, si le standard est légitime, n'allez pas penser que ça rend illégitime ou inutile la démarche normative. Les deux sont complémentaires et nécessaires.

Si j'invente des nouveaux mots ou que j'utilise une expression propre à ma région, mes interlocuteurs ne me comprendront pas forcément. Si ce mot est dans le dictionnaire ils auront au moins la même base que moi pour en comprendre le sens.

Sur le Web c'est la même chose. Le problème des "standards de fait" comme on les appelle sur le Web, c'est qu'ils ne sont écrits nulle part. Personne ne peut les consulter comme un dictionnaire. C'est d'autant plus important sur le Web où tout est interprété par des machines, donc les sens ne peuvent être devinés à partir du contexte ou des usages. Ce qu'il faudrait c'est un texte qui décrit tout ce qui est utilisé pour en connaître le sens et le rôle : une norme.

L'idéal c'est d'utiliser le recoupement du standard et de la norme. On utilise des mots dont le sens est défini (dans la norme), en privilégiant ceux qui sont dans la base commune couramment utilisée (le standard)."

Peut-on dire que la standardisation du Web a échoué ? Si oui, pourquoi ?

"Echoué ? Non. La plupart des pages sont "lisibles" et leur code semble quelque chose de compréhensible. La standardisation a réussi, nous avons bien un langage unique utilisé par tout le monde. Dans d'autres industries ou technologies il existe plein de langages ou de règles incompatibles parmi lesquelles choisir. Pensez par exemple aux graveurs DVD avec leur DVD+R et DVD-R incompatibles. Là, effectivement, on peut dire que la standardisation a échoué, pas sur le Web.

Je dirai plutôt que c'est le processus de normalisation qui avait échoué ("avait" parce que c'est en passe de changer). Les gens utilisent bien un même langage, mais pas de la même façon, avec des expressions "locales" et non connues par les autres. Ce qu'il manque c'est justement un dictionnaire pour dire ce qui existe et le sens que ça a. En réalité ce dictionnaire existe, mais peu de gens le connaissent, l'utilisent et s'en servent comme référence (ce qui au final revient au même qu'un dictionnaire qui n'existe pas).

Ceci dit, rien n'est jamais perdu. On peut faire revenir les gens vers un processus normalisé, c'est justement ce qui est en train de se passer doucement sur le Web. On peut le faire en profitant d'un saut technologique, c'est par exemple ce qui est souvent fait grâce à XHTML. On peut aussi le faire en montrant aux intervenants les avantages du respect d'une norme commune, c'est ce qu'il risque d'arriver avec la montée de Mozilla Firefox. Cette seconde démarche me semble d'ailleurs beaucoup plus pérenne pour le long terme."

Un peu de prospective, quel avenir pour les standards du Web ?

"Je prend la question de manière vague : standard, recommandations, normes et tutti quanti. Je dirai que l'avenir est plutôt bon. Les moyens d'accès se diversifient tous les jours, les internautes sont plus exigeants sur la présentation et l'accessibilité du contenu. Coté français on a aussi le point positif de l'état qui commence à imposer des choses sur l'accessibilité de ses propres sites Web. Tout ça remet au goût du jour l'utilité d'un langage commun et recentre la problématique de l'interopérabilité. Si je devais faire un pari ça serait que dans quelques année le nombre de développements qui n'ont pas les normes en tête lors de la conception devraient se retrouver minoritaires.

Si je devais jouer les Madame Soleil je dirai que ça risque de suivre la même courbe que toutes les technologies. La standardisation est en passe de devenir une préoccupation majeure de pas mal de monde, peut être même de façon un peu extrême. On a déjà des exagérations de tout bord. Le soufflé risque donc de retomber un peu quand la phase de découverte sera passée. Les gens vont se rendre compte que non, respecter une norme ne rend pas directement beau, accessible, fort, intelligent et ne résoudra pas la faim dans le monde. Après viendra la phase de pérennisation où on va se recentrer sur ce qu'apporte réellement ces normes, pourquoi elles sont là et quelle place elles doivent avoir.

Ce que j'espère c'est que les gens ne feront pas monter le soufflé trop haut et réduiront la phase de découverte au strict minimum. Plus on exagère dans la première phase, plus on tombe de haut et moins la dernière phase risque de s'établir au bon niveau. N'exagérez donc s'il vous plaît pas trop le rôle des normes : elles sont indispensable, les respecter est nécessaire, mais non ça n'est pas de la poudre magique qui résoudra tous vos problèmes et qu'il faut traiter aussi cérémonieusement que le saint suaire."

Un grand merci à Eric Daspet de s'être prêté au petit jeu des questions/réponses. N'hésitez pas à réagir dans les commentaires et à vous manifester si vous souhaitez retrouver d'autres rendez-vous de ce genre sur fastclemmy.com.

Je rappelle par ailleurs, toujours dans le domaine des technologies web, que l'excellent PHP 5 avancé dont Eric est le co-auteur est toujours disponible à la vente et que je vous le recommande chaudement.

#xhtmlCSS

Vivement un événement francophone autour des standards du web à l'instar du SXSW qui vient de s'achever à Austin. Ca permet d'avoir entre autres ce genre de photos avec un paquet de stars (au sens blogomicroscopique du terme) au mètre carré !

PS : une idée sur le seul type qui n'a pas de légende ?

#humeur

Useless.ca

# 12-03-2005

Ah, au cas ou vous ne seriez par au courant, je suis ici de ce côté de l'Atlantique maintenant.

#divers

La récente réunion de W3Québec à laquelle j'ai assisté dernièrement m'a ouvert les yeux sur les certitudes que je m'étais forgées concernant l'accessibilité web.

La discussion portait sur la définition de l'accessibilité. Dans sa formulation d'alors, celle-ci mentionnait les deux grandes composantes que l'on connaît :

  • l'accessibilité pensée spécifiquement pour les utilisateurs handicapés
  • l'accessibilité dite "universelle" (qui profite à tous quel que soit le browser, le moyen d'accès à Internet)

Cette dernière est une acception récente du terme "accessibilité". Enfin disons pour être plus précis que la prise de conscience en est récente. On pourrait en effet attribuer la paternité de ce concept à Tim Berners Lee, considéré comme le père d'Internet, autant dire que ça ne date pas d'hier...

Toutes les bonnes raisons "d'oublier" les handicapés quand on parle d'accessibilité pour se concentrer sur l'accessibilité universelle sont développées dans l'article d'Eric Daspet paru sur Cybercodeur. Quelque peu polémique (surtout dans le ton malicieusement provoquant), le texte a eu un écho très positif dans la communauté. Beaucoup, moi le premier, en ont réutilisé les arguments afin de "vendre" l'accessibilité. Comme le faisait remarquer Denis Boudreau le côté "moralisateur" insistant sur l'obligation -légale dans certains pays- d'offrir un contenu aux personnes dites handicapées n'était pas vraiment "sexy". Au contraire, parler de l'amélioration du positionnement dans les moteurs de recherche, de la possibilité d'avoir un site consultable directement sur un téléphone portable ou un PDA accrochait bien plus souvent l'auditoire.

Par une manoeuvre finalement assez tordue, on essayait ainsi de vendre l'accessibilité, non pas sur ses objectifs initiaux (relire les recommandations WAI pour se les remémorer), mais sur les avantages collatéraux qui en découlaient.

A mon sens, on touche là aux limites de l'approche cloisonnée consistant à promouvoir de manière indépendante l'accessibilité, la sémantique web, la validation HTML. Comme je le soulignais déjà dans un billet d'humeur précédent sur le piège de l'accessibilité, on a sans doute beaucoup à perdre à essayer de faire passer notre discours sur la qualité web sans essayer d'expliquer le message dans sa globalité. L'accessibilité n'est qu'une composante parmi d'autres du nouveau web que nous essayons tous de promouvoir.

Il peut paraître séduisant -car plus simple- d'avancer par petites touches, en glissant un soupçon d'accessibilité ici, un peu d'XHTML valide par là. Ceci est d'autant plus compréhensible quand on connaît la réalité des projets et des leurs contraintes (timing, budget, compétence des équipes). Pourtant, je reste convaincu qu'il est dans notre intérêt d'agir au grand jour, pour ne pas avoir à jouer sur les concepts comme expliqué plus haut. Cohérence et sincérité, voilà les deux seules motivations qui devraient nous guider.

#conceptionWeb