Tag Archives: presentation

Unicode

tourdebabel.jpgJe viens de mettre en place une recherche multilingue (russe et anglais) à l’aide de lucene (excellent). J’ai donc eu l’occasion de me frotter de prêt à la problématique du multilinguisme et à une partie de la solution: l’Unicode.

Vous connaissez sans doute déjà ce lien: The Absolute Minimum Every Software Developer Absolutely, Positively Must Know About Unicode and Character Sets (No Excuses!)

Comment vous ne l’avez pas encore lu? C’est marqué il n’y a pas d’excuse. Je vous recommande aussi cette présentation sur Unicode trouvé sur la page de Thomas Lebarbé. Vous trouverez aussi sur cette page des supports de cours: Internet et société qui ferons certainement l’objet d’un billet sur mon autre blog qui traite justement ces sujets.

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 .

DNG 2005: Le client riche de demain

Intervenants : Didier Girard et Julien Brunet

On utilise tous le navigateur pour réaliser des applications web mais il ne faut pas oublier que c’est une utilisation détournée: http/html à la base ce n’est pas fait pour ça. L’un des plus gros défaut est que même si l’application n’a besoin de changer qu’une seule ligne à l’écran http et html nous oblige à recharger toute la page: c’est le web 1.0 => peu ergonomique, gaspillage de bande passante, charge inutile sur les serveurs
Les technos “Ajax” permettent de rendre nos navigateurs plus adapté au développement d’application grâce à l’objet xmlHttpRequest et au DHTML on peut mettre à jour un morceau de la page sans la recharger en entier. C’est le Web 2.0 => meilleur ergonomie, moins de bande passante utilisé, moins de charge sur les serveurs même si en abusant d’ajax on peut aussi faire exploser le nombre de requetes côté serveur.

Pour illustrer tout ça nous avons eu une démo de rialto un framework ajax qui semble prometteur et devrait bientôt être diffusé en open source. On attend…

Concernant le web 2.0 je pense que la présentation n’a fait qu’effleurer la surface du phénomène pour savoir plus consulté mon autre blog et cet article sur le web 2.0

Didier nous a ensuite présenté le concept de bureau métier: un container unique pour les application métier qu’elles soient client léger ou lourd, le container permettant de véhiculer un context d’une application à l’autre. On a même eu droit à une démo du concept à base d’eclipse RCP.

Et pour que ce soit écris quelque part Didier à déclaré: “Si il y a une techno qui peut me faire passer du monde java à .net c’est Avalon”

Les standards du web

Css zen garden vous fait réver? Voici les bouquins à lire pour comprendre et savoir faire de même. Au moins pour la partie technique. Pour les aspects esthétiques pas sûr que l’on puisse l’apprende dans un bouquin. Si vous etes comme moi un “techie” une seule régle: toujours le plus simple possible si l’on veut que ce ne soit pas trop moche. Mais si vous respecter les conseils de ces bouquins un véritable graphiste pourra facilement donner de la gueule à vos sites web et il seront accessible!

Je signale ces bouquins car ils ont récemment été traduit en français:

CSS – La référence Eric Meyer
Eric Meyer on CSS Eric Meyer
Design web : utiliser les standards CSS et XHTML Jeffrey Zeldman

Tan que l’on parle des standards du web, si jamais vous etes passé à côté je rajoute les deux sites incontournables sur la question: Openweb et le Standblog bien sûr!

Comparatif de framework web

Je viens de tomber sur les slides d’une conference intitulée “Open Source in the Corporate World
Je n’ai pas encore eu le temps de tout regarder mais j’ai quand même parcouru 2 présentations intéressantes:

Comparing Web Frameworks
Qui fait un bon tour d’horizon des frameworks suivant:

  • Struts
  • WebWork
  • SpringMVC
  • JSF
  • Tapestry
  • Cocoon

et Rich Web Interfaces
Là  aussi un bon tour d’horizon de différentes technos:

  • DTML and Javascript (AJAX)
  • XUL
  • SVG
  • Flash: OpenLaszlo
  • Swing and other Java UI Toolkits