Larry Cuban’s blog recently takes up what he calls a “tissue paper” reform — teaching coding in kindergarten. There are a lot of reasons that people give for students to learn to program; most often the skills are advocated because of some other benefit — some change in thinking (e.g. “critical thinking”), or the more recent ideal, “computational thinking.” (I leave aside goals like “teaching keyboarding skills,” or “digital literacy,” neither of which have lots to do with coding). The magic word is “transfer.”
Cuban makes the point that there is a fair amount of research on an earlier version of the “programming to learn to think” idea, LOGO. Now, I love LOGO, and as with very many complex and powerful tools, in a strong pedagogical environment, I think it can be shown that LOGO can engage and excite some children, motivating them to create and design using the programming environment; and the “microworlds” approach can also help students explore interesting systems (e.g. physical systems, ecological processes, etc. ) Sylvia Weir’s research (reported in her 1991 book Cultivating Minds) provides thought-provoking evidence of ways that LOGO systems could help special-needs students, such as autistic children, build on their strengths (and build new strengths).
In general, though, the evidence for “transfer” is not strong (Cuban cites an old but very useful study by Roy Pea which is worth reviewing). The bottom line seems to be that if you want kids to learn to program, teach programming. If you want them to learn to think better, work on thinking skills in many different contexts. “Transfer” remains an elusive goal,and perhaps a will o’the wisp.
On the other hand (I bring out a favorite hobby horse), there is stronger evidence that learning to play chess has some of the cognitive benefits hoped for from programming, and others as well.
“Transfer”: Do you plan on it, plan for it, count on it, in your work? How do you do so? Where do you see evidence for it happening? What are the conditions? Or is this not a learning process that you design for in your educational programs?