On voit souvent des articles expliquant pourquoi il est important d’avoir du code « propre ». Cela permet d’avoir du code plus lisible, plus facile à maintenir et avec généralement moins de bugs. Tout cela est parfaitement vrai, ce n’est pas moi ou les équipes de développement qui vous dirons le contraire. Sauf que, comment arrive-t-on à ce code de qualité ? Est-ce que l’on doit le créer parfait (ou presque) sinon c’est « fichu » ?
Certaines personnes seront sans doute en désaccord, mais je pense que quand on veut créer quelque chose, le plus important c’est de créer. La qualité viendra après.
Coder s’apparente à monter un meuble. Il vous faut rassembler plein d’éléments différents pour ensuite les assembler afin de parvenir au résultat souhaité. Et une fois que vous avez fini, il va vous falloir tout ranger et passer un coup de balai parce que vous avez mis de la poussière partout.
Lorsque l’on monte un meuble, on doit temporairement ignorer le fait que la pièce où l’on travaille est désormais « en bazar ». Ce n’est pas esthétique, mais c’est une étape nécessaire. Il est parfaitement possible de monter un meuble en minimisant le bazar créé (par exemple, en rangeant le tournevis entre chaque utilisation), cependant, on devient alors moins efficace. Se préoccuper du rangement quand on monte un meuble, c’est passer deux fois plus de temps à monter ledit meuble.
Pour cette raison, je vous conseille fortement de ne PAS vous préoccuper de la qualité de votre code lorsque vous écrivez la 1ère version. Faites quelque chose de moche, avec du code redondant, dupliqué et des copier-coller sales, mais faites quelque chose qui fonctionne ! Vous ferez le ménage ensuite (et je vous en prie, faites effectivement le ménage ensuite. Les gens n’aiment pas plus le code sale que les maisons sales. Particulièrement s’ils doivent ensuite s’occuper de ladite maison ou dudit code).
Personnellement, je suis assez « obsédée » par l’idée d’avoir du code propre et de qualité. Mes fichiers ne doivent pas être trop longs, mes fonctions idem, il ne doit pas y avoir de code redondant, tout doit être bien rangé, à sa place et facile à comprendre.
Sauf que voilà, lorsque je crée du nouveau code, cette obsession pour la « propreté » peut me paralyser. J’envisage tout plein de scénarios, mon cerveau part dans tous les sens et je n’avance pas. Alors dans ces moments-là, je suis obligée de me rappeler : « Crée quelque chose qui fonctionne, tu créeras quelque chose de beau et propre après ».
Chez Ekwateur, on est à fond pour la qualité, cependant, si votre obsession pour cette dernière vous empêche d’avancer, alors vous avez un problème.
On veut du code beau et propre parce que ce genre de code est plus facile à comprendre, à maintenir et contient moins de bugs. Néanmoins, pour arriver à ce résultat, il faut parfois commencer par faire du code un peu moins beau avec des morceaux inutiles et redondants. Il faut du temps pour créer quelque chose et ça ne sera jamais parfait du premier coup. Alors ne vous mettez pas trop la pression avec ça et créez quelque chose à l’image de l’humanité : imparfait mais qui s’améliore.