“Code is empathy”

“Et pourtant, ça partait d’une bonne intention…”

C’est ce que j’ai dû dire lors des trois derniers anniversaires de ma fille pour me faire pardonner de la tête du gâteau.

Mathilda réclame chaque année un gâteau au chocolat. Mais rose. Un gâteau rose au chocolat. D’accord.

Challenge accepted. Voici mon plan en 6 étapes.

Étape 1 : Architecture

D’abord, je schématise ma pièce de pâtisserie : j’imagine deux disques de génoise, coupés dans l’épaisseur et fourrés de mousse au chocolat. Le plus petit ira sur le plus grand et je couvrirai le tout d’une pâte à sucre rose bonbon. Je planterai ensuite quelques décorations inspirées des plus belles créations Pinterest (mini guirlande de fanions, nœuds et rubans en massepain, figurines de lapin coiffés de mini chapeaux en papiers).

C’est parfait. Mathilda sera folle de joie, les invités seront épatés.

Étape 2 : Étude de faisabilité

Après consultation de la recette de la génoise et l’aveu de mon absence totale de technique du massage thaïlandais de la pâte à sucre, je dois revoir mes ambitions à la baisse. J’opte pour le gâteau au yaourt, beaucoup moins casse-gueule bien qu’un peu plus étouffe-chrétien, et le glaçage du pauvre renseigné par Marmiton. Je pourrais sous-traiter la réalisation du gâteau d’anniversaire de Mathilda, mais je refuse. Orgueil, quand tu nous tiens.

Étape 3 : Développement

Je me débrouille pas mal pour couper les deux disques de gâteau dans leur épaisseur, ce qui n’était pas gagné. Par manque de temps et par facilité, j’ai remplacé la mousse au chocolat maison par de la pâte à tartiner. J’ai pris de la bio, histoire d’un peu moins culpabiliser. Au bout de trois heures de pâtisserie, ma cuisine ressemble à un champ de bataille et j’ai sali la moitié de mes ustensiles de cuisine, mais hormis ces dommages collatéraux, je suis plutôt contente du résultat.

Étape 4 : Code-Review.

“T’en penses quoi?” demandé-je fébrilement à David.

“C’est pas mal, chou” parvient-il à articuler.

Ragaillardie par ce retour ostensiblement honnête et objectif, je m’attaque à la décoration du gâteau.

Étape 5 : Front-End

Je prépare mon glaçage. “Battre un blanc d’œuf avec 250 g de sucre impalpable”. QUOI? Tout ça? Ils doivent se tromper quelque part, c’est pas possible. Je décide de mettre un peu plus de blanc d’œuf, puis encore un peu de sucre, puis… Du coup, je mets combien de gouttes de colorant rouge pour que ça devienne rose? Et au fait, comment on utilise une poche à douille sans bavure? Les émissions de TopChef nous auraient donc menti! Je n’ai pas eu le temps d’acheter les petits lapins Schleich. Tant pis. Ce sera moins joli. De toutes façons, ça coûte cher ces machins-là.

Étape 6 : Livraison

A l’heure du goûter, je dépose devant Mathilda un gâteau : au chocolat, certes, rose, certes, mais pas aussi pimpant que je l’avais initialement prévu. Et pas aussi féerique qu’elle l’avait elle-même imaginé. La guirlande de fanions fait son petit effet, mais gêne les photographes qui veulent immortaliser l’instant, et mes invités osent à peine goûter ma création pâtissière.

Conclusion : passer des heures sur Pinterest pour trouver l’inspiration, c’est bien ; avoir un plan, c’est certainement important ; mais si la réalisation ne suit pas, les efforts préalables ne servent à rien. Un gâteau, ça doit être appétissant.

Aussi saugrenu que cela puisse paraître, cette fable du gâteau d’anniversaire peut aussi s’appliquer à l’implémentation de l’intelligence artificielle dans les entreprises.

La virtuosité de plans architecturaux, le génie d’un algorithme ou la précision d’un modèle ne servent à rien s’ils ne sont pas implémentés correctement. Le code est décisif. Et empathique.

En novembre dernier, EURA NOVA a travaillé sur un projet marketing pour les pharmacies. Il s’agissait de fournir un Proof of Concept (ou preuve de faisabilité) dans un délai très court afin de montrer à notre client le potentiel de ses données lorsqu’elles sont traitées avec des techniques de machine learning. A la fin du premier sprint, les data scientists assignés au projet présentent les premiers résultats du modèle. Pris par l’ardeur de leurs récentes trouvailles et impatients de connaître l’avis du client, ils zappent l’étape “front-end” et montrent une interface trop technique, voire hermétique. Le client est déçu.

Céline, développeuse front-end chez EURA NOVA, me raconte : “C’était pas très joli, je dois bien le dire. Ils m’ont alors confié le développement de l’interface : j’ai fait une jolie interface, compréhensible pour l’utilisateur finale, avec des couleurs, de belles lignes et de meilleurs graphiques. Derrière, rien n’avait changé : c’était toujours les mêmes données et les mêmes modèles. Seule la présentation avait changé et prenait vraiment en compte l’expérience de l’utilisateur. Le client a adoré!”

Le code est le langage qui permet à l’homme de donner des instructions à la machine. Pour autant, le développeur code pour quelqu’un.

Pour celui qui a dessiné une architecture ou défini un modèle à l’origine d’une application.

Pour celui qui relira son code et lui donnera un retour honnête et objectif.

Pour celui qui utilisera l’application, face à son écran d’ordinateur.

Pour celui qui bénéficiera (ou au contraire pâtira) de l’effet de l’application.

“Code is empathy”.