Voilà déjà 3 mois que nous nous sommes lancés dans l'Happyculture et ils sont passés très vite ! L'un des objectifs fixés était de prendre le temps d'expérimenter et aujourd'hui en a été une des premières mises en œuvre. Nous avons profité de la montée de Guillaume pour nous réunir tous les trois dans un espace de co-working.
Programme de la journée : Nicolas nous fait un petit tour d'horizon de Symfony pour démarrer en douceur puis Guillaume anime un dojo sur les tests unitaires.
Je ne détaillerai pas les discussions que nous avons eu sur Symfony, elles tournaient autour de ce l'outil, de son organisation etc. La partie la plus intéressante a été l'expérimentation autour des tests qui a suivi.
J'avais déjà jeté un oeil à la thématique des tests unitaires mais ne m'étais jamais retrouvé devant un clavier à devoir les faire virer au vert. Le plan de bataille était plus où moins inspiré de celui du Global Day of Code Retreat de Marseille auquel Guillaume a participé en décembre 2013 (et pour lequel Happyculture était sponsor ! \o/). Pour vous faire une idée plus précise de ce à quoi cela ressemble vous pouvez lire le plan d'une journée de Code Retreat.
Pour cet atelier, la thématique était la suivante : "mettons en place des tests permettant d'identifier une main gagnante au poker" (merci Guillaume pour le sujet ;)). Nous avons commencé par découvrir l'environnement préparé ainsi que les outils. Atoum fût nommé grand gagnant pour gérer les suites de tests plutôt que PHPUnit (Pourquoi Atoum ? Et si nous consommions français pour changer !). Une fois les présentations faites, nous voilà lancés. Les exercices limités à 45 minutes se sont enchaînés où à chaque fois le code a été jeté, le but de l'exercice étant de sortir de sa zone de confort pour lâcher prise sur le besoin de livrer quelque chose de fini et le mieux raffiné possible. Plusieurs formes d'exercices sont alternées mais grosso modo vous passez du rôle qui écrit un test qui doit échouer à celui qui doit écrire le code qui fait passer le test au vert. Plein de questions vous arrivent donc à l'esprit car vous cherchez à faire du mieux possible tout de suite au lieu d'itérer. Le fait d'être en binôme oblige à réfléchir à voix haute et à échanger (et parfois trop, ce qui fait qu'à la fin des 45 min vous pouvez être un peu frustré !).
La journée passe bien vite lorsque l'on explore de nouvelles contrées, la testabilité est un sujet qui trotte dans un coin de notre tête et que nous prévoyons de creuser un peu plus. Dans tous les cas, je vous recommande de participer à un Global Day of Code Retreat si vous voulez vous évader et vivre une bonne expérience le temps d'une journée.
Les objectifs de partager et d'expérimenter ensemble ont été une réussite , nous allons tenter de renouveler le sujet très bientôt.