プログラミング時の脳活動に関する研究——言葉や数学とは異なる領域が反応
2021/07/06 07:30
プログラミングの学習は、新しい言語を学ぶことに似ている。新しい記号や用語、使い方の決まりがあり、他者にも理解できるように明確に記述する必要があるからだ。では、言語能力に長けた人ほどプログラミングスキルが高いのだろうか?
米マサチューセッツ工科大学(MIT)の調査結果によると、我々がコードを読んでいる時、言語処理に関する脳領域はほとんど反応していないことが分かった。研究結果は、2020年12月15日付けの『eLife』に掲載されている。
研究チームは、参加者に短いコードを見せて実行結果を予測させ、その間の脳の動きをfMRI(磁気共鳴機能画像法)で可視化した。実験は2種類行われ、実験1はPython、実験2はScratchJrを使用した。参加者は対象となるプログラミング言語に精通しており、実験1の参加者は25人、実験2の参加者は21人。参加者は全て英語を母語とする成人で、右利きの人が大半を占めた。
fMRIの結果からは、言語領域はほとんど反応せず、その代わりに、前頭葉と頭頂葉全体に広がる「マルチデマンド(MD)ネットワーク」と呼ばれる領域が主に活性化していることが分かった。そこは、難しい問題を一生懸命考えている時など、一度に多くの情報を心に留めておく必要がある時に利用される領域だ。
このMDネットワークはまた、数学やクロスワードを解く時に活性化する領域であることが知られている。では、プログラミングと数学の脳活動が同じかというと、正確には違うようだ。数学や論理学は主に左脳のMDネットワークに関係するが、コードを読んでいる時は左右両方のMDネットワークが活性化していた。ScratchJrの場合は、左脳よりも右脳の方が少し活動的になっていた。
「コンピュータコードを読んで理解するというのは、独自の活動のようだ。言語とも異なり、数学や論理学とも異なる」と、研究チームのAnna Ivanova氏は語る。
より複雑なコードを読むと、もっと広い範囲または別の脳領域が利用される可能性もある。さらに、今回の参加者は比較的プログラミング経験が浅かったことから、プロのプログラマーの脳内では、また違った活動領域が生まれているかもしれないと、研究チームは考えている。
(fabcross for エンジニアより転載)