The Little Printf

Je suis tombé hier soir via reddit sur ce fantastique compte-rendu d’une conférence de Fred Hébert, « The Little Printf ». C’est beau, c’est poétique, et ça énonce assez joliment des vérités sur les différentes facettes du métier de développeur. Je pourrais citer l’histoire dans son intégralité. Mais voici mes deux extraits favoris.

Quand (chapitre 7), le Petit Printf rencontre un développeur super fier de connaître tous les derniers frameworks à la mode :

— Quels problèmes est-ce que tu résous avec tous ces frameworks ?

— Oh, je m’assure que nous n’utilisons pas quelque chose qui ne va pas avoir du succès, comme ça cette société ne parie pas sur des technologies qui n’ont pas d’avenir. C’est un travail très important, car si tu ne fais pas ça, tu ne pourras trouver personne à embaucher à part des vieux barbus grisonnants en retard, alors que tu veux des fonceurs autonomes qui sont aussi des adopteurs précoces, dit le monsieur.

— C’est amusant, répondit notre ami.

— C’est très difficile ! Dans le monde des startups, si tu veux les meilleurs joueurs, tu dois utiliser les bonnes technologies pour les attirer ! Sinon tu restes coincé avec des retardataires rigides. Personne ne veut être un retardataire rigide.

Le Petit Printf s’exclama : « Non, ce n’est pas ce que je voulais dire », et puis il ajouta « Je trouve ça amusant que les outils sont censés résoudre des problèmes pour nous, mais pour toi, les outils eux-mêmes sont devenus un problème. »

Et pendant que l’homme resta là en silence (sur son nouveau bureau trop cool avec tapis de course), le Petit Printf sauta hors de la pièce.

Chapitre 10, le Petit Printf rencontre un architecte logiciel.

— Ton système est très impressionnant. Est-ce qu’il est rapide ?

— Je ne saurais pas te dire, dit l’architecte. Il devrait, cependant.

— Et comment est le code alors, est-ce qu’il est bon ?

— Je ne saurais pas te dire.

— Est-ce que les utilisateurs en sont contents ?

— Je ne pourrais pas te dire non plus, j’en ai bien peur.

— Mais tu es un architecte logiciel !

— Exactement ! Mais je ne suis pas un développeur. Ce n’est pas l’architecte qui va écrire les modules et les classes, assembler les bibliothèques. L’architecte logiciel est bien trop important pour faire le tour et toucher du code. Mais il parle avec les programmeurs et développeurs, leur pose des questions, leur fournit des conseils. Et si le problème a l’air suffisamment intéressant, l’architecte prend en charge le planning.

— Et pourquoi ça ?

— Parce que nous avons plus d’expérience. Nous en savons plus sur les systèmes et ce qui fonctionne et ce qui ne fonctionne pas. Les développeurs peuvent être une extension de notre savoir pour produire des bons systèmes !

— Mais comment sais-tu si les choses se passent bien sans jamais être impliqué dans le code ?

— Nous faisons confiance aux développeurs.

— Donc vous leur faites confiance pour implémenter vos idées correctement, mais pas assez pour qu’ils trouvent leurs propres idées ?

L’architecte logiciel était visiblement secoué par ce commentaire. « Je suppose que j’ai été un peu déconnecté, admet-il finalement. Le problème est qu’au bout d’un moment, on vous demande tellement de travailler sur des idées que vous n’avez plus de bon moyen de les faire tester ou vérifier. » Il fixa le sol, pensif. «Parfois un architecte logiciel ne fait ni de l’architecture, ni du logiciel, il semblerait.»

Le Petit Printf quitta la pièce, et achevant ainsi sa visite, quitte le bâtiment.

Cette histoire est géniale et vous devriez la lire.