Last week, I tweeted, “When you’re teaching coding to students, research the cognitive challenges kids & teachers had in 80s & implement from there. #PriorKnowledge”
This has arisen from the frustration that many today are not not aware of the challenges and opportunities that were experienced—and researched!—on the first wave of children programming in schools during the 1980s.
…let’s pick up where we left off…
It’s great to be excited about ‘coding’ these days, but it would be even more exciting if educators were to pick up where we left off. With the background knowledge of the research on programming: the problems, the misconceptions students face, the common (novice) errors, the questions, and so forth—educators could start at a higher point and move forward more efficiently. This would not be too different from gathering background knowledge in any profession—rather than inventing and discovering all from ‘scratch’ (so to speak)!
Don’t get me wrong, I love the discovery approach, but within reason.
I was asked if I had any digital resources on this. So I decided to put a few of the old research pieces together in this post. It is by no means a comprehensive list! It does not address the totality of research from that era—nor the research in more recent years. But, it will give you a taste of our dreams and challenges from that period.
In here, you will see David Perkins—who, of course, leads Project Zero at Harvard and has a long history of cognitive research.
You will also see my old friend, Gavriel Salomon (Gabi) whose work I have frequently referenced in this blog. He left us last year and is sorely missed. (We had some fun at a conference he organized in Israel in 1986. As I was giving a keynote presentation, one of the audience members disagreed with a point I made and spoke out loudly. I was rather taken aback, as my Canadian sensibilities and customs were different. Before I had a chance to respond, Gabi jumped into it, and took up the challenge! I could only giggle.)
Conditions of Learning in Novice Programmers
Vol 2, Issue 1, 1986
Under normal instructional circumstances, some youngsters learn programming in BASIC or LOGO much better than others. Clinical investigations of novice programmers suggest that this happens in part because different students bring different patterns of learning to the programming context.
- disengage from the task whenever trouble occurs,
- neglect to track closely what their programs do by reading back the code as they write it,
- try to repair buggy programs by haphazardly tinkering with the code, or
- have difficulty breaking problems down into parts suitable for separate chunks of code.
Such problems interfere with students making the best of their own learning capabilities: students often invent programming plans that go beyond what they have been taught directly. Instruction designed to foster better learning practices could help students to acquire a repertoire of programming skills, perhaps with spinoffs having to do with “learning to learn.”
The chunking of code, was one challenge I faced with kids in the 80s. They used to write long strings and just add a command, try it, add another, and so on. We ended up calling that ‘spaghetti’ code. We talked about making ‘ravioli’ instead! 😉 Chunk it into meaningful pieces!
Afterbugs – Tiptoeing Back through their Thinking
The issue of giving up on errors, or bugs, I dealt with playfully. I wanted them to tiptoe back through their thinking. It became something delightful for them to seek bugs. Read how—here.
The Fingertip Effect: How Information-Processing Technology Shapes Thinking
Vol 14, Issue 7, 1985
“Contemporary beliefs about the impact of information-processing technology (IPT) on thinking are examined. Whereas some suggest that learning to program and other contacts with IPT will empower thinking, it is argued from both theory and evidence that typical contacts with IPT today do not meet certain conditions for significantly reshaping thought. Whereas others suggest that IPT will have a narrowing and dehumanizing influence, it is argued that the striking diversification of IPT now underway will eventually allow for many styles of involvement. In the long term, as this diversification spreads to nearly all aspects of society, thinking may change in certain basic ways as it has in response to literacy and print.”
Transfer of Cognitive Skills from Programming: When and How?
Gavriel Salomon, D. N. Perkins
Vol 3, Issue 2, 1987
“Investigations of the impact of programming instruction on cognitive skills have yielded occasional positive and many negative findings. To interpret the mixed results, we describe two distinct mechanisms of transfer–“low road” transfer, resulting from extensive practice and automatization, and “high road” transfer, resulting from mindful generalization. High road transfer seems implicated where positive impacts of programming have been found; insufficient practice and little provocation of mindful abstraction are characteristic of investigations not demonstrating transfer. Our discussion affirms that programming instruction can improve cognitive skills under the right conditions, but cautions that implementing such conditions on a wide scale may be difficult and that programming instruction must compete with other means of improving cognitive skills.”
Implications for Deeper Learning
I have written extensively about this issue of transfer—in this context of coding. There are great challenges associated with it. So the questions remain—how do you support it in your classrooms?
Read some thoughts about cognitive residue—this issue of transfer here and indeed here.
The Final Report of the Brookline Logo Project: Part ll
Seymour Papert, Daniel Watt, Andrea diSessa, Sylvia Weir
Research on Logo: A decade of Process
“Depending on the environment in which it is embedded, Logo can constitute a trivial enterprise or a variegated educational experience. We claim that few educational environments have shown as consistent benefits of such a wide scope from the development of academic knowledge and cognitive processes to the facilitation of positive social and emotional climates. Yet, somewhat paradoxically, realizing these multifarious benefits does not imply lack of focus: Integration into one or more subject matter areas maximizes positive effects. A critical factor, however, is a clear and elaborated vision of the goals of Logo experience shared among administrators, curriculum developers, teachers, and students. Such a vision provides a gyroscope that guides the myriad activities of educators: administration, curriculum development, lesson guidance, and moment-by-moment interactions with students.”
So, as Seymour Papert said, “If the role of the computer is so slight that the rest can be kept constant, it will also be too slight for much to come of it.” This from this wonderful 1987 Papert paper called Computer Criticism vs. Technocentric Thinking.
I applaud and welcome the enthusiasm of educators who are implementing programming (coding) with students. My hope for is that we will all take the time to visit, or revisit, some of the significant findings of the past—so that we are better prepared to move our students to deeper learning.
Great background about the giants whose research we rely on in our efforts to make ‘coding’ a rich experience today. When Clements says,
“Depending on the environment in which it is embedded, Logo can constitute a trivial enterprise or a variegated educational experience” it strikes me that we could swap in a lot of things for the word logo there – technology or otherwise. Context is so critical…not that I mean that logo isn’t powerful on its own…as you know I believe that it is! When you see the resurgence of coding now, what would you suggest to interrupt our natural tendency to repeat old practices rather than think of new opportunities? What, if anything, have you seen that is different now?
Agreed, Brenda. “Depending on the environment in which it is embedded…” relates to pretty well anything: inquiry, mathematics, science, collaboration, etc. So you are bang on! The research has been clear on that for years—from everything from learning Latin to doing ‘mind puzzles’.
You ask, “When you see the resurgence of coding now, what would you suggest to interrupt our natural tendency to repeat old practices rather than think of new opportunities?”
There are two approaches to that from my perspective.
One, is at a personal level. Each of us, as professionals, should be enthusiastic about new learning opportunities and experiences—but, that should be tempered with a critical eye and a questioning mind. We should actively build our background knowledge and not ignore those who have traveled the paths before. We should do more than praise the benefits of the innovation, but look for opportunities within it to deepen learning. And we should do this from an informed stance.
Two, is at a systemic level. We need to remind our well-intentioned colleagues to be more mindful whenever they are blinded by enthusiasm.
You also ask, “What, if anything, have you seen that is different now?”
When ‘coding’ first appeared on the scene in elementary schools in the late 70s and 80s, there were fewer constructivist technological tools. Also, we DID approach it differently—we were not so influenced by social media the ‘buzz’ of everyone having a device in their hands. It arose out of a pedagogical stance related to learning theory. It was approached enthusiastically, yes, but with a research agenda—with a view to analyzing how children learn it: the misconceptions, the transferability, the culture.
We also weren’t being sold a bill of goods by the corporate agenda. Yes, of course, there were a couple of awesome small companies creating and selling Logo—one of them was started by Seymour along with others. But, they were not corporate giants or entrepreneurial startups looking for a niche to make money. They dealt in substance—not glamour. No Logo Certified Educator stuff.
I’ll stop now. LOL 😉
Ah, Salomon & Perkins, Clements – brings back memories of my thesis http://www.academia.edu/2546241/Evaluating_the_Microworld_-_An_evaluation_of_predictions_made_by_Papert_about_learning_in_the_microworld So great to read your post and be reminded of the legacy of research that exists but also it is sobering to see old knowledge and ideas rediscovered again and again… And your idea of substance, not glamour, states the overarching goal very concisely, when it comes to children, computers and powerful ideas! 🙂
Ahhhh…I’m looking forward to reading that! From 1991! Wild, eh?
As you know, these psychology/cognitive science giants (among others) have shaped much of my thinking over the years. Many of them are still doing great work – like, John Seely Brown, Allan Collins, David Perkins, obviously Scardamalia and Bereiter. But, sure as heck miss Gabi and Seymour’s thoughts.
Brenda asks, “When you see the resurgence of coding now, what would you suggest to interrupt our natural tendency to repeat old practices rather than think of new opportunities? What, if anything, have you seen that is different now?”
What are your thoughts?
Ha! Be kind when/if you read that! It was the beginning of things for me, the beginning of my learning…
With regard to Brenda’s question, I am of two minds when I think about a response. The first thing I think of is more of a constructionist approach… I get mad at myself for not allowing other people the time to learn and explore and think… to make their knowledge their own from what is out there; that if they are going to understand, my own understanding is just that–a tiny piece of what might become a little part the web of their whole knowledge…
The other part of me asks eagerly: Okay, how long is that learning going to take? Time is ticking, students deserve the best, and there is knowledge already out there… sort of the same point at this post you wrote…
To me, I think it’s crucial think carefully about this question: “So you want your kids to code in school. Cool. Why? What exactly is the reason and what is the focus?” (that was the point behind this post: https://makelearn.org/2016/11/13/why-do-you-want-kids-to-code/) Hyperbole about the lack of programming jobs doesn’t help. It is also tricky to talk about programming and coding as a “new literacy’ because people might apply the same awful, linear, step-by-step process to “learning” that literacy as other domains were/are victim to such as mathematics and language and media. Yikes!!
To me, I’m think it’s important to grab the issue head on when working or talking with educators. Something like, “if you are looking for a quick guide to using coding in your program or a quick web site or tool to ‘get your students coding’ then your students will probably miss out on the most powerful aspect of learning to program.” Sadly, in incredibly busy and increasing demanding and complicated classrooms, these seems to be only a little time and it is usually the quick code.org type of approach; one hour. Done. I often sneak into an empty room at this point and scream or cry.
I try to be practical but then that approach edges on triviality and superficiality. I try to be more theoretical and historical and I lose people or run out of time… or I get sidetracked because going for substance takes time, effort and patience. Currently, I am trying to walk the fine line between these two and hoping that I get colleagues to join in and go for the gusto, not the quick, perfunctory treatment.
According to your las paragraph, it looks like we’ve tried the same strategies! LOL
You say, “to make their knowledge their own from what is out there;” — I like that too, with the emphasis on ‘from what is out there’!!