J'ai trouvé cet article dans plusieurs articles sur SO. Je me retrouve dans le 6e archétype; le "théoricien".
Il définit le "théoricien" comme:
Le théoricien sait tout ce qu'il y a à savoir sur la programmation. Il ou elle peut passer quatre heures à enseigner l'histoire d'un langage de programmation obscur ou à fournir une preuve de la façon dont le code que vous avez écrit n'est pas parfaitement optimal et peut prendre trois nanosecondes supplémentaires pour s'exécuter. Le problème est que le théoricien ne sait rien du développement logiciel. Lorsque le théoricien écrit du code, il est si «élégant» que les simples mortels ne peuvent pas le comprendre. Sa technique préférée est la récursivité, et chaque bloc de code est modifié au maximum, au détriment de la rapidité et de la lisibilité.
Le théoricien est également facilement distrait. Une tâche simple qui devrait prendre une heure prend trois mois aux théoriciens, car ils décident que les outils existants ne sont pas suffisants et ils doivent construire de nouveaux outils pour construire de nouvelles bibliothèques pour construire un tout nouveau système qui répond à leurs normes élevées. Le théoricien peut devenir l'un de vos meilleurs joueurs, si vous pouvez le faire jouer dans les limites du projet lui-même et arrêter de passer du temps à travailler sur l'algorithme de tri ultime.
Même lorsque je travaille sur ce qui devrait être un projet simple, j'ai tendance à m'enliser en essayant de tout sur-concevoir à partir de zéro (cela explique probablement pourquoi j'ai perdu environ 2 ans à essayer de créer un système d'exploitation à partir de zéro. Mais même moi, je l'ai vu était finalement inutile).
Qu'est-ce qui peut m'aider à éviter de faire cela? Et respectez les principes KISS?
Merci