Vos casseroles sont-elles propres ?

Publié par Jean-Francois Gilbert le dimanche 30 novembre 2014 à 00:00

Source: https://www.flickr.com/photos/nicholassmale

Lors de son son keynote présenté à l'Agile Tour de Québec le 5 novembre dernier, Michael Feathers comparait le code à une cuisine. Avant de préparer de nouveaux plats, il va de soi de nettoyer les ustensiles, poêles et casseroles. Idéalement, on le fait au fur et à mesure qu'on les salie. De cette façon, on n'accumule pas une montagne de vaisselle et la cuisine reste relativement propre en tout temps. 

C'est une analogie intéressante mais le principe n'est pas toujours évident à appliquer dans notre code. Ce n'est pas qu'on ne veuille pas nettoyer au fur et à mesure, mais plutôt qu'on ne réalise pas toujours que le code est sale. L'idée même de code propre ou sale varie d'un programmeur à l'autre. Oui il y a de nombreux livres et articles publiés à ce sujet. Cependant, le pourcentage de développeurs qui ont lû sur le sujet ou qui prennent le temps d'appliquer les bonnes pratiques demeure trop bas. 

Encouragez le réusinage du code et discutez des bienfaits dans votre équipe. Décidez ensemble de ce qui est acceptable et ce qui ne l'est pas, mais visez haut en termes de qualité. Si votre cuisine est sale, peut-être serait-il temps d'y remédier. 

Il y a certainement plus d'une façon de sensibiliser vos collègues à ne pas la salir davantage et à commencer à la nettoyer. Une piste de solution possible serait de créer une "check list" des choses à vérifier une fois que le code est terminé. Avant d'archiver du code, un développeur devrait consulter la liste et s'assurer que le code rencontre les standards de qualité établis par VOTRE équipe. 

Je vous suggère de commencer modestement avec quelques éléments de base en expliquant bien la raison de leur présence sur la liste. Bonifiez-là à mesure que les bonnes pratiques sont ancrées dans les mœurs de votre équipe. 

Alors, dans votre cuisine, les casseroles sont-elles propres ?

blog comments powered by Disqus

0 Comments:

Post a comment

Comments have been closed for this post.