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é !

Commenter et partager


Après mon premier Agile Tour Bordeaux le week-end dernier, j’étais cette semaine à l’Agile Tour Clermont-Ferrand, mon troisième déjà. Ce fut pour moi encore l’occasion de passer un moment convivial, riche en échanges et apprentissage. Encore merci à l’A-Cube et aux speakers pour l’organisation de cette journée !

Comme l’an dernier, il était organisé dans l’agréable Centre Diocésain de Clermont-Ferrand avec au programme beaucoup de retours d’expérience de speakers locaux. Retour sur les conférences et ateliers auxquels j’ai participé :

Keynote d’ouverture, par Thierry Fraudet
La métaphore de la construction dans le bâtiment est souvent utilisée pour défendre les idées du cycle en V et sert de vivier à arguments contre l’agilité. C’est ce qui est arrivé à Thierry Fraudet au début de la mise en place de l’agilité à grande échelle chez Michelin et il a alors cherché un contre-pied. Et il a trouvé ! Il nous raconte donc une “jolie histoire”, celle d’une construction de bâtiment agile avant l’heure, celle de l’Empire State Building.

Histoire d’une non transformation agile, par Mathieu Lefevre
Mathieu partage avec nous la mise en place de l’agilité au sein de CGI Grand Est dans une présentation de qualité. Il revient sur le paradoxe auquel on est parfois confronté entre volonté de la direction d’aller vers plus d’agilité et difficultés de mise en place sur le terrain.

Agile Game, Design Challenge, par Nicolas Brie et David Rodde
Mon premier atelier de la journée : le Marshmallow Challenge ! Construire à l’aide de spaghettis, de ficelle, de scotch et de ciseaux le plus haut promontoire afin d’avoir le chamallow le plus haut perché !

Le knowledge management dans l’IT, par Maxime Escourbiac
Depuis plusieurs années, le nombre de données collectées sur Internet par Google, Facebook, Twitter et autres est considérable. Mais que faire de toutes ces données et comment en tirer de l’information intéressante ? Grâce aux techniques du knowledge management, et c’est ce que nous a présenté Maxime.

Example Driven Specifications, par Xavier Renaudin
L’ATDD est une technique permettant de concevoir un logiciel à partir d’exemples. Ici, le principe est dans la même veine. Xavier nous présente un protocole permettant d’aboutir à des spécifications à partir d’exemples. Ce fut un exercice intéressant même si il aurait mérité un peu plus de temps.

Agilité à distance, par Jean-David Olekhnovitch
L’agilité peut-elle rimée avec télétravail ? C’est ce que nous montre Jean-David au travers de son entreprise clermontoise Scopika où tous travaillent en télétravail ainsi que sur des exemples plus connus tels que Wordpress ou Basecamp.
Jean-David nous a aussi présenté avec fun les principes de base pour qu’un télétravail fonctionne bien et comment les principes de l’agilité permettent d’assurer la bonne dose de discipline nécessaire au sein de l’équipe.

J’ai peur de l’Agile, par Ionut Mihalcea
Ionut nous présente un essai personnel sur la transformation de nos peurs (de l’agile ou autre) en actions. Pour cela, il s’appuie sur l’histoire du baleinier Essex qui a inspiré Herman Melville pour Moby Dick.
C’est aussi pour assister à des conférences qui sortent des sentiers battus comme celle-ci que j’aime participer à des événements comme l’Agile Tour.

Enlever les petites roues, par Nicolas Gouy
Et si on mettait de côté nos blocages psychologiques, culturels ou autre pour tenter les choses que l’on n’ose plus faire. Cela nécessite de sortir de notre cadre de référence, d’adopter des points de vue différents, des méthodes originales. C’est ce que nous présente Nicolas dans sa conférence à travers deux exemples : l’apprentissage qu’il a fait du dessin et l’apprentissage du vélo par son fils par la méthode de la draisienne, d’où le titre : enlever les petites roues !
Nicolas sait rendre vivantes ses présentations et celle-ci n’échappe pas à la règle, fun et bonne humeur pour prendre un peu de recul sur nos activités de tous les jours et notre façon d’apprendre.

Keynote de clôture, par Antoine Vernois
Seule conférence technique de la journée, on termine en beauté avec un peu de live coding. Antoine nous rappelle avec le kata du bowling game les différentes techniques de tests unitaires et celle qui est certainement la plus efficace, le Test Driven Development.
Chapeau Antoine pour avoir relever le challenge d’un live coding en toute fin de journée et en pleinière !

En marge des conférences et ateliers, une “coaching clinic” avait été mise en place où toute personne ayant un problème dans l’application de l’agilité sur son projet professionnel se voyait accordé 15 minutes avec un coach pour une séance gratuite !

Pour finir, je rappelle que l’A-Cube organise tout l’année des événements autour de l’agilité : Agile Playground, Agile Book Club et autres joyeusetés.

A l’année prochaine pour un nouvel #atclt !

Commenter et partager

Agile Tour Bordeaux 2014

dans Événements

Le week-end dernier avait lieu l’Agile Tour Bordeaux 2014 et j’étais de la partie ! Retour sur ces deux jours très enrichissants.

L’événement était découpé en deux sessions : le vendredi plutôt axé sur les conférences et le samedi sur les ateliers pratiques. Le tout dans un superbe cadre au sein de l’Epitech.

Le vendredi commençait fort avec la keynote d’ouverture en anglais de Gojko Adzic : How to not just survive but thrive with flexible scope ou comment tirer la pleine puissance d’une équipe agile.
Beaucoup de projets adoptent une méthodologie Scrum mais ne l’exploite pas comme ils devraient, dérivant parfois vers un “Water Scrum Fall”. Un projet fait du Water Scrum Fall lorsqu’il n’utilise pas Scrum pour rendre son périmètre fonctionnel malléable. Une des principales forces de l’agilité est de permettre au “business” de changer d’avis à chaque sprint, de rendre prioritaire des fonctionnalités qui ne l’étaient pas ou au contraire de ne plus faire celles qui n’apparaissent plus utiles et ainsi pouvoir s’adapter à son marché qui peut évoluer très vite !
Or peu de projets exploitent cette force, principalement du fait de la réticence du “business”, de sa “peur” à changer ses plans à la volée. Pourtant la puissance de cette adaptation au changement pourrait être utilisée comme un atout formidable, c’est là toute la force de la présentation de Gojko : comment réaliser un GPS pour nos projets logiciels qui nous guide en temps réel vers notre objectif, nous indiquant non pas une seule route (la traditionnelle roadmap) mais bien tous les virages à prendre l’un après l’autre, nous recalculant l’itinéraire quand on rate un virage au lieu de nous laisser faire fausse route en continuant tout droit et bien plus encore.

La deuxième conférence à laquelle j’ai participé est celle de Nicolas Deverge : Une recette du Maker-Entrepreneur : une grosse louche de Lean Startup avec une pincée de FabLab. J’ai découvert à travers le récit de son expérience le Lean Startup et j’ai été séduit par le concept; celui de se lancer dans l’entreprise d’un petit projet avec un budget limité et le plaisir de faire quelque chose soi-même.
Nicolas nous a présenté un de ses projets, qu’il a débuté en fin d’année dernière, à partir d’un problème simple : la perte des clés de moto de son beau-père. Il a ainsi eu l’idée de confectionner un porte-clé mettant en relation celui qui trouve les clés et celui qui les a perdu. En itérant de MVP en MVP, de réussite en échec, et en semant des clés de test dans les rues de Toulouse (!), Nicolas a ainsi pu mesurer la validité de sa solution.
Il a ensuite pu s’appuyer sur un FabLab, un de ces ateliers associatifs où du matériel industriel est mis à disposition en location afin de faciliter l’accès à ces machines par les petits entrepreneurs, pour aboutir à un premier résultat significatif : les Keys Mag.Net.
Je tiens à remercier Nicolas pour m’avoir fait découvrir cette philosophie de travail.

Le samedi ré-attaquait doucement (après une soirée digne de ce nom…) et c’est Christophe Thibaut qui hérita de la lourde responsabilité de nous réveiller. Ce qu’il fit avec talent dans sa conférence : Vingt fois sur le métier.
Dans cette keynote d’ouverture, Christophe nous fait une synthèse de ce qu’il a pu observer lors de ces vingt dernières années dans le monde du développement logiciel. Une observation qui se rapproche fortement de ce que l’on retrouve dans le mouvement Software Craftsmanship, à savoir que l’Agilité apporte de bonnes choses à nos projets, notamment en terme de communication, de collaboration, d’itération, etc… mais que l’on oublie trop souvent l’une de ses valeurs qui est primordiale : l’excellence opérationnelle ou faire du travail de qualité.
Et pour cela, pas de miracle, l’équipe doit passer par de l’apprentissage, de l’entraînement, de la collaboration et surtout doit prendre le temps de faire les choses qui lui paraissent indispensables à la qualité du code et notamment les tests et ainsi éviter la spirale du “On a pas le temps d’écrire des tests, avec tous ces bugs à corriger !”.

Suite à cet agréable réveil, la matinée se poursuivit avec un Coding Dojo en mode cosy animé par Michael Borde. Je connaissais le Coding Dojo mais je ne l’avais jamais pratiqué sous forme de ping-pong TDD.
Les prérequis sont peu nombreux : 1 vidéo projecteur, 1 ordi portable, 2 claviers, 1 petit jeu sympa à développer et des participants enthousiastes.
Le principe est simple :
- les participants choisissent un kata et un binôme s’installent derrière l’ordinateur
- le premier développeur code un peu de plomberie pour mettre en place le jeu et écrit un premier test qui est rouge si tout va bien
- son partenaire prend sa place derrière le clavier et une autre personne complète le binôme
- le développeur au clavier déroule les deux dernières phases du cycle de TDD : faire passer le test au vert et faire un peu de refactoring, accompagné et aidé par toute l’assemblée bien sûr
- il écrit ensuite un nouveau test qui est rouge et on continue comme ça pendant 2h.
J’ai vraiment passé un bon moment et c’est à refaire au plus vite !

Je n’ai pas le temps de détailler toutes les sessions auxquelles j’ai assistées, ni celles auxquelles je n’ai pas assistées, mais elles furent toutes pour moi des moments d’apprentissage et d’échange précieuses. Je citerais entre autres :
- Refactor legacy, même pas peur ! de Rémy Sanlaville et Johan Martinsson qui m’ont fait découvrir les tests temporaires pour refactoring et des outils comme Approvals
- Software Craftsmanship d’Antoine Vernois que j’avais déjà vu à Clermont-Ferrand en 2013
- Qui veux voyager loin ménage sa monture de Guillaume Vincent qui m’a paru être quelqu’un de très à l’écoute aussi bien de son équipe que de ce qui peut l’aider à avance mieux

Je remercie encore une fois les organisateurs de cet événement, leurs sponsors et les speakers qui on fait de cet événement, un moment riche en partage qui fait du bien au moral.

Commenter et partager

  • page sur

Pierre PIRONIN

J’ai créé ce blog pour parler de ce qui se passe autour de moi dans le domaine du génie logiciel.
J’exposerai mes devs, mes idées, mes lectures, les faits qui m’intéressent et les événements auxquels je participe.

Bonne lecture !


Artisan développeur


Auvergne, France