Last week I received an email from a colleague with an interesting question. An often heard argument pro teaching kids how to code, is that this would benefit them as they would be learning general problem solving skills. Her question now: is this backed by science. She added that she could understand that there isn’t much research yet as it seems to her quite new.
Good question, so I started digging and as a matter of fact: it isn’t really that new, as I already found some research examining this question dating back to the seventies of last century. This 1975 study by Mayer seems to suggest this is the case, but actually the study rather discusses effective ways of teaching how to learn how to program computers. Some studies have a clear no as answer, check this study from 1990 by VanLengen et al. that did use a randomized controlled trial and also a similar study by Mayer et al in this book didn’t show an effect, this study by Clemens and Gullo does show some influence of learning computer programming on divergent thinking, but it’s not yet a real smoking gun. This 1990 study by Jho-Ju Tu and Johnson does seem to offer this evidence describing a clear gain on problem solving skills, but the study didn’t involve kids, but students in higher education who wanted to learn how to code and sadly there wasn’t a control group in this research design. The study mentioned by Littlefield et al in this book also seems to suggest a positive influence, but the researchers explain that simply learning how kids to code won’t do it and discovery learning in this doesn’t seem to work at all. What did work, was teaching kids how to program… with a clear focus on general problem solving skills. Would have been interesting if there would have been a control group who also got the problem solving skills being taught without the coding classes. Besides the studies mentioned in this overview, I did check more research but until now only could find research that’s basically similar to what I’ve just described.
Well, that’s where I am at this point. Last week I asked on Twitter for more evidence (as I have quite a lot of researchers as follower). I did receive some reactions, but only from colleagues trying to find evidence themselves. So, now I turn to the audience of this blog. Who could help me out?
Perhaps a few different questions should be answered first. First, how useful are non-domain-specific “general” problem solving skills? Second, does teaching these skills lead to better problem solving? Here are some thoughts by Sweller, Clark and Kirschner (2010): “in over a half century, no systematic body of evidence demonstrating the effectiveness of any general problem-solving strategies has emerged […] There is no body of research based on randomized, controlled experiments indicating that such teaching leads to better problem solving.” (p. 1303)
Sweller, J., Clark, R. & Kirschner, P. (2010). Teaching general problem-solving skills is not a substitute for, or a viable addition to, teaching mathematics. Notices of the American Mathematical Society, 57(10), 1303-1304.
[…] a similar vein let’s teach all children how to code. Most of the time this is said by people who are really convinced of his or her […]
[…] De kans is zeer groot… dat Peter toen in de VS inderdaad in een uitzonderlijke school zat. Het werk van oa Larry Cuban doet vermoeden dat dit zeker niet de regel was. Het was trouwens de eerste golf van programmeren in de jaren 80 en mooi dat dit effect heeft gehad op Peter, maar er is een reden waarom veel mensen deze eerst golf vergeten is. […]
[…] the example of the present emphasis on coding in education to learn e.g. general problem solving skills. The sad thing is: a lot of this actually has been done before and often failed. We bought the […]
[…] in ook iets anders. Leren programmeren zou dan helpen voor algemeen probleemoplossend vermogen (maar wellicht niet), leren schaken zou je slimmer maken, enz. En niet te vergeten ‘far transfer’ is het […]
[…] in ook iets anders. Leren programmeren zou dan helpen voor algemeen probleemoplossend vermogen (maar wellicht niet), leren schaken zou je slimmer maken, enz. En niet te vergeten ‘far transfer’ is het […]