Comment la programmation affecte votre cerveau: 3 grandes vérités selon la science
Added 2019-02-23
C’est vrai: les programmeurs pensent différemment des autres.
Pour ne pas dire que les programmeurs sont nécessairement plus intelligents, plus logiques, ou plus rationnels que tout le monde, comme on dit couramment. Mais les scientifiques ont récemment commencé à étudier le cerveau des programmeurs et sont parvenus à des conclusions intéressantes.
Tout comme le talent artistique peut façonner votre esprit de différentes manières, la programmation informatique affecte également votre cerveau et votre façon de penser - peut-être d'une manière que vous n'auriez peut-être pas attendue.
1. Coder les formes de vos modèles mentaux
Le langage de programmation que vous apprenez en premier est-il important? Oui!
Cela semble un peu injuste, n'est-ce pas? Après tout, la plupart d’entre nous ont goûté pour la première fois à la programmation à l’école et nous n’avons pas la possibilité de choisir la langue qui nous est imposé. J'ai commencé avec C. Les personnes plus âgées que moi ont probablement commencé avec FORTRAN, COBOL ou BASIC. Quant à vous, les nouveaux venus? Vous avez probablement commencé sur Java ou Python.
Aucun doute là-dessus: la conception d'un langage de programmation façonne votre façon de penser. Edsger Dijkstra, l’un des informaticiens les plus influents de l’histoire, le savait quand il a dit :
"Les outils que nous utilisons ont une influence profonde (et sournoise) sur nos habitudes de réflexion et, par conséquent, sur nos capacités de réflexion."
Il a ensuite ajouté:
«L’utilisation de COBOL paralyse l’esprit; son enseignement doit donc être considéré comme une infraction pénale. "
Et:
"Il est pratiquement impossible d'enseigner une bonne programmation aux étudiants ayant déjà été familiarisés avec BASIC: en tant que programmeurs potentiels, ils sont mutilés mentalement au-delà de tout espoir de régénération."
Aie.
En d’autres termes, les paradigmes et les idiomes de votre premier langage de programmation influencent et même dictent votre conception des structures de données, des algorithmes, etc.
À tel point qu’il est en fait possible de prendre du code anonymisé et de déterminer qui l’a écrit en se basant uniquement sur la manière dont la tâche a été abordée et sur celle du code. Plus la tâche est difficile, plus il est facile de «dé-anonymiser».
Voir cet article sur la stylométrie de code [N’est plus disponible] et cela code stylométrie lecture transcription :
"Les programmeurs peuvent masquer leurs noms de variables ou de fonctions, mais pas les structures qu'ils préfèrent inconsciemment utiliser ou leurs opérateurs d'incrémentation préférés."
En anglais, nous avons un proverbe qui résume cela de manière compréhensible: «Lorsque vous n’avez qu’un marteau, tout ressemble à un clou». De même, une fois que vous avez appris à programmer d’une certaine manière, c’est tentant de penser à tous les problèmes de cette façon.
2. La programmation aide à renforcer la santé du cerveau
Les gens disent souvent que le cerveau est comme un muscle et que vous devez l'exercer si vous voulez rester affûté. Est-ce vraiment vrai? Et si oui, la programmation compte-t-elle comme un exercice mental, suffisamment pour avoir un impact sur la santé du cerveau?
UNE Méta-étude de 1991 ont examiné «les effets de la programmation informatique sur les résultats cognitifs» et ont constaté que les étudiants ayant de l'expérience en programmation informatique obtenaient un score de 16 points de pourcentage supérieur aux tests d'aptitudes cognitives par rapport aux étudiants n'en possédant pas.
UNE étude plus grande en 1999 ont constaté et confirmé que «les activités attrayantes sur le plan intellectuel servent à protéger les individus contre le déclin [cognitif]», mais ont également noté qu’il était possible que le déclin cognitif entraîne une moindre participation à des activités attrayantes sur le plan intellectuel.
Un étude encore plus grande en 2009 est parvenu à une conclusion similaire, suggérant que «les personnes qui s'engagent dans des activités de stimulation du cerveau au cours des années ultérieures peuvent réduire leur risque [et même retarder l'apparition de] la maladie d'Alzheimer et d'autres types de démence.» Les activités de stimulation du cerveau comprenaient la lecture, l'écriture et des puzzles. , jeux de cartes et jeux de société et musique.
Enfin, une étude publiée en 2013 ont constaté que seuls certains types d’engagement mental prêtaient réellement à des cerveaux plus précis, à savoir des activités cognitives à forte demande impliquant un apprentissage et des difficultés intellectuelles.
Bien sûr, il faut faire plus de recherche, mais il est difficile de penser à une activité cognitive plus exigeante et centrée sur l’apprentissage que la programmation.
En outre, bien qu'aucune de ces études ne montre que les activités attrayantes sur le plan intellectuel vous rendent plus intelligent ou plus capable, elles montrent que des tâches cognitives très demandées prolongent au moins la santé de votre cerveau actuel et empêchent de manière significative la détérioration neuronale.
3. Le codage n’est pas tout en mathématiques et en logique
Selon un Étude 2014 [PDF] qui utilisaient des examens IRMf pour observer l'activité cérébrale alors que les programmeurs essayaient de comprendre et de comprendre des extraits de code, cinq zones distinctes du cerveau sont impliquées dans la compréhension du code source:
- BA 6: gyrus frontal moyen (attention, langue, mémoire de travail)
- BA 21: Gyrus temporal moyen (récupération de la mémoire sémantique)
- BA 40: Lobule 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)
Cela signifie que l'utilisation du code source utilise principalement des parties du cerveau normalement associées au traitement du langage, à la mémoire et à l'attention.
Ce qui manque notablement, ce sont les régions du cerveau normalement associées aux calculs et aux calculs, qui n’ont pratiquement pas été enregistrées, même lorsque des extraits de code comprenant des boucles, des conditions, de l’arithmétique et d’autres opérations algorithmiques sont compris.
Bien entendu, cette étude est quelque peu incomplète et le les chercheurs admettent autant :
- Les fragments de l'expérience comportaient moins de 20 lignes de code et étaient limités dans le temps, ce qui signifie qu'ils n'étaient pas assez difficiles pour véritablement défier les sujets.
- Les preuves ne suggèrent pas que les langages de programmation sont comme des langues étrangères, mais seulement qu'ils impliquent des régions du cerveau similaires.
- Les sujets n’ont écrit aucun de leurs propres codes, ce qui impliquerait probablement différentes zones du cerveau que d’essayer de comprendre le code existant.
Mais voici ce que nous pouvons repartir avec:
Nous savons que les programmeurs vérifient régulièrement le code source, qu’il soit auto-écrit ou appartenant à quelqu'un d'autre. Nous savons également que les programmeurs consacrent souvent plus de temps à la correction et à la refactorisation du code qu'à l'écriture d'un nouveau code à partir de zéro.