Communiquer avec un développeur

Cette image circule sur les réseaux et dans la plupart des cas elle fait rigoler. Mais, peut-on aller plus loin dans l’analogie avec la liste de courses ?

Pour le client (ici la maman) cela semble clair, elle voulait une bouteille de lait et six œufs.

L’informaticien a bien compris que le client veut du lait et il fait une fonction qui retourne du lait. Le nombre retourné dépendant d’une condition externe qui est la présence des œufs. Normalement on demande à un développeur de coder une chose à la fois, ce résultat est donc logique.

Le besoin est mal spécifié et le chef de projet ou le scrum master (qui n’existent pas dans le cas présent) n’ont pas fait leur travail (clarifier, reformuler, …). Si bien qu’on aurait aussi pu livrer 6 œufs et pas de lait (S’il y a des œufs prend en 6 et ne prend pas de lait).

Toi l’informaticien, tu dis que c’est la faute du client…

Vous me direz que dans le cas présent 99,99% des enfants auraient compris la demande de la maman (suis-je naïf ? ce n’est pas prouvé scientifiquement)… disons la plupart, sinon il y aurait peu de moqueurs sur les réseaux sociaux.

Je dois avoir des enfants dans les 0,01% (normal c’est des enfants d’informaticien), les miens auraient probablement rapporté : 1 bouteille de lait, 3 œufs et 1 kg de farine… Je sais, c’est des génies, ils ont compris que maman voulait faire des crêpes (ils aiment les crêpes) et qu’elle avait oublié la farine. Probablement qu’ils vont avoir une désillusion quand on leur dira que « non, ce n’était pas pour faire des crêpes, tu dois faire ce qu’on te demande ni plus ni moins ».

Autre cas courant : l’enfant ramène : 1 bouteille de lait, 2 œufs et un paquet de gâteaux. La maman demande : « mais pourquoi tu n’as pas ramené 6 œufs ? », la sale gosse répond : « sinon je n’avais pas assez d’argent pour payer les gâteaux ».

Conclusion(s)

  • Il y a plusieurs types d’informaticiens.
  • Les clients ne spécifient pas toujours correctement leur besoin.
  • Le mieux est l’ennemi du bien : il ne faut pas supposer un besoin et faire plus que ce qui est requis.
  • On peut avoir compris un besoin et faire n’importe quoi, même en respectant le budget.