Le secrétaire de Fernand

Dépassez votre goût, ne le défendez pas

Dépassez votre goût, ne le défendez pas

Faire du logiciel, c'est trois activités distinctes : comprendre une réalité, concevoir une machine générale, et encoder l'une dans l'autre. Le goût n'est requis par aucune, ce qui est précisément pourquoi l'ego s'y cache.

Idée centrale : Faire du logiciel, c'est trois activités distinctes : comprendre une réalité, concevoir une machine générale, et encoder la première dans la seconde. Chacune répond de quelque chose d'extérieur à vous. Le goût, qui ne répond que de vous, n'est requis par aucune des trois. C'est le nom qu'on donne aux trois tant qu'on n'a pas appris à les distinguer.

Temps de lecture : ~6 min

Tout le monde a cessé de dire élégant

Il y a quelques années, un bon code était « élégant ». Aujourd'hui il a du « goût ». Le mot a changé, pas le geste. Les deux empruntent un vocabulaire esthétique, la langue de l'effet qu'une chose produit sur celui qui la regarde, et s'en servent pour trancher une question qui n'a rien d'esthétique : ce logiciel est-il bon. Les partisans sérieux objecteront que le goût n'a jamais concerné l'esthétique. Gardez cette objection en tête ; elle se révélera la chose la plus éclairante qu'ils disent, et j'y reviendrai.

Je ne surplombe pas le problème. J'ai passé des années à me fier à mon goût, et je m'y surprends encore. Lisez donc ceci comme la carte d'un lieu que j'habite, pas d'un lieu que je désignerais d'en haut.

Les trois choses que vous faites réellement

Voici le geste qui dissout la confusion. Quand vous faites du logiciel, vous ne faites pas une seule chose. Vous en faites trois, et elles diffèrent par nature.

Vous comprenez une réalité : comment le métier fonctionne vraiment, ce que font réellement les gens pour qui vous construisez, les exceptions et les contournements que le processus officiel dissimule. Celle-ci n'est même pas de l'ingénierie. Elle tient plutôt du travail de terrain. Vous menez l'enquête ; vous ne pouvez pas la deviner depuis votre chaise.

Vous concevez une machine générale : l'art, indépendant du domaine, de faire tenir un logiciel. Concurrence, gestion des erreurs, frontières de modules, ossature d'architecture, les motifs qui empêchent un système de s'effondrer sous son propre poids. Cette partie est la même que vous construisiez un CRM ou un jeu, et elle est en grande partie résolue. Les outils existent. Ce qui manque, c'est la rigueur, pas le mystère.

Et vous encodez la première dans la seconde : vous traduisez votre compréhension de la réalité dans cette machine, en exprimant les vérités du domaine sous forme de types, d'états, de frontières et d'invariants.

Trois activités. L'une n'est même pas de l'ingénierie. Aucune n'est la même compétence. Et vous faites les trois dans la même heure, et c'est précisément là que les ennuis commencent.

Regardez le goût ne jamais apparaître

Parcourez les trois et cherchez l'endroit où le goût décide.

Comprendre la réalité répond de la réalité. Vous avez raison ou tort sur la façon dont l'entrepôt réconcilie vraiment ses stocks, et c'est l'entrepôt, pas votre sensibilité, qui tranche. Concevoir la machine générale répond de la correction et des conséquences : va-t-elle se bloquer, va-t-elle fuir, la personne suivante saura-t-elle la suivre. L'encodage répond de la fidélité : le code dit-il ce que le modèle veut dire. Même quand plusieurs modèles collent à la réalité et que le choix entre eux ressemble à du goût, ce qui devrait trancher, c'est lequel sert les gens en aval, pas lequel vous préférez.

Chacune des trois rend des comptes à quelque chose d'extérieur à vous. Le goût est la seule chose qui ne répond que de vous. Il n'a sa place à aucune des trois tables. Ce n'est pas que le goût soit mauvais ; c'est que lorsque vous nommez les choses que vous faites réellement, le goût n'en fait pas partie.

Alors pourquoi tout le monde se saisit du mot

Parce que vous faites les trois à la fois, et que vous les ressentez comme une seule.

En un seul après-midi, vous enquêtez sur le domaine, décidez comment le modéliser, l'encodez, et maintenez la plomberie en bon état, et le tout arrive comme une compétence indifférenciée : le sentiment que ceci est juste et cela faux. Le sentiment est réel. Mais « goût » n'est que le nom des trois activités avant que vous ne les ayez séparées. C'est le brouillard, pas une quatrième compétence cachée dessous.

Ce qui veut dire que dépasser votre goût ne consiste pas à acquérir une sensibilité plus rare. C'est de la décomposition. La prochaine fois que quelque chose vous semble de travers, le geste est de demander de laquelle des trois il s'agit. Ai-je mal compris la réalité ? Est-ce un problème de métier dont la réponse est connue ? Ai-je mal encodé le modèle ? À l'instant où vous pouvez le dire, le goût s'est dissous dans l'une des trois choses réelles qu'il remplaçait.

Le goût est emprunté, et c'est le stade larvaire

Il est utile de voir d'où vient le sentiment. Le plus souvent, il est emprunté. Le vérificateur de types qui a refusé votre union bâclée, le linter qui a signalé votre branche morte : chacun est une pratique nommée que quelqu'un a élaborée et coulée dans un outil. Utilisez de bons outils pendant des années et vous absorbez la forme de ces pratiques sans en lire les noms. Alors quand vous « sentez juste » que quelque chose cloche, vous reconnaissez en général un motif qui a déjà un nom, dans un livre que vous n'avez pas ouvert.

Voilà pourquoi le goût est, au mieux, un pré-apprentissage. C'est le stade pré-verbal d'une compétence : l'intuition que vous avez avant le nom, avant la structure, avant de pouvoir dire pourquoi. Je le dis en tant que quelqu'un qui est arrivé à la moitié de ses propres idées par instinct et n'en a trouvé les noms justes qu'en les écrivant. Le travail consiste à convertir sans cesse : le sentiment en nom, le nom en structure, la structure en quelque chose que vous pourriez défendre devant une personne en désaccord. Je n'ai pas fini. Personne n'a fini.

Il ne décide que ce qui n'a pas d'importance

Le goût paraît sans enjeu dès qu'on le regarde en face, parce qu'il n'a le droit de choisir que lorsque rien d'autre ne le fait. Tout choix qui a des conséquences est tranché par ces conséquences. Cette frontière va-t-elle fuir, ce modèle survivra-t-il à la prochaine exigence, la personne suivante le comprendra-t-elle. Ces questions ont des réponses, et la réalité les fournit. Le goût ne départage que les égalités par ailleurs parfaites, c'est-à-dire les choix qui n'ont pas d'importance. « Le goût décide » et « ça n'a pas d'importance » se révèlent être presque la même phrase.

L'interface est le cas le plus clair, parce que c'est celui dont on débat le plus. La couche purement visuelle, le bleu exact, l'humeur de la police, c'est du goût, et ça ne change presque rien. La partie qui compte vraiment, que la chose soit utilisable, apprenable, et amène l'utilisateur à son but, n'est pas du goût du tout. Elle a ses heuristiques, ses études, ses arbitrages. C'est un problème d'ingénierie sous un manteau de designer.

Pourquoi l'ego s'y installe

Donc si le goût est emprunté, larvaire, et décisif seulement quand rien n'est en jeu, pourquoi des gens compétents enroulent-ils leur identité autour de lui ?

Parce que le goût est le seul recoin du métier où l'on ne peut pas vous donner tort.

Vous pouvez vous tromper sur un domaine. Vous pouvez vous tromper sur une frontière, un invariant, un mode de défaillance, un modèle. La réalité, ou la production, ou l'ingénieur suivant finira par vous le dire. Le goût est le seul endroit qui ne le fera jamais. On ne discute pas une préférence ; elle est infalsifiable par construction. Alors l'ego, qui veut plus que presque tout être à l'abri de l'erreur, fait la chose rationnelle : il fuit les trois activités qui rendent des comptes, où l'échec est public, et s'installe sur la seule colline où il ne pourra jamais être pris en défaut. Les grands discours sur le goût, c'est souvent ça. Pas de l'expertise. Le bruit de quelqu'un qui mise son identité sur la seule chose du métier qu'on ne peut pas vérifier.

Ce qui donne la distinction qui vaut la peine d'être gardée. Le problème n'a jamais été d'avoir du goût. Tout le monde en a. Le problème, c'est le goût qui refuse de se décomposer : l'instinct figé en titre de gloire au lieu d'être résolu en l'une des trois choses réelles. L'échec n'est pas un type de personne. C'est le choix d'arrêter de défaire le brouillard.

Ce que les gens cherchent vraiment

Voici la part généreuse, et la vraie. Les gens qui parlent de goût cherchent quelque chose qui existe. À une époque où une machine peut produire à l'infini du code plausible, une compétence humaine rare sépare nettement le bon du médiocre. Ils la sentent. Ils ont raison qu'elle est là. Ils l'ont seulement mal nommée.

Les défenseurs qu'il faut prendre au sérieux attendaient ce moment, et ils ont une vraie objection : la version sérieuse de l'argument du goût ne porte pas sur la nuance d'un bouton. Elle dit que le goût est un jugement affiné et reproductible dans l'incertitude, la capacité de voir ce qui est bon avant tout le monde et d'avoir raison quand les autres rattrapent leur retard. Cela mérite une réponse, pas un homme de paille.

Alors regardez ce que cela décrit. « Avoir raison quand les autres rattrapent » est une affirmation de falsifiabilité : le jugement répond d'une réalité extérieure à la personne, une réalité qui le confirmera ou le réfutera. Mais à l'instant où un jugement répond d'une réalité extérieure à vous, il a cessé d'être du goût au seul sens qui rendait le mot utile, et il est devenu de la compréhension. La version forte du goût n'est pas une défense du goût. C'est de la compréhension, portant le mot parce qu'il sonne comme un don de naissance plutôt que comme un travail que vous êtes allé faire. Et la part qui ne répond de rien d'extérieur à vous, la pure préférence, c'est la part qu'on a déjà prise à ne départager que des égalités sans importance. Poussé dans sa version la plus forte, le goût se scinde : là où il est bon, c'est de la compréhension ; là où il n'est que du goût, il est sans conséquence.

La version la plus profonde de la différence, c'est la direction du regard. Le goût regarde au-dedans, vers votre propre sensibilité. La compréhension regarde au-dehors, vers un monde que vous devez aller trouver et dont vous devez construire une théorie opérante. L'un se consulte, l'autre se découvre, et c'est pourquoi aucun outil ne vous la tendra jamais : c'est la seule des trois activités qui n'est même pas de l'ingénierie.

Une exception honnête. Une partie de cette compréhension ne se décompose jamais entièrement en règles ; il reste un résidu tacite que même les experts ne savent pas mettre en mots. Mais ce résidu pointe encore vers l'extérieur, vers la réalité, au service des autres. C'est de la compréhension qui n'a pas fini de parler, pas de la préférence déguisée en autorité. Même la part du « goût » qui est réelle se révèle être de la compréhension sous un manteau emprunté.

La pratique

Si vous voulez une seule chose à faire de tout ceci, elle est petite et répétable. Traitez chaque « ça cloche » comme une dette. Trouvez à laquelle des trois elle appartient, donnez-lui un nom, rendez-la assez explicite pour la défendre ou être corrigé. C'est le geste, et c'est le même que je ne cesse de défendre pour le code lui-même : ne laissez pas implicite ce qui compte, encodez-le. C'est cette discipline retournée vers l'intérieur, vers votre propre savoir. Encodez votre goût ; ne lui faites pas confiance.

Une porte, pas une pièce

Rien de tout cela n'est une raison d'avoir honte du sentiment. C'est de là que tout le monde part, et les meilleurs ingénieurs que je connais ne le perdent jamais : un sens vif et inquiet que quelque chose ne va pas, bien avant de pouvoir le prouver. Cette intuition est précieuse. C'est le début de chaque bonne décision qu'ils prennent.

Mais c'est le début. C'est une porte, pas une pièce que l'on meuble et où l'on s'installe. Le travail consiste à la franchir encore et encore, en transformant le sentiment en la bonne des trois choses réelles, au nom des gens qui ne verront jamais votre goût et n'en ont jamais eu besoin. Défendez votre goût et vous vous arrêtez sur le seuil. Décomposez-le, encore et encore, et vous avez le droit d'entrer.

Une remarque après lecture ?

Si vous souhaitez envoyer un mot au sujet de cet article, vous pouvez écrire ici. Je partage ici parce que le sujet m’intéresse et que je veux apprendre des autres. Merci pour vos retours, surtout lorsqu’ils sont formulés avec soin.