Are computer languages really languages? Apparently, in the 70s and 80s, various universities appeared to think so, as they allowed computer programming to count for the foreign language entry requirement.
According to Hulit and Howard (1993), languages must 1) convey meaning, through the words and the relationships between the words; 2) include concepts of different times and space, like yesterday or somewhere else; and 3) be “productive”, in that they allow us to say things that have never been said before. Kent L Norman’s book Cyberpsychology points out that these things are technically present in programming languages, which involve similar concepts of grammar and meaning. However, the structure of these languages are highly structured, and the communication is, essentially, one-way.
Of course, another difference is that talking to a computer doesn’t usually involve much actually talking or listening – it’s a reading and writing kind of conversation. But this recent neuroimaging study suggests that reading and writing ability is embedded in the language system, and processed in brain regions that were previously thought to specialise in spoken language only, so perhaps that’s not such a big deal.
So why does it matter whether or not the brain treats code as language? Well, Dr Ellen Bialystok and her colleagues have been conducting some very interesting research into the cognitive benefits of bilingualism which suggests that regularly switching between two different languages changes the structure and function of the brain. Bilingualism seems to improve executive function in the brain, delay age-related cognitive decline and may even protect against the onset of dementia.
What’s more, the Education Secretary recently promised to “pull every lever” to get young kids learning languages (warning: link contains large picture of Michael Gove). Why? He said:
“It is literally the case that learning languages makes you smarter. The neural networks in the brain strengthen as a result of language learning.”
So it seems to me that if learning to code has the same cognitive benefits as learning languages, the implications could be pretty interesting for primary education and the Coding for Kids campaign.
And that’s what I’m hoping to find out.
I’ve failed to learn a spoken language other than English but I use 3 or 4 programming languages on a daily basis. I’m not sure if that’s because they require a slightly different kind of brain or if it’s more to do with environment and motivation.
Although I’ve always wanted to learn another spoken language I’ve never lived outside of the UK and so I’ve never really needed to. Perhaps if I’d spent the last couple of years in Spain I’d have a reasonable grasp of the language, but instead I’ve found that I’ve needed to learn new computer languages to continue doing the work I enjoy. I suppose rather like learning a spoken language while living in a community that speaks it I’ve not just had motivation but also access to instant feedback while learning; if I get something wrong it’s generally fairly obvious right away!
Motivation is such an important factor in learning anything, but especially anything difficult. That’s why some of the examples in this talk are so depressing – if we’re not confiscating mobiles or using computers to spy on kids, it seems we’re often in danger of boring them to death. I’m told there are lots of dedicated and brilliant teachers out there, but with budget cuts, not enough computers and a dull curriculum, what chance have they got?
[…] HomeAbout thecodingbrain Just another WordPress.com site « If you “talk” to computers, does that make you bilingual? […]
[…] response to feedback from lots of you, I have now extended my experiment on computer programming and the brain. I’m still recruiting, so if you can code and fit into one of these categories, please sign […]
I don’t think that’s correct. Programming languages really aren’t for the computer, they’re for other programmers (and ourselves). If all we cared about was speaking to the computer, we’d just use the ones and zeros. One criteria among different programming languages is their “expressiveness” which is their ability to say what they say in the most elegant, efficient, human way possible. The Second Rule of programming is: Source Code is for humans!
in fact, focusing on the language may be a mistake to your mission. What’s really different among (good) computer programmers is the way they think, and I’m not sure the language is really the core of that. Programmers are (naturally?) very precise, very detailed and very inclusive and forward-oriented thinkers. A huge part of good programming is imagining what can happen under a wide variety of circumstances.