Je travaille sur une application assez grande et boguée - et en raison de la façon dont elle est écrite (je vais vous épargner des détails, mais elle viole les règles dans la plupart des domaines auxquels vous pouvez penser), il est presque impossible de la développer sans refactoring majeur.
Une partie importante de l'application a été créée par des stagiaires, n00bs, etc.; mais il y a aussi eu un programmeur au rang de maître développeur, et en toute humilité, le code qu'il a laissé est également douteux, d'une manière différente peut-être mais toujours.
Certes, son code a tendance à faire le travail - la plupart du temps - mais il est généralement cryptique, réinventant la roue (par exemple, une grande méthode personnalisée accomplissant une sauvegarde SQL de base de données plutôt ordinaire), etc. Fondamentalement, confusion inutile et beaucoup de suringénierie
Et cela m'a fait penser qu'être un codeur hautement qualifié (je n'utilise pas délibérément le mot "développeur", en supposant qu'il indique un ensemble plus large de compétences), s'il n'est pas accompagné d'autres qualités, peut en fait être un peu toxique.
En supposant que c'est vrai, certaines des raisons pour lesquelles je pourrais penser sont:
- si vous codez facilement, il vous semble (ou en fait, à court terme) juste plus rapide d'extraire vos propres solutions sur place, sans vous tourner vers des bibliothèques, des fonctionnalités préexistantes, etc.
- si l'on est suffisamment expérimenté pour maintenir facilement une image mentale d'un programme complexe, on est moins enclin à le diviser en modules, couches, etc.
Donc, mon point est que si un codeur fluide se trouve être un mauvais développeur, leur maîtrise non seulement ne compense pas ce dernier, mais il fait en fait encore plus de mal à la place.
Que penses-tu de cela? Est-ce vrai (dans quelle mesure si c'est le cas)?
I.ThinkOf(this).KindOfThing()