Il y a 16 ans -
Temps de lecture 4 minutes
Codez comme des filles !
Vous avez sûrement déjà , au moins une fois, en parcourant les sources d’un logiciel open source été impressionné par la qualité formelle du code : nommage efficace et pertinent, choix judicieux des paquets et de leur hiérarchie, émergence des concepts au travers de la structure, javadoc riche et dénuée de fautes d’orthographe… même si j’embellis un peu le tableau pour les besoins du propos, on oublierait pour un peu qu’il s’agit du même language que celui utilisé pour développer ce logiciel de gestion aux sources cryptiques dont vous avez hérité la maintenance. En fait, le code source de certains projets open source évoque fortement les fiches bristol que les filles confectionnaient au lycée pour simplifier leurs révisions, vous vous souvenez ? Ces précieuses fiches dont, pour tout dire, vous vous moquiez un peu, mais qui rendaient limpides les cours du semestre précédent quand vous même n’arriviez plus à relire vos propres notes. Jamais vu un garçon faire des fiches bristol bariolées. C’est un truc génétique, je crois, une séquence codante dans la branche manquante du chromosome Y, qui interdit aux mâles l’usage de l’encre turquoise et celle de la règle pour souligner les titres.
La coloration syntaxique et le formattage automatique des sources proposés par les IDE modernes permettent bien sûr, à peu de frais, de donner au code java l’apparence formelle des fiches bristol (ce qui, au passage, devrait les réhabiliter définitivement et couvrir de honte rétrospectives les anciens moqueurs). Mais ce travail d’enluminure textuelle n’est que rarement suffisant pour masquer la faiblesse des choix de nommage ou l’insuffisance des commentaires – quand ce n’est pas l’indigence des concepts architecturaux. Pire : il les met en exergue.
Laissé à lui-même, le développeur mâle standard tend à se laisser aller à une négligence peccamineuse, proche dans le principe de la façon dont il prenait ses notes au lycée, et qui transforme rapidement le code source le mieux intentionné en jachère sémantique – et en cauchemar esthétique. Etant moi même l’auteur de certaines des lignes de codes les plus vilaines jamais produites dans l’hémisphère nord (il m’arrive de faire du Perl), je m’interroge : pourquoi les développeurs open source (du moins certains) échappent-il à la malédiction ?
La raison en est probablement très simple : lorsque l’on développe du code open source, on s’expose à ce que les sources soient consultées par un nombre indéterminé de pairs à l’oeil expert, dont le jugement critique fera ou défera le succès du projet. Alors on tente de produire le plus beau code possible. On renomme 6 fois cette variable. On élague par refactoring. On épure l’architecture. On formatte la javadoc, un espace ici, un saut de ligne là , et là une liste à puces… Bref, on code comme une fille. C’est une bête question d’orgueil, la soif ancestrale de reconnaissance, le besoin de séduire.
Il resterait, bien sûr, à tenter de trouver une définition un tant soit peu opérationnelle de ce qu’est du beau code ; je ne m’y essaierai pas : les philosophes s’étripent (symboliquement, bien sûr, ce sont des gens d’une extrême mesure) depuis des siècles pour définir le Beau, et les programmeurs leur ont, à leur modeste échelle, emboité le pas [1]. Ce qui est sûr, c’est que la plupart des développeurs ont un jugement très sûr et savent reconnaître le beau code quand ils viennent à le croiser (ils utilisent le plus souvent le qualificatif d’élégant pour le désigner). Il arrive même à certains d’en produire… Et s’il est une vertu que chacun s’accorde à trouver au beau code, c’est qu’il est facile à comprendre, à maintenir et à utiliser. Des caractéristiques constitutives d’un logiciel de qualité.
Certaines pratiques clés de l’eXtreme Programming, en particulier le pair programming ou les revues de code systématiques ont pour vocation de stimuler en permanence l’orgueil esthétique des programmeurs en soumettant leur production au regard critique de leurs pairs. Ce n’est pas pour plomber la productivit des codeurs. C’est pour qu’ils produisent du beau code. C’est pour qu’ils codent comme des filles !
[1] Pour d’autres considérations sur la féminité du code, consultez l’excellent post de Kathy Sierra Coding like a Girl [en].
Commentaire
1 réponses pour " Codez comme des filles ! "
Comments are closed.
Published by PomCompot , Il y a 16 ans
Ah mince, je ne fais pas d’OpenSource, mais j’adore bien indenter mon code, mettre des noms de variables et de méthodes explicites, avoir de belle couleur pour la coloration syntaxique, mettre des commentaires, etc. Ah oui, et je suis un homme. C’est grave docteur, dois-je me poser des questions sur mon identité sexuelle ?