Neuroscientists from MIT have found that reading computer code does not activate the areas in the brain used to process language. Instead, they found that it activates general-purpose neural networks used for working on challenging tasks.
Generally speaking, there are two schools of thought on how the brain learns to code. One holds that being mathematically-adept is a prerequisite. Another suggests that language skills are more relevant, given the parallels between coding and language, including the learning of new symbols, terms, and syntax rules. To understand more about these underlying skill sets, the researchers decided to compare brain activity while reading computer code to that relating to linguistic processing.
For their study, the researchers focused on two programming languages- Python and ScratchJr, a visual language designed for children aged five and above. As such, they recruited young adults proficient in the language they were being tested on. While reading code and being asked to predict what action each would produce, each participant underwent an fMRI scan to record their brain activity.
In the end, the researchers noted little to no response in the areas of the brain used by language while the participants read code. Instead, they found activation in the multiple demand network, a network between the frontal and parietal lobes of the brain typically used for tasks that require handling several pieces of information at once ie. mentally challenging tasks that require deep thinking.
More than this, the researchers found that coding involved both the right and left sides of the multiple demand network- the first activated when solving math and logic problems and the latter during spatial navigation tasks. They also found that those reading ScratchJr tended to have slightly more activation on the right side of their multiple demand networks than the left. As such, the researchers concluded that their findings go against the hypothesis that maths and coding rely on the same neural mechanisms.
"It's possible that if you take people who are professional programmers, who have spent 30 or 40 years coding in a particular language, you may start seeing some specialization, or some crystallization of parts of the multiple demand system," says Evelina Fedorenko, one of the study's authors.
"In people who are familiar with coding and can efficiently do these tasks, but have had relatively limited experience, it just doesn't seem like you see any specialization yet."