La méthode du canard en plastique, aussi appelé « rubber duck debugging » ou « rubber ducking », consiste à expliquer à un objet inanimé (ici un canard en plastique) un problème de programmation, dans le but d’en trouver les incohérences. Que ce soit un algorithme ou une architecture, l’idée est de l’expliquer méticuleusement et à haute voix.

Cette idée aurait été introduite par le livre The Pragmatic Programmer: From Journeyman to Master de Andrew Hunt et David Thomas, dans lequel un étudiant du nom de Greg Pugh se forçait à expliquer son code ligne par ligne à un canard en plastique dans le but de débugger plus facilement.

Dans quel but ?

Cette méthode qui peut sembler absurde dans un premier temps, se révèlve bénéfique en terme de programmation. Et ce pour plusieurs raisons. En effet, le fait d’expliquer à haute voix ce qu’un code est censé faire et ce qu’il fait réellement, peut soulever des différences apparentes que l’on avait pas pris en compte. C’est la théorie dites de la dissonance cognitive.

Plus généralement, le fait d’exprimer quelque chose à l’oral, change la manière dont on le perçoit. On se force à mettre des mots concrets sur des idées cérébrales abstraites. Ainsi, on peut prendre conscience plus facilement des omissions, des incohérences et des erreurs d’interprétations. Tout cela rien qu’en « s’écoutant parler ».

Finalement, un des bénéfice de cette méthode, et non des moindres, est le fait d’affiner l’analyse du problème énoncé. Effectivement, la répétition amène souvent à une meilleure compréhension. Et ainsi, à un enrichissement du jugement que l’on peut porter sur le sujet.

Ce n’est pas tant le canard en plastique qui est important dans cette méthode. En effet, on pourrait tout à fait expliquer son problème de programmation à un collègue ou à quelqu’un qui ne connaît rien à l’informatique, étant donné que les réactions de l’interlocuteur n’ont aucune importance dans cette approche. Mais le choix de l’objet inanimé reste un plus dans le sens où sa « capacité d’écoute » est illimité et sa patiente indéfinie.

Pour conclure

Cette méthodologie aussi enseignée sous le nom de « parler à une plante verte » à l’université de Sherbrooke, peut s’avérer très utile dans toutes les étapes de conception et d’implémentation de son code.

J’ai moi-même eu un pingouin en plastique qui m’avait été offert par un très cher collègue, qui se reconnaîtra sûrement en lisant ces quelques lignes 😉

Tous à vos canards en plastique !

Il n'y a pas de commentaire pour l'instant.