(Updated August 2016, May 2017)
I am very pleased that there is a growing sense in the education world of the connection between coding and cognition and learning. There is a mountain of research examining the various beneficial cognitive effects of learning computer programming. Great! But, I believe Seymour Papert would say that students learning computer programming is only part of the vision for higher quality learning today. I believe he would emphasize that when children learn computer programming, it should be used a vehicle for exploring, expressing and sharing personal ideas and passions. Used as such, programming is a versatile, personalizable approach… and chunks of code are created as constructable, interlocking objects which can be used to build things that can be shared and remixed.
In his 1980 book, Mindstorms: Children, Computers, and Powerful Ideas, he does not say that coding or programming per se is the answer to higher quality thinking and learning. But he does outline an environment, called a microworld, as the place where powerful ideas and strategic thinking can be developed. I see his microworld learning environment as the marriage of three key ideas (more detail here):
- the concept of ‘objects to think with‘
- the discipline of computer programming
- the theory of genetic epistemology
Papert believed that learning about concepts within a microworld learning environment would result in much higher quality learning, that is, a deeper understanding of concepts would result, more so than traditional learning environments. All microworlds must contain a ‘object to think with’ that serves as a focal point of thinking. Decades ago, Papert designed a robot, called a Turtle, that students could relate to both physically and emotionally. Students wanted to teach the Turtle new words in the microworld, such as SQUARE or CIRCLE, and, in so doing, the Turtle could move in more and more complex ways.
Usually, students ‘played Turtle‘ first by moving their bodies in the way they wanted the Turtle to move. Then, they tried to cause the Turtle to move in the same way that their bodies moved. As they broke down the steps in their own physical movements, this knowledge was captured and translated into code (in a programming language called LOGO) which was typed into the computer that controlled the Turtle. Initially, the Turtle did not move they way they wanted. They altered their code and the Turtle started to move more and more in the desired way. This cyclic process of continuous improvements in the code resulted in continuous improvements in the Turtle’s movements. Eventually, their initial movement goal was realized.
In this example, the Turtle is the physical object to think with, programming with LOGO functions as the cognitive tool, and the whole rationale for the activity is based in Piaget’s theory of how new knowledge is created in the mind (which he called genetic epistemology). In this case, the knowledge being built is knowledge about geometry. In a microworld, there is always a meaningful context for learning.
Another aspect that must be pointed out is that Papert is clearly making the case that as children are constructing their programs in the real world, cognitive structures are being constructed in their minds. And, in a way, vice versa. Additionally, children share and discuss their ideas which makes them more exciting and multi-dimensional. This kind of approach to teaching & learning is called constructionism. (For more about Papert’s enduring contributions to education, take a look at Mitch Resnick‘s tribute in his keynote from Scratch@MIT 2016 or this excellent TEDx talk by Gary Stager.)
Now that “coding” is once again popular, I am once again worried:
My constant worry is that the educational world will fixate on purely coding and programming.
Papert’s ideas are neither inaccessible nor out-of-date; they are worth learning about; they can be a powerful influence on the way we teach and the way we think about how children learn. There are already modern versions of the Turtle, such as LEGO Mindstorms, and modern versions of the geometry microworld, such as Scratch that students and teachers can successfully use in schools. One of my primary goals in educational technology is to promote the notion that if you want powerful, high quality learning, then technology must always be used in the service of learning or making or creating or designing. Coding for coding’s sake does have cognitive benefits but those benefits can be multiplied if coding tasks are contextualized, within a purposeful educational design, and within an effective learning environment.
Over the last few years, I have been trying to put together some example challenges that are directly connected to the Ontario curriculum. In this way, teachers might see how using the Scratch coding to learn environment can be directly, and deeply, connected to the real mathematical concepts underlying the intent of the curriculum.
Example Mathland Challenges:
Studio link: https://scratch.mit.edu/studios/3456807/
A final thought:
- Situating Constructionism by Seymour Papert and Idit Harel
- Piaget’s Constructivism, Papert’s Constructionism: What’s the difference? by Edith Ackermann
- Constructionism by Jonathan Ostwald
- A presentation I made with embedded resources and examples