
Il est vrai que la pensée des programmeurs est différente de celle des autres. Pour ne pas dire qu'ils sont nécessairement plus intelligents, plus logiques ou plus rationnels que les autres. Cependant, il n'y a pas si longtemps, les scientifiques ont commencé à étudier l'impact de la programmation sur le cerveau et sont arrivés à des conclusions intéressantes.
Tout comme les cours d'art peuvent changer votre façon de penser de différentes manières, la programmation affecte votre façon de penser - peut-être pas de la manière que vous attendiez.
1. La programmation affecte vos schémas cognitifs.
Est-il important de savoir avec quel langage de programmation vous avez commencé votre carrière dans cette profession? Oui!
Cela semble malhonnête, non? Qu'on le veuille ou non, la plupart d'entre nous se sont familiarisés avec la programmation à l'école et la première langue nous a été imposée. J'ai commencé avec C. Ceux plus âgés que moi ont commencé avec FORTRAN, COBOL ou BASIC. Et ceux qui sont plus jeunes? Vous avez probablement commencé avec Java ou Python.
Sans aucun doute, la structure du langage de programmation affecte la façon de penser. Edsger Dijkstra, l'un des scientifiques les plus influents dans le domaine de l'informatique, le
savait quand il a déclaré :
Les outils que nous utilisons ont un effet profond (et sous-jacent) sur nos habitudes de pensée, et donc sur nos capacités de réflexion.
Puis il a dit:
COBOL défigure l'esprit; son enseignement doit être considéré comme une infraction pénale.
Et aussi:
Il est presque impossible d'enseigner aux étudiants qui ont étudié le BASIC à bien programmer: en tant que programmeurs potentiels, ils sont mentalement handicapés, sans aucun espoir de guérison.
Ouch.
Dans un sens, tous les langages de programmation sont égaux car ils
sont Turing complets . Par contre, la maîtrise d'une langue peut entraîner des problèmes dans une autre. Les programmeurs Java et Python sont deux types de spécialistes différents qui ont des approches très différentes de la programmation.
En d'autres termes, les paradigmes et les idiomes de votre premier langage de programmation influencent, et même dictent, vos approches mentales des structures de données, des algorithmes, etc.
De plus, vous pouvez prendre du code anonymisé et déterminer qui l'a écrit, en vous appuyant uniquement sur l'approche choisie pour résoudre le problème et le style d'écriture du code. Et plus la tâche est difficile, plus il est facile de «désanonymiser» le code.
Faites attention à cette
étude de la stylométrie du code et à la transcription d'une
conférence sur les mêmes questions :
Les programmeurs peuvent masquer les variables ou les noms de fonction, mais pas les structures qu'ils préfèrent inconsciemment utiliser, ni leurs opérateurs d'incrémentation préférés.
En anglais, il y a un proverbe qui résume tout ce qui précède en une phrase claire: "
Quand vous n'avez qu'un marteau, tout ressemble à un clou ." Autrement dit, après avoir appris à programmer d'une certaine manière, vous serez similaire dans l'approche pour résoudre tous les problèmes.
Alors choisissez judicieusement votre langage de programmation!
2. La programmation aide à améliorer la santé du cerveau
Le cerveau est souvent comparé à un muscle qui doit être constamment entraîné pour rester intelligent et intelligent. En est-il ainsi? Et si oui, la programmation peut-elle être considérée comme un exercice mental suffisant pour améliorer la santé du cerveau?
Les auteurs de la
méta-étude de 1991 voulaient découvrir «l'effet de la programmation informatique sur les résultats cognitifs» et ont constaté que les étudiants ayant une expérience en programmation gagnaient 16% de plus lors du test des capacités cognitives que les étudiants sans expérience en programmation.
Une
étude plus large de 1999 a confirmé que «l'activité intellectuelle empêche la réduction des capacités [cognitives]». Mais les auteurs ont également noté que, peut-être, une diminution des capacités cognitives peut entraîner une diminution de la participation à l'activité intellectuelle.
Les auteurs d'une
étude encore plus vaste en 2009 sont parvenus à la même conclusion et ont suggéré que «les personnes impliquées dans des activités de stimulation cérébrale dans les années à venir pourraient réduire la probabilité [et même retarder l'apparition] de la maladie d'Alzheimer et d'autres types de démence». Les activités de stimulation cérébrale comprennent la lecture, l'écriture, les puzzles, les jeux de société et de cartes et la musique.
Enfin, dans une
étude publiée en 2013 , il est dit que seuls des types d'activité mentale strictement définis améliorent vraiment notre cerveau, à savoir une activité cognitive intense qui est intellectuellement difficile et implique d'apprendre quelque chose.

Bien sûr, ce sujet nécessite plus de recherches, mais il est toujours difficile d'imaginer une telle activité mentale, qui nécessite plus d'efforts et est plus axée sur l'apprentissage que sur la programmation.
Bien que toutes les études ci-dessus ne prouvent pas que l'activité intellectuelle nous rend plus intelligents ou plus capables, les résultats suggèrent que les tâches cognitives difficiles améliorent au moins l'état actuel du cerveau et réduisent considérablement la probabilité de dégradation.
Il y a un point de vue selon lequel il n'est jamais trop tard pour apprendre la programmation, et les études décrites ne font que confirmer cette opinion. La programmation est bonne!
3. La programmation n'est pas que des mathématiques avec logique
Dans une
étude de 2014, l'IRM cérébrale fonctionnelle a examiné l'activité cérébrale des programmeurs qui ont essayé de comprendre et d'élaborer des fragments de code. Il s'est avéré que lors de l'étude du code source, cinq zones du cerveau sont impliquées:
- BA 6: gyrus frontal moyen (attention, langage, mémoire de travail)
- BA 21: gyrus temporal moyen (recherche de mémoire sémantique)
- BA 40: lobe pariétal inférieur (mémoire de travail)
- BA 44: gyrus frontal inférieur (mémoire de travail)
- BA 47: gyrus frontal inférieur (langue, mémoire de travail)
Autrement dit, lorsque vous travaillez avec le code source, les parties du cerveau généralement associées au traitement du langage, à la mémoire et à l'attention sont principalement impliquées.

Veuillez noter que dans ce cas, les sections du cerveau liées aux mathématiques et aux calculs ne sont presque pas impliquées - même lors de l'analyse de fragments avec des cycles, des calculs conditionnels et arithmétiques et d'autres opérations algorithmiques.
Bien sûr, l'étude n'était pas exhaustive et ses
auteurs indiquent :
- L'expérience a utilisé des fragments de code de moins de 20 lignes, et le temps passé à travailler avec eux était limité, c'est-à-dire que ce code n'était pas particulièrement difficile pour les sujets.
- Les résultats de l'étude n'indiquent pas que les langages de programmation s'apparentent aux langues étrangères, mais seulement sur l'implication des mêmes sections du cerveau.
- Les sujets n'ont pas écrit le code, et en même temps d'autres zones du cerveau peuvent être impliquées que lors de l'analyse du code existant.
Mais voici ce qu'il faut noter. Nous savons que les programmeurs analysent régulièrement le code source écrit par eux-mêmes ou par quelqu'un d'autre. Nous savons également que les programmeurs passent souvent plus de temps à réparer et à refactoriser le code existant qu'à en écrire de nouveaux à partir de zéro.
Cette étude n'est donc pas du tout inutile. La programmation n'est pas seulement "l'activité de l'hémisphère gauche du cerveau", et on peut même supposer que les programmeurs "de l'hémisphère droit" ont un avantage certain.