Jeudi dernier avait lieu une nouvelle session du Lava JUG : On the path to Wisdom avec Clément Escoffier.

Clément a travaillé dans plusieurs sociétés à travers le monde et est actuellement chercheur à l’université de Grenoble. Il s’intéresse à tout ce qui peut améliorer l’efficacité du développement ainsi que sa maintenance. Il participe aussi à des projets Open Source tels que Apache Felix (dont il est membre du Project Management Commitee) et iPOJO ainsi que Wisdom, framework dont il est le principal initiateur.

La présentation se déroula en deux parties.

Tout d’abord Clément retraça son parcours professionnel et les principales raisons qui le conduisirent à initier un projet comme Wisdom. Il nous a ainsi évoqué les difficultés qu’il a rencontrées sur son précédent projet avec son équipe pour trouver la bonne technologie (JavaEE, JavaScript, Play, etc). C’est ainsi que l’idée d’un framework modulaire, dynamique, fun à utiliser et complètement orienté services est né. Il nous a ensuite présenté ce qui se cache derrière Wisdom : Java, services OSGi bien empaquetés, Maven, etc.

Ensuite Clément s’est prêté au jeu du live-coding et le moins que l’on puisse dire c’est que l’effet fut bluffant ! L’une des particularités de Wisdom est l’utilisation de Maven en watch-mode. Ainsi Maven scrute les fichiers en cours de développement et lorsqu’il détecte une ou plusieurs modifications, il recompile, redémarre le serveur et redéploie à la volée ! Le développement s’en trouve grandement facilité et le développeur peut rester concentré sur son code sans perdre une bonne partie de son temps en configuration et redéploiement.
La seconde particularité de Wisdom est son aspect ultra-modulaire : tout est service. Ainsi chaque composant peut-être remplacé ou arrêté à chaud, ce qui rend plutôt bien en live-coding. L’exemple pris fut celui d’un e-commerce de coffee-shop (code source dispo ici), sujet qui se prête assez bien pour mettre en avant la découverte de services à travers les fournisseurs de différents types de café.

Wisdom possède aussi une page d’administration, une page de monitoring, une api native de tests de différents niveaux (unitaires, intégration container, intégration blackbox, etc) et tout ça est à découvrir sur le site du projet et sur le GitHub de Clément.

Merci au Lava JUG et à Clément Escoffier pour cette soirée enrichissante et de grande qualité !