Retour du Code Retreat du 29 Septembre 2012

Développer, Les communautés

Samedi 29 Septembre 2012, 8:30 AM, un groupe de personnes se réunit devant le 156 boulevard Haussman. Non, il ne s’agit pas d’une réunion clandestine :). Toutes ces personnes sont là pour participer à une journée de code retreat.

Le principe du code retreat

Ouvert à tous et toutes, le code retreat a été conçu par les développeurs pour les développeurs. Basés sur les principes des Coding Dojo, un code retreat dure quant à lui une journée entière. C’est un événement lors duquel le pair-programming, le design de code, le « beau » code sont mis en avant. Un code retreat peut aussi être l’occasion de découvrir d’autres langages, puisqu’aucune contrainte de langage n’est imposée. Lors de ce code retreat, nous avons codé en javascript, scala, erlang, ruby, haskell et smalltalk.

Un exercice de code est choisi par les animateurs, le plus connu étant « Le Jeu de la Vie ». Tout au long de la journée, les participants en pair-programming codent l’exercice lors de plusieurs itérations de 45 minutes chacune. Chaque itération est suivie d’une rétrospective commune de 15 minutes et d’une petite pause de 5 minutes.

Après chaque itération, les participants sont encouragés à changer de binôme. De plus, le code produit lors de la précédente itération est supprimé afin de repartir à zéro à la nouvelle itération.

En général entre 5 et 7 itérations sont faites dans la journée, avant de terminer par une rétrospective globale.

L’arrivée – les croissants

Les organisateurs, Jean-Laurent De Morlhon et Laurent Bossavit, nous ont accueilli dès 8h30 puis convié à un petit déjeuner très équilibré composé de croissants, pains au chocolats et autres viennoiseries bien nécessaires pour affronter cette matinée.

Après nous avoir expliqué les règles du jeu, Jean-Laurent et Laurent, nous ont invité à  « ouvrir notre esprit », autrement dit :

  • Essayez des choses que vous n’osez pas faire dans le cadre du travail, mêmes si elles ne marchent pas au final. Explorez, tentez, et osez !
  • Variez les binômes,
  • Ne soyez pas timide et osez d’autres langages.

Les premières itérations

Voici les quelques règles de Simple Design que nous avons essayer de mettre en oeuvre lors des différentes itérations:

  • Exécuter d’abord tous les tests et vérifier qu’ils passent,
  • DRY – Don’t Repeat Yourself,
  • Reveal Intent : montrer ses intentions (nommage, 1 méthode = 1 fonctionnalité,…),
  • Faire des méthodes et classes de petite taille.

Pause déjeuner

La pause déjeuner a été l’occasion de nous connaître un peu plus, de partager nos expériences dans nos missions, de revenir sur les algorithmes/solutions trouvés pour implémenter « Le Jeu de la Vie », ou encore de regarder des vidéos geek.

Pizzas et Pause Déjeuner

L’après-midi

Pour les itérations de l’après-midi, Laurent et Jean-Laurent nous ont proposé de rajouter des contraintes : nous avons notamment essayé la technique TDD Ping-Pong à l’aide du plugin eclipse PairHero, rendant au passage le binômage un peu plus ludique.

Quelques exemples de la programmation par contrainte :
  • n’utiliser que des Objets ou que des Types Primitifs,
  • interdiction d’utiliser la souris ou le touch-pad,
  • interdiction de parler avec son binôme,
  • pas de if,
  • pas de while/for,
  • pas de return.
Pour anecdote, un binôme a décidé s’imposer la contrainte de ne pas se parler durant la dernière itération. Le début a bien fonctionné, mais au bout d’un moment les désaccords sont apparus sur la marche à suivre sur un des algorithmes à coder ! Le silence a été brièvement brisé afin de repartir sur de bonnes bases. Au final, le binôme a presque fini l’exercice ! L’expérience s’est avérée être très drôle pour le binôme et surtout pour celui d’en face assistant à ce spectacle où aucun sourire ne transparaissait !!

La leçon à retenir: il faut bien entendu communiquer, mais il est également très important d’aller à l’essentiel.

Rétrospective de la journée

Pour conclure cette journée, chaque participant a répondu aux questions suivantes:

  • Qu’avez-vous appris aujourd’hui ?
  • Qu’est-ce qui vous a surpris aujourd’hui ?
  • Qu’allez-vous appliquer dès lundi au travail ?

Rétrospective de la journée

Conclusions

Un code retreat est un très bon moyen d’apprendre à coder proprement, de se confronter à d’autres approches, façon de penser via le pair-programming. C’est aussi l’occasion de tenter ce que l’on n’ose pas dans nos missions et d’essayer d’autres langages.

N’hésitez pas à participer aux prochains code retreat, quelques soient vos connaissances, votre expérience et vos langages de programmation !

Merci à Jean-Laurent De Morlhon et Laurent Bossavit  pour l’organisation de la journée, et pour leurs remarques pertinentes. Merci aussi à Xebia pour l’hébergement.

 

Tags :

Ludwine Probst est développeuse spécialisée dans les données. Elle intervient régulièrement à des conférences autour de l'analyse et processing de données. Enfin elle s'investie énormément dans la valorisation et la mise en relation des femmes de la tech notamment avec ses rôles au sein de Ladies Who Code.

I'm a Software Engineer based in Paris, working at Red Hat. I've joined the Infinispan Team and I contribute to Infinispan, Vert.x and Spring-Boot projects for my work and for fun! I'm a Duchess France Board member. I share knowledge about Java, Infinispan, Vert.x, Scala, Go, MongoDB or Agile Development through formal presentations (Codemotion, Agile France, MongoDB SF, Google Fest W Paris, Geneva JUG ...) or hands-on workshops (Devoxx, Duchess France). I'm passionate about the community contribution, open-source and drama.

Commentaires

  • @mchataigner dit :

    Hello,

    @nivdul, où est-ce que je peux trouver les prochains coderetreats sur paris. Parce que je n’ai rien trouvé sur le lien que tu as envoyé. Et aussi je suis déçu d’avoir loupé cet event, ça avait l’air sympa (aurais-je raté une news sur le site des duchess ou de xebia? je n’ai rien vu à ce sujet…).

    Merci

  • Jean-Laurent dit :

    En général je les annonces sur mon compte twitter et cela suffit à remplir l’événement : http://twitter.com/morlhon

    A bientôt.

  • Gabriel dit :

    Avoir été en face de du binôme qui ne parlait pas était une expérience très joyeuse! On sentait quand ça allait et quand ça n’allait plus et que l’un des deux avait quelquechose à dire. Je crois que tout le monde s’amusait bien de la situation
    Comme quoi la communication n’est pas que verbale ^^

  • Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée.

    Nom*

    Email

    Website

    19 + dix-huit =

    Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

    En continuant à utiliser le site, vous acceptez l’utilisation des cookies. Plus d’informations

    Les paramètres des cookies sur ce site sont définis sur « accepter les cookies » pour vous offrir la meilleure expérience de navigation possible. Si vous continuez à utiliser ce site sans changer vos paramètres de cookies ou si vous cliquez sur "Accepter" ci-dessous, vous consentez à cela.

    Fermer