Cela peut paraître idiot, non ? Un canard en plastique ? C’est un jouet de bain que vos enfants utilisent pour passer le temps dans la baignoire. Il n’a pas de mains, et est fait de caoutchouc. Qu’est-ce qu’un canard en caoutchouc a à voir avec la programmation ? Et comment peut-il m’enseigner quoi que ce soit ?
La programmation est dure. Personne ne dira le contraire. Lorsque vous écrivez un programme, ce dernier peut vite se retrouver avec des millions de lignes de code, et vous allez faire des erreurs. Parfois, celles-ci sont importantes, parfois minuscules, mais elles prennent généralement toutes du temps et de l’énergie pour les résoudre.
Parfois, vous avez besoin d’aide. Parfois, vous avez besoin de parler … à un canard en plastique.
Bienvenue au canard
J’ai d’abord appris la méthode du canard en plastique, appelée également méthode du canard en caoutchouc, lors de mes débuts dans le développement. L’idée est d’utiliser quelque chose, que ce soit un canard en plastique, votre hamster, ou la peluche que vous avez gagnés à la foire du coin, comme une caisse de résonance pour identifier un problème, n’est pas nouvelle. Presque tous les milieux professionnels ont recours à ce procédé.
C’est une méthode étonnamment simple, où vous allez expliquer verbalement le problème que vous souhaitez résoudre. Celle-ci peut souvent vous donner l’inspiration.
Bien sûr, vous pouvez obtenir de l’aide d’un autre développeur, et je le fais souvent, mais cela leur prend un temps précieux. Si je devais mettre un euro chaque fois que j’ai pesté et maudit mon programme parce qu’il ne fonctionnait pas, et que quelqu’un me dit quelque chose comme « tu as oublié une virgule, un point-virgule, une référence, etc. », en moins d’une minute, je serais pauvre. Tout ça pour une petite chose…
La chose importante à savoir sur l’utilisation d’un canard en plastique est qu’il ne prend pas le temps de quelqu’un d’autre. Enfin, il ne vous juge pas, et il est très patient pendant que vous travaillez à la résolution de problèmes.
Il y a une science derrière tout ça
L’ouvrage The Pragmatic Programmer : From Journeyman to Master publié en 1999 par Andrew Hunt et David Thomas, semble être le premier à mentionner la méthode du canard en caoutchouc sous ce nom (rubber ducking dans la langue de Shakespeare).
Il y a quelque chose de magique à expliquer vos problèmes à haute voix, même à quelque chose d’inanimé comme un canard en caoutchouc. En mettant la magie de côté, il y a même une science derrière cette méthode — il suffit de lire cet article en anglais pour vous en convaincre. Le fait de parler à haute voix vous permet d’être plus précis dans vos réflexions. Après tout, le canard en plastique ne sait pas ce que vous savez.
Quand vous lisez ligne par ligne votre code, en expliquant chaque partie au canard en caoutchouc, vous apportez davantage d’attention aux petits détails. Souvent, au cours de ce processus, vous voyez un problème que vous avez manqué en écrivant votre programme en une seule phrase. C’est très semblable à l’idée de comprendre un sujet avant d’essayer de l’enseigner à quelqu’un d’autre.
Qu’est-ce qu’un canard en plastique m’a appris
Voici quelques-unes des leçons importantes que j’ai appris en utilisant mon canard en plastique pendant les phases de débogage.
- J’ai appris à être plus clair et concis quand je décris un problème
- J’ai appris à être plus prudent lorsque je code, de sorte que j’évite de demander inutilement de l’aide
- J’ai appris à faire plus d’efforts pour résoudre les problèmes avant de déranger mes collègues
- Et enfin, j’ai appris à être plus patient quand quelqu’un me sollicite (en rappelant les bienfaits du canard en plastique)
Donc, sortez et trouvez votre propre canard en plastique qui reflète votre personnalité. Vous en trouverez des dizaines sur Amazon. Je lui parle, pose des questions, lui explique mes problèmes à haute voix, et je n’embête pas mes collègues aussi souvent que par le passé.
Et vous, l’avez-vous adopté ?