Le concept de la programmation sans égo a pour but d’améliorer la qualité du code, en faisant passer en revue le code par d’autres programmeurs, en insistant sur le fait que ces revues soient faites dans un esprit amical, collégial, en laissant de côté les sentiments personnels.
En s’inspirant du livre « The Psychology of Computer Programming » de Jerry Weinberg, Jeff Atwood, illustre blogueur et créateur du site Stack Overflow, énonce et commente les dix commandements de la programmation sans ego :
- Comprenez et acceptez que vous alliez faire des erreurs. Pour Atwood, les erreurs sont rarement mortelles dans l’industrie du développement. Ainsi, nous devrons apprendre, rire et progresser de nos erreurs.
- Vous n’êtes pas votre code. Rappelez-vous que le but de la revue d’un code est de trouver des problèmes, et des problèmes seront trouvés. Ne les prenez pas personnellement lorsqu’ils sont découverts.
- Peu importe le nombre de « karatés » que vous maitrisez, quelqu’un d’autre en saura toujours plus que vous. Un tel individu peut vous apprendre quelque chose de nouveau. Recherchez et acceptez l’avis des autres, surtout lorsque vous pensez que ce n’est pas nécessaire.
- Ne pas réécrire le code de quelqu’un sans le consulter. Il y a une ligne fine entre « code de fixation » et « réécriture du code ». Il est indispensable de connaitre cette différence et d'éviter de foncer tout seul dans son coin.
- Traitez les gens qui savent moins que vous avec respect, déférence et patience. Les personnes non techniques qui traitent avec les développeurs régulièrement trouvent ceux-ci pleurnichards. Atwood invite à ne pas renforcer ce stéréotype de colère et d’impatience.
- La seule constante dans le monde est le changement. Soyez ouvert et acceptez cela avec un sourire. Percevez chaque changement (outils, besoins, plateformes, etc.) comme un nouveau défi.
- La seule véritable autorité acceptable découle de la connaissance et non du pouvoir. La connaissance engendre l’autorité, et l’autorité suscite le respect. Si vous voulez du respect, cultivez le savoir.
- Il faut se battre pour ses idées, mais accepter gracieusement la défaite. Acceptez que, parfois, votre raisonnement ne soit pas suivi. Même si plus tard il s’avère juste, il ne sert à rien de remettre sur le tapis le « Je vous l’avais bien dit ».
- Ne pas être « le gars dans la chambre ». Être hors de contact, hors de vue et hors de contrôle n’a pas sa place dans un environnement ouvert et collaboratif.
- Critiquer le code plutôt que la personne. On peut être gentil avec la personne tout en commentant le code. Autant que possible, faire des commentaires positifs et orientés vers l’amélioration du code. Par exemple, les commentaires relatifs aux normes, standard, spécifications, performances sont toujours bien perçus.
Voilà des règles « universelles » qui sont probablement appliquées par de nombreux développeurs.
Source : Coding Horror
Et vous ?
Êtes-vous un développeur sans égo ?
Vous reconnaissez-vous dans ces commandements ?
Quelles autres règles proposez-vous pour le développeur sans égo ?