Psychologie du développeur
Introduction
L'informatique est un domaine jeune, avec des caractéristiques quelques fois assez nouvelles. Cela impose d'avoir un certain état d'esprit pour y réussir.
Curiosité intellectuelle
La jeunesse de la discipline fait que l'informatique est un domaine qui évolue très très vite. Les concepts, les technologies, les matériels, tout cela change extrèmement rapidement. Il n'est pas possible de rester sur ses acquis, de penser qu'une fois formé, on l'est pour la vie. Il faut accepter d'apprendre tout au long de sa vie, non seulement par des formations proposées par l'entreprise, mais aussi par soi-même.
Esprit critique
Chaque problème peut être résolu de multiples manières. Il faut donc toujours se poser la question, lorsqu'on a trouvé une solution, de sa validité, et de ses avantages, de ses inconvénients, et de l'existence d'autres solutions éventuellement meilleures.
Le manque de curiosité risque de mener au syndrome du "marteau doré", qui consiste à essayer à tout prix d'utiliser un outil qu'on connait (en le détournant complètement) alors que d'autres outils bien plus adaptés existent.
Paresse
Éviter de faire plusieurs fois la même chose ne sert pas qu'à économiser de l'énergie : c'est un aspect fondamental pour éviter les incohérences et aussi faciliter les modifications. Pendant la phase développement il faut donc avoir toujours à l'esprit la recherche de la réutilisation, en maîtrisant les différents moyens qui le permettent (fonction, héritage, généricité, design pattern, etc.)
Humilité
Développer est une tâche très complexe. Il y a par exemple souvent une meilleure façon de faire que la nôtre. Mais surtout, il est à peu près sûr que dans tous nos développements, il y a de nombreux bugs. Il est impératif de l'admettre et donc :
- ne pas se sentir vexé si notre programme s'avère buggué ;
- accepter que tout soit mis en oeuvre pour trouver des bugs dans notre code.
Esprit de famille
Quand on intègre un projet, une entreprise, il y a un passé et des règles dont il faut tenir compte. De plus, il faut penser à sa "descendance", c'est-à-dire aux personnes qui travailleront après nous sur le projet. La lisibilité et la documentation du code, par exemple, sont essentielles.
Amour du travail bien fait
Après le Manifeste Agile, le Manifeste pour l'artisanat du logiciel a clairement changé la vision de l'informatique chez les développeurs. On ne peut se satisfaire d'un travail bâclé juste parce que "il semble marcher" ou "il marche". Il faut suivre le précepte de Boileau : "Vingt fois sur le métier remettez votre ouvrage" en usant et abusant du refactoring notamment.