Mon passé d’informaticien a récemment refait surface, dans une conversation sur ce qui fait ou ne fait pas un bon programmeur (qu’on appelle plutôt développeur dans le jargon).
Certains pensent qu’un développeur est un développeur et que « pisser la ligne », comme on dit pour désigner cette profession avec quelque mépris, ne nécessite rien d’autre que des compétences techniques. D’autres au contraire disent que le bon développeur est denrée rare et que c’est folie de prétendre faire de la qualité en matière de programmation à bas coût dans des contrées exotiques. Qu’est-ce qui cependant fait la « qualité du code », question qu’on pourrait sans doute poser de façon très similaire à propos de n’importe quelle production?

J’ai usé alors, pour exposer les différents critères qui s’appliquent en informatique, de la métaphore de la poule et l’œuf. Que le lecteur ne croie cependant pas que je l’emmène dans une réflexion sur les origines de la vie. Il s’agit simplement de la poule vue comme fonction productive, alimentée en graines, produisant des œufs.

La qualité de la poule est d’être :

  • Performante : elle produit un grand nombre d’œufs ;
  • Qualitative : ses œufs ont toutes les propriétés nutritives requises ;
  • Efficace : le ratio quantité d’œufs produits sur quantité de graines fournies est important ;
  • Robuste : du grain de mauvaise qualité, fourni même occasionnellement, n’affecte pas durablement la production de la poule (en langage direct, la poule ne meurt pas quand on lui donne à manger des cochonneries)
  • Adaptable : changer la poule d’environnement n’affecte pas ses résultats ni n’empêche ses nouvelles voisines de pondre leurs œufs comme avant ;
  • Simple : un nouvel éleveur pourra facilement prendre en charge au pied levé l’animal.

J’omets des qualités, et plusieurs, mais l’exhaustivité importe peu : qu’il nous suffise de constater que la qualité est quête sans fin et, le plus souvent, compromis entre des priorités ; que la réponse à la question de la qualité dépend en grande partie de la question elle-même : de quoi parle-t-on ? Voire même que la réponse importe moins que la question ou, disons, que la réponse n’est pertinente qu’à la mesure de la pertinence de la question. Et, parlant d’informatique, cela rappelle l’origine du nom de l’école de programmation fondée par Xavier Niel : « 42 ». Référence au roman déjanté de l’anglais Douglas Adams, Le Guide du voyageur galactique. Dans ce roman, un énorme ordinateur est construit pour répondre à, je cite, « la grande question de la vie, de l’univers et de tout le reste ». Au bout d’années et d’années de fonctionnement, la machine finit par cracher sa réponse devant la nuée de ceux qui attendaient la réponse. Laquelle réponse est : « 42 ». Stupéfaction dans les rangs jusqu’à ce que quelqu’un demande quelle est donc cette grande question de la vie, de l’univers et de tout le reste, à quoi la machine répond à nouveau qu’il faudrait là une machine beaucoup plus puissante qu’elle-même.

Quelque fantasque soit ce récit du dialogue entre des humains et une machine, il nous dit justement que creuser la question est plus puissant qu’apporter une réponse. Voire même que notre faim de réponse nous éloigne d’un sain questionnement et que, en entreprise, le désir de solution empêche parfois d’examiner suffisamment, sinon jusqu’au bout, les problèmes.

Article paru sur le site dirigeant.fr