RIALTO Rich Internet Application Toolkit

J’allais publier ce billet au moment du crash de blogs.a19s.com… Mais il reste d’actualité.

Rialto avait été présenté en avant première lors du Symposium DNG, depuis quelques jours tout le monde peut baver sur la démo en ligne et télécharger le code source.

Rialto est un framework javascript indépendant de la technologie côté serveur. Il permet de mettre à jour une partie de la page sans la recharger en entier (à la gmail, Ajax…). Il est destiné à la création d’application de gestion et est disponible sous la licence apache 2.0.

Vous allez me dire encore un framework Ajax, c’est à la mode en ce moment. Il n’y qu’à voir la liste des frameworks Ajax existant. Personnellement je pense que ces solutions de type ajax représentent le futur des applications de gestion. Si vous développez des applications de gestion vous avez déjà du faire face à cette situation: un client qui souhaite que vous portiez en client léger (web) une application client lourd. Et là il faut lui expliquer que ce n’est pas forcément possible… Normal, à la base le web a été conçu pour accéder à des ressources statiques à l’aide de liens hypertextes. Tout le reste, tout ce que l’on fait avec le client léger c’est du patch, des utilisations détournées du protocole http et du langage html. Le meilleur exemple étant la problématique du rechargement entier de la page alors que 90% des cas d’utilisation d’une application de gestion ne demande que la mise à jour d’une petite partie de la page. La solution des iframes cachées ou de xmlhttprequest existe depuis longtemps mais peu de personnes faisaient confiance à ce type de solution. Sans doute à juste titre: maintenir du javascript est un cauchemar. Pourtant avec gmail ou maps, google a démontré l’intérêt et la viabilité de ce type de solution. Ok tout le monde n’est pas google, mais je considère que le concept de Single page interface (SPI) qui repose sur l’utilisation de requête asynchrones et la non mise à jour de toute la page est un pas dans la bonne direction pour les applications de gestion.

Au milieu de tous ces frameworks Ajax pourquoi Rialto retient-il plus particulièrement mon attention qu’un autre projet?
Si vous ne l’avez pas déjà fait, visitez la démo de rialto. Elle répond parfaitement et uniquement aux problématiques que l’on rencontre dans des applications de gestion. Remplir un formulaire, faire une recherche, parcourir une liste paginées, utiliser des tabulations. Bref on sent que ce framework répond à un vrai besoin utilisateur. Il n’existe pas juste pour faire “web2.0”. Derrière il y a des utilisateurs avec des besoins et une équipe de développement qui y a répondu sans chercher à aller plus loin. En général c’est en cherchant à répondre à plus que le besoin initial que les framework deviennent des usines à gaz.

Reste malgré tout le problème de la maintenance du javascript et de la maintenance d’un framework tout court. En allant d’un client à l’autre on découvre toute sorte de frameworks “maison”: couche de présentation, moteur transactionnel et le fin du fin: le moteur de persistance mappeur objet/relationnel… La plupart du temps ces frameworks sont mauvais, parfois correct, rarement bon et jamais à la hauteur de leur équivalent open-source. Mais surtout ils sont une calamité à maintenir et il est impossible de trouver des personnes extérieures à la société ayant de l’expérience avec ces frameworks. Par rapport à ce problème je trouve la démarche de l’IGR (qui est à l’origine de rialto) excellente. Ils ont un bon framework développé en interne. En l’ouvrant à la communauté open source ils font dans un premier temps un joli cadeau et dans un 2eme temps si l’ouverture du projet est un succès ils ont une chance de régler ce problème de maintenance et de compétences.

Le chemin pour que ce projet réussisse est sans doute encore long:
– Quelle courbe d’apprentissage pour se l’approprier en tant qu’utilisateur?
– Et en tant que contributeur?
– La documentation sera t’elle à la hauteur? C’est un point capital dans la réussite d’un projet open source.
– Quelle facilité pour changer le look, “skinner” une application?
 Et au final quelle sera la “vigueur” de la communauté qui émergera autour du projet?

En tout cas la mailing list de Rialto commence à s’animer et plus de 140 personnes ont taggé rialto dans del.icio.us .