Fais pas ton vexé : j’ai le même profil que le tiens.
Aurélien Regat-Barrel
61

Bon on va passer outre la première partie paternaliste, car tes remarques suivantes sont effectivement intéressantes.

Il y a effectivement un marché pour la tentative de rafistoler du code qui demande à mourir. Ceci dit, quand on a rencontré cette situation, encore, encore, et encore, d’être à la longue, on a le droit de se poser des questions. Il peut être intéressant de se demander si c’est une fatalité ou pas. Il se trouve que ça ne l’est pas, et que la posture que je décris, si elle était plus répandue, éviterait peut être tant de souffrances répétées. Souffrance chez le client, qui ne prend pas un grand plaisir à la situation. Souffrance chez les développeu.r.ses qui se sont cassées les dents dessus. Souffrance chez les utilisateurs enfin : si c’est un logiciel pas vraiment important, effectivement, l’impact est faible. Maintenant si on parle de produits gérants des aspects assez critiques de leurs vies, ça devient assez enquiquinant que notre seul excuse soit «j’avais juste envi de coder, motherfuckers». Les exemples pullulent à ce niveau là. je vais juste citer celui là

Ça dépend ensuite ce qu’on appelle «entrer rapidement dans une base de code». Sur un projet suffisamment gros, personne ne rentre rapidement, au mieux, bricole rapidement des patchs en espérant ne rien casser, tout en introduisant de la complexité accidentelle supplémentaire. Les techniques de reprises de code legacy existent effectivement, mais paradoxalement, elles requièrent aussi une certaine posture : introduire péniblement un golden master de tests, pour ensuite refactorer précautionneusement, tout en continuant à faire avancer le logiciel, ce n’est effectivement pas juste un «laissez moi coder».

Question intéressante : «comment sais-tu que tu es un bon développeur expérimenté». Ce n’est effectivement pas à moi de le dire, surtout que tout le monde n’a pas les mêmes critères. Je pense juste être moins un danger qu’il y a 15 ans, car je peux reprendre, et les autres membres d’arpinum également, mon code même après plusieurs années passés dessus, sans avoir besoin de m’appuyer sur ma mémoire pour me rappeler tous les petits détails, pièges, duplications, bidouilles intelligentes, que j’ai pu introduire. Il y aussi le fait de tendre vers le 0 défaut qui est un bon indice je pense. Le fait également d’être capable de livrer de la valeur, régulièrement, sans ralentir au bout de quelques mois. Est-ce que ceux sont des critères universelles ? Je ne sais pas, mais ceux sont les miens, et j’ai constaté qu’ils sont appréciés chez pas mal de gens.

Quand je débarque dans une équipe, je préfère montrer des exemples plutôt que de pointer du doigt. Si je ne prenais pas le clavier pour m’appliquer mes propres remèdes, je ne serais effectivement qu’un moralisateur soporifique de plus. Cela marche assez bien en définitive. Ceci dit, je sais pertinemment que certaines cultures sont plus toxiques que d’autres, et j’ai tendance à les fuir. Il n’y a pas de remède quand il n’y pas de conscience de la maladie. Dans les cas ou mutuellement nous pensons que nous pouvons avancer ensemble, alors je suis très heureux de venir aider une équipe à être à nouveau fier de son travail.

Enfin sur la dernière partie : je pense effectivement que nous touchons le vair problème : l’ego. Quand je disais “à tord ou à raison”, c’est qu’il y a effectivement deux possibilités. Certains articles que je peux lire de «vieux» développeurs ne sont effectivement que du corporatisme/défense de position, notamment tout le discours de fond sur «si tu ne sais pas gérer un pointeur, ou comment marche un disque dur, tu ne sais pas développer». Soit je tombe sur des articles/conférences/exemples de code qui me montrent réellement que je suis loin de tout savoir, et alors, il faut que je mette mon ego de côté. Cette désagréable dissonance cognitive face à un discours tendant à prouver que nous avons encore du chemin à parcourir peut se résoudre de deux manières : soit on se jette sur la première excuse pour ne pas écouter, et ainsi laisser notre ego intact, soit on se rend compte que ce sont nos certitudes qui nous mettent dans la merde, et qu’il est temps de grandir un peu. C’est précisément ce mécanisme d’auto-défense qui entraîne tant de pleurnicheries pouvant se résumer un peu à «bouh, on m’a dit que pas avoir de tests c’était pas très professionnel. C’est même pas vrai, je fais ce que je veux, et le mec de toute manière il est même pas développeur je suis sûr, et il à peur pour son job, car il est vieux et je suis sûr qu’il connaît même pas react».

Qu’est-ce je penserai dans 15 ans ? Je n’en sais rien. J’espère juste que j’aurai continuer à apprendre, il y a tellement de chose que je ne sais pas.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.