De la bonne utilisation d’ajax

16 mai 2006 5 commentaires
Je parlais il y a quelques temps de la nouveauté d’Ajax et de l’intuition de Jesse James Garret à ce sujet dès 2005. A cette occasion, je me suis offert le luxe de faire un peu de teasing pour tenir en haleine les 3 lecteurs de ce blog. Mes amis, votre patience est enfin récompensée car voilà enfin la suite de ce billet.

L’utilisation d’Ajax se prête parfaitement à des sites type applications en ligne tels basecamp netvibes ou box.net. Dans ces applications, on navigue de moins en moins de page en page. Au contraire, on interagit avec un environnement unique, exactement comme dans les application off-line. La conclusion de Jesse James prend dès lors tout son sens : les designers de ces applications ont effectivement cassé les anciens codes du web pour créer une nouvelle ergonomie [1].

Il est d’autres sites où l’utilisation d’ajax relève du gadget potentiellement nuisible : un site d’information, un magasine en ligne, un blog… tous les sites à fort contenu editorial. Car il est une chose qu’Ajax ne sait pas faire : donner de la visibilité au contenu. Visibilité s’entend vis à vis des moteurs de recherche. Un site qui fonctionne selon le bon vieux protocole http est un site qui contient de nombreuses pages. Là où ajax recharge plusieurs contenu dans une seule page / environnement, les « vieux » sites, chargent un contenu par page. Aujourd’hui, c’est encore le nombre de page (ansi que leur construction, leur contenu, leur sémantique) qui donne de la visibilité à un site.

Helldesign est le (très beau) site d’un agence web. Pour bien montrer son savoir-faire en matière de techno, l’agence utilise sur son site tous les effets de la terre pour présenter ses réalisations (scriptaculous, rico, prototype) le tout dans un modèle de navigation type ajax, à savoir sans rechargement de page. Présentation très réussie. L’agence a cependant jugé bon de doubler cette interface ajax par un site classique. Et ce pour 2 raisons j’imagine :

  1. proposer une version accessible sans javascript
  2. optimiser le référencement de l’agence

Pour un port folio en ligne, l’utilisation d’ajax a pour seul interêt de montrer la maîtrise de la techno dans une interface bien punchy. Le tout reste quand même assez gadget.

Autre exemple d’utilisation plus judicieuse et plus discrète : chez Zdnet. Sur chacun des articles du site il est possible de déposer un commentaire, un talkback en langage maison. Zdnet accompagne certains de ses articles d’une vidéo à visionner au format flash. Problème : déposer un commentaire suppose l’utilisation d’un formulaire, l’envoi d’une requête à un serveur, le rechargement de la page, donc l’interruption du visionnage de la vidéo. Pour pallier à cet écueil, l’équipe technique de Zdnet a finement saupoudré son interface de talkback d’un soupçon d’ajax. Lorsque vous regardez une vidéo, vous pouvez poster un commentaire sans interrompre la lecture puisque dans ce cas précis les données du formulaires sont envoyées à l’aide de l’objet XMLHttpRequest, sans rechargement de la page. Et là je dis finement joué.

Les technos dites web2.0 (ajax, rss…) sont robustes, leur utilisation parfois hasardeuse. A ce sujet, un billet de Joël Ronez de Cup of tea. Dans son billet, un court passage sur les technos :

Le fait de mettre à disposition un dispositif asticieux en rassemblant sur la même interface 3 formulaires et 2 préférences avec un coup d’Ajax pour le packaging ne fait pas de forcément de vous la future star d’Euronext.

A lire évidemment.

  1. Enfin pas si nouvelle que ça puisque fortement inspirée du monde off-line, mais c’est mon avis personnel et cependant je le partage

Réagissez

Si ce billet vous a plu ou si vous voulez apporter des précisions, ou si vous n’êtes pas d’accord avec ce que je raconte, c’est ici qu’il faut vous manifester. Je me réserve toutefois le droit de supprimer toute contribution insultante ou qui n’aurait rien à voir avec la choucroute.

  1. Je n’ai pas un avis aussi tranché concernant l’inutilité d’Ajax dans un blog ou un site personnel. Je trouve qu’à certains niveaux, cette techno permet d’optimiser des focntionnalités assez utilisée sur ce genre de sites. Ex typique : le moteur de recherche. Pouvoir bénéficier de l’affichage des résultats de la requête sans changer de page est pour moi une amélioration. Je compte intégrer ça sur mon site perso d’ailleurs dans pas longtemps, avec l’espoir de pouvoir sortir du modèle : champ de requete en colonne -> résultat au centre dans le cadre principal…

  2. Ajax sur un blog ou un site à contenu, oui… tant que ça enrichit l’expérience utilisateur. Le coup du moteur oui bon très bon ! Si en plus tu ajoutes un coup d’autocomplétion dans les recherches, là l’utilisation d’ajax est optimum.
    Mais créer un blog en ajax qui appelle chacun des billets avec XMLHttpRequest dans une page unique… aucun intérrêt ! Ca me rappelle les sites en flash complet qui ne faisaient rien d’autre qu’afficher du texte, des bitmaps bien lourds, sans animation, sans effet de transition… bref sans utiliser tout ce qui fait que flash est flash (d’ailleurs, les interfaces en flash on n’en voit plus beaucoup, c’est un peu has been. Mais c’est un autre débat)

  3. Au fait : http://www.ajaxlessons.com/
    Pas mal de tutoriels sympa. A bookmarker.

  4. coucou, article très intéresssant 🙂 je me demandais ce que tu vulais indiquer dans cette précisoin : ‘ansi que leur construction, leur contenu, leur semantique’ … A+

  5. Fils >> je parlais de SEO. Tu auras plus de chance de te retrouver bien placé dans les résultats d’un moteur de recherche (google ou autre) si ta page est bien construite, sémantiquement, avec un titre h1, des paragraphes p, des inter h2 ou h3… Bref tout ces tags html qui peuvent donner plus ou moins d’importance à des mots / expressions clés de ta page.

    Dans la construction j’inclue aussi la façon de composer ton titre de page (title) et la façon d’agencer tes éléments dans ton code html :
    – si tu peux placer le titre de premier niveau h1 avant un éventuel menu de navigation, c’est mieux
    – si tu peux éviter de donner du javascript à manger en premier aux moteurs, c’est mieux aussi
    – bref, si tu peux mettre les éléments clés de ton contenu en haut de page, c’est mieux.

    Voilà. Mais le SEO cest un sujet à lui tout seul ! J’en parlerai plus avant prochainement 😉