Viadeo

Antoine Sabot-Durand

Pages

J'ecoute les Cast Codeurs

La guerre des RIA aura-t’elle lieu ?

Depuis deux ou trois ans, on nous prédit une guerre sans merci entre les différents acteurs des technologies Internet Riches. L’arrivée de Microsoft avec Silverlight semble avoir mis le feu au poudre, dans la foulée Adobe a commencé à communiquer de plus en plus sur Flex et à sortir Air (qui est plus une technologie “desktop”) , enfin Sun est sorti du bois (un peu tard) pour prendre la place d’outsider avec JavaFx. Aujourd’hui, de nombreux décideurs s’interrogent sur ces technologies et quelques projets sont lancés en s’appuyant sur elles (pour JavaFx, il va falloir encore attendre), mais cette guerre annoncée risque d’être remportée par un acteur déjà en place et qui dispose d’un contrôle incontestable sur le web : Google.

Le concept, les principes et les acteurs

Avant tout, juste un petit point sur le concept des RIA. Je discutais du sujet il y a quelque jours avec un décideur qui m’expliquait qu’il faisait des RIA il y a déjà 10 ans avec Delphi. A ce compte, moi aussi il ya dix ans je faisais des RIA avec Lotus Notes. Cette anecdote illustre combien le concept n’est pas forcément clair.

L’idée générale des RIA est d’amener une expérience riche au sein d’une navigation Web. Plus prosaïquement : donner à l’utilisateur l’impression qu’il utilise un client lourd (une application “installée” sur son ordinateur) sans l’obliger à quitter son navigateur. Rien de révolutionnaire en soit, mais la facilité de mise en oeuvre de ce logiciel client riche pour l’utilisateur lève les principaux freins à son adoption. Les RIA permettent donc de déployer un applicatif client serveur sans aucune intervention de l’utilisateur (quand la configuration de son ordinateur est correcte).Pour une définition plus fouillée des RIA, faites un tout sur cet excellent article sur le sujet qui aborde aussi le concept de RDA (Rich Desktop Application).

Aujourd’hui deux principes prévalent pour la mise en oeuvre des RIA. Le premier repose sur l’idée que le navigateur ne propose pas d’outils suffisamment sophistiqués pour concevoir une interface riche. La technologie s’appuie donc sur un plugin qui vient enrichir le navigateur, c’est le cas des solutions d’Adobe, Microsoft ou Sun.

L’autre principe s’appuie sur les outils standard du navigateur à savoir le HTML et le language javascript. Ce mélange mis en oeuvre par Microsoft dans Internet Explorer 5 en 1999 grace au contrôle ActiveX “XMLHTTP” a été baptisé Ajax (Asynchronous Javascript And Xml) en 2005 puis standardisé par le W3C en 2006. Aujourd’hui beaucoup d’acteurs gravitent autour d’Ajax et s’appuient sur ses concepts simples et les fonctionnalités évoluées de HTML pour proposer des bibliothèque de composants Ajax permettant de concevoir des applications riches dans le navigateur. Parmi les pus populaires on peut citer JQuery, Dojo, YUI (Yahoo) et GWT (Google). Dans l’univers Java, des technologies comme Wicket ou JSF permettent d’embarquer de l’Ajax sans avoir à produire le Javascript et le HTML nécessaire pour le mettre en oeuvre. Côté JSF on peut citer des acteurs comme RichFaces ou IceFaces.

Quoiqu’il en soit, l’acteur qui a popularisé le plus Ajax et en a fourni une “proof of concept” est certainement Google qui dès 2004 avec Gmail puis en 2005 avec Google maps a fait la démonstration qu’Ajax était viable et pouvait être utilisé pour concevoir des applications très sollicités  et hautement interactives. Google a ainsi été le pionnier du Web 2.0 où d’autres acteurs l’ont suivi rapidement comme Facebook ou Netvibes.

En schématisant on peut donc dire que l’univers RIA compte 4 acteurs majeurs :

  • Adobe avec Flex ;
  • Microsoft avec Silverlight ;
  • Sun / Oracle avec JavaFx (Ok, celui là est franchement discutable) ;
  • Google avec GWT en tant que tête de pont de la mise en oeuvre d’Ajax.

En route vers le Web 3.0

Cette semaine s’est tenu le Google I/O, la conférence développeur de Google à San Francisco. Les annonces faites lors de cet événement sont peut être les prémices d’une nouvelle “révolution” du Web. Ces annonces ont tourné autour de deux points :

  • HTML 5 : la plupart des nouvelles versions des navigateurs supportent en avant première les nouveauté d’HTML 5 (annoncé pour 2010). Tim O’Reilly, brillant analyste résume assez bien cette conférence sur son blog. Pour faire court, HTML 5 enrichit son ancêtre en intégrant nativement les technologies suivantes :
    • Canvas : qui permet de générer dynamiquement du contenu graphique sur la page web en cours ;
    • L’intégration de la vidéo : aujourd’hui une telle intégration nécessite un plugin. HTML 5 supportera nativement la vidéo permettant ainsi de créer des applications de manipulation d’images comme du montage vidéo ;
    • La Géolocalisation déjà présente sur la plupart des terminaux mobiles comme l’iPhone ou Androïd ;
    • AppCache et Database qui permettent de répliquer une application Web pour la mettre en mode offline
    • Web workers qui permet de paralléliser des traitements serveurs et clients et d’augmenter significativement la performance d’une application web
  • Google Wave : le nouvel outil hyper-communiquant de Google qui sortira cette année. Cet article de 01 résume assez bien cet outil. Plus qu’un bureau communiquant, Wave sera apparemment une plate-forme SaaS dans laquelle les développeurs pourront enrichir l’écosystème applicatif à l’instar de Salesforce ou de l’appsotre d’Apple. Bref, un croisement fonctionnel entre la messagerie, le forum de discusssion, la messagerie instantanée, le réseau social et le travail collaboratif, le tout en opensource et librement extensible. Wave va probablement révolutionner notre façon de communiquer sur Internet. Et quoi qu’il en soit, il constitue la Killer App (tout comme Maps le fut en 2005) pour pousser HTML 5 et Google Web Toolkit.

Conclusion

Google semble mettre toutes ses forces sur HTML 5 et les évolutions d’Ajax qui en découleront, et sur le papier (ou l’écran) ça à l’air très très prometteur. Face à ces évolutions alléchantes qui seront partie intégrantes de tous les navigateurs modernes sur toutes les plate-formes, les investissements colossaux des acteurs qui parient sur des technologies propriétaires avec des plug-in à adapter à chaque plate-forme et chaque navigateur semblent un peu plus hasardeux.

Mais, personne ne dispose d’une boule de cristal et les prophètes sur le sujet se sont maintes fois trompés par le passé. La seule certitude que l’on puisse avoir c’est que la conception d’applications en ligne et l’ergonomie de ces applications d’ici 5 ans n’aura pas grand chose à voir avec celle d’aujourd’hui.

Share and Enjoy:
  • Print
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • LinkedIn
  • Netvibes
  • Twitter
  • Rob
    Merci Antoine pour cet article très intéressant (et pour ton effort de rédaction très pédagogique ! bravo) et pour les liens (à ceci près que celui vers 01 est brisé. Mais me réveillant 4 mois après la bataille, ce serait mal venu que je te le reproche ;).
    Je me suis d'ailleurs permis de le recommander sur un groupe Linkedin...
  • Merci pour le lien vers la pres Google Wave. Dans ton analyse, tu as tout de même oublié quelque chose dimportant : le coût. OK pour le mythe du zéro déploiement autour du web. Mais pour une entreprise, cest un peu de la poudre aux yeux. Par contre, quid du coût de développement de toutes nos applis web depuis 10 ans? Et oui, 10 ans de 5250 ou 3270 avec des couleurs et des images et 10 ans de projets qui coûtent la peau des fesses. En cette période de chasse au gaspi, il se pourrait que les entreprises soient en attente dautres choses. Pour exemple, jai passé quelques années chez un éditeur dERP qui migrait ses solutions du vieux client/serveur vers du java/web. Le constat est édifiant, lapplication web ne porte pas plus de métier que la version client/serveur (ce qui est globelement normal car le métier nest pas intrinséquement lié à la techno utilisée). Pire, elle coûte beaucoup cher à développer pour léditeur ET à exploiter pour ses clients. Jai dpu mal à voir le gain. Reste que les managers vont commencer à sen rendre compte...
  • Alexandre, je pense que l'on parle de chose différentes. Les innovations apportées par HTML 5 et Ajax ne portent que sur la partie IHM (Interface Homme Machine). Les traitements métiers et la partie middleware des applications de gestion ne tirent aucun bénéfice de ces technologies.
    Concernant Wave, le produit semble répondre à un besoin rempli aujourd'hui par des solutions comme Lotus Domino ou Microsoft Sharepoint : un ensemble cohérent d'outils communiquant permettant de mieux travailler en mode collaboration (de mon temps on appelait ça le groupware :-) ). Là encore la parte métier doit venir se greffer dessus.
    Question coût, l'ergonomie apporte de la productivité et diminue les courbes d'apprentissage et d'adoption des utilisateurs (entre gérer sa messagerie en ligne de commande ou dans Gmail, y a pas photo) ainsi que certains coûts induits par la formation. Développer des IHM conviviales était hier prohibitif, aujourd'hui c'est nettement moins cher et demain on aura en prime la possibilité de greffer son développement sur un moteur de communication vraiment innovant pour un surcoût dérisoire.
  • Pour compléter je viens de lire un très bon article de Read Write Web sur le sujet : http://www.readwriteweb.com/archives/google_wave_our_first_hands-on_impressions.php
  • Très bon article !
    une évolution a suivre de près.
  • Oui, je pense que d'ici deux ans, tout ça va faire énormément évoluer nos métiers.
  • Excellente synthèse ! J'ai tout compris... merci !
  • La présentation de Google Wave
    http://www.youtube.com/watch?v=v_UyVmITiYQ

    est vraiment édifiante (tu devrais prendre le temps de la regarder). C'est une killer app pour HTML 5 en général et pour Google en particulier. Je viens de la visionner et franchement je n'arrive pas à savoir s'il faut être enthousiaste ou effrayé par cette petite révolution qu'ils préparent.
blog comments powered by Disqus