Ou pourquoi est-ce que les développeurs ne vont jamais assez vite aux yeux de leurs clients ou de leurs hiérarchies ? Voir même aux yeux de leurs collègues !
Code fast or code well, ces deux notions sont souvent présentées comme opposées. Pourtant je rejoins totalement oncle Bob (Robert C. Martin) sur ce sujet :
“The only way to go fast is to go well“.
Ces dernières semaines m’ont brutalement rappelé cet antagonisme. Entre un potentiel client qui a considéré mon devis comme trop cher car c’était une petite fonctionnalité, cela aurait dû me prendre très peu de temps …
Ou d’autres développeurs qui vous regardent avec de grands yeux lorsque vous suggérez un refactoring : le code marche et il est “lisible”, alors pourquoi s’embêter à le reprendre ?
Dans le monde actuel, nous sommes entourés par l’informatique au sens large. Tout ou presque est accessible facilement, en quelques clics … Cette disponibilité nous a habitué à avoir ce que nous voulons très vite. Et les longues heures qui ont été nécessaires pour en arriver là sont complètement oubliées, ou tout simplement, jamais appréhendées.
Dans l’informatique, les premières fonctionnalités sont très rapidement disponibles. Et puis au fur et à mesure des développements, les nouvelles fonctionnalités prennent de plus en plus de temps, les bugs se multiplient. Il est en effet facile de coder rapidement au début. Pour rester rapide, cela demande une grande discipline : pour faire du bon code, du code propre, il faut approximativement le même temps de nettoyage de code que de temps pour faire initialement la fonctionnalité. Et personne n’est prêt à payer pour cela, encore moins si le développeur est allé très (trop) vite au début. C’est donc la responsabilité du développeur de l’expliquer et de défendre ce point de vue !
Encore faut-il avoir une idée de ce qu’est du bon code. Il y en a, je pense, quasiment autant de définitions que de développeurs. J’aime particulièrement celle de Grady Booch :
“Clean code is simple and direct. Clean code reads like well-written prose …”
Et de la bonne prose commence au début et se termine à la fin bien sûr. Elle doit respecter les règles de grammaire. Et surtout elle intéresse le lecteur, avec généralement une progression des concepts généraux vers les détails.
Pour aller plus loin, je vous recommande cette série de vidéo d’oncle Bob sur le “clean code” : https://www.youtube.com/watch?v=7EmboKQH8lM
Vous y apprendrez tout ou presque sur le bon code et comment en faire soi-même pour les autres.