Skip to content

Great Minds

Seymour Papert and Logo: why building things helps you learn

Seymour Papert created Logo so children could learn maths by programming a turtle. What constructionism means, what research shows, and a physics build.

By Fermi Editorial

5 min read

Girl building a small robot from a kit
Anna Khromova / Unsplash

Seymour Papert believed children should program computers, not be programmed by them. In the late 1960s, when computers still cost hundreds of thousands of dollars, he came up with Logo, which MIT News calls the first programming language for children. Kids programmed the movements of a "turtle", either a small robot or a shape on the screen, and in the process met ideas from geometry, physics and logic.

Who was Seymour Papert?

According to the MIT News obituary, Papert was born in 1928 in Pretoria, South Africa, and earned a PhD in mathematics there before a second PhD at Cambridge. He then worked in Geneva with the psychologist Jean Piaget, whose ideas about how children make sense of the world changed Papert's view of learning. He joined MIT in 1963, became co-director of its Artificial Intelligence Lab alongside Marvin Minsky, and in 1985 became a founding faculty member of the MIT Media Lab. He died in 2016, aged 88.

His 1980 book *Mindstorms: Children, Computers and Powerful Ideas* argued against "the computer being used to program the child." Instead, Papert wrote, the child programs the computer and in doing so gains "a sense of mastery over a piece of the most modern and powerful technology" and contact with "some of the deepest ideas from science, from mathematics, and from the art of intellectual model building" (quoted in MIT News). LEGO later named its Mindstorms robotics kits in recognition of the book.

What is constructionism?

MIT News sums up the central tenet: people build knowledge most effectively when they are actively engaged in constructing things in the world. As early as 1968, Papert suggested that programming and debugging could give children a way to think about their own thinking.

In "Situating Constructionism", Papert and Idit Harel note that it is easy to reduce the idea to a catchy slogan such as "learning-by-making". The fuller idea is that learning builds knowledge structures in your head, and this happens especially well when you are consciously building something outside your head that others can see, "whether it's a sand castle on the beach or a theory of the universe."

What does the research say about learning by making?

Two strands of evidence are worth holding together.

First, does learning to program help thinking beyond programming? A 2019 meta-analysis by Scherer and colleagues pooled 105 studies and 539 effect sizes. It found a moderate overall transfer effect (g = 0.49): stronger for skills close to programming (0.75) and moderate for more distant skills (0.47), including creative thinking, mathematical skills and metacognition. School achievement and literacy benefited least. Effects were also larger when the comparison group did nothing than when it did another activity, and larger in published studies than in unpublished ones, so the true effect is probably smaller than the headline.

Second, building without help is not enough for beginners. A review by Kirschner, Sweller and Clark (2006) argued that minimally guided discovery is less effective than instruction with strong guidance, until learners have enough prior knowledge to guide themselves. This is a critique of unguided discovery in general, not of Papert in particular, but it tells you how to use his idea: build, with a clear goal and help when you are stuck.

A weekend build: simulate a projectile

Here is a constructionist project for Class 11 kinematics that needs only a spreadsheet or a few lines of Python. You will build a model, test it against the formula, and debug it, which is the habit Papert cared about.

  1. Set up. Launch speed u = 20 m/s at 45°, g = 10 m/s². Starting velocities: vx = vy = 20 × cos 45° ≈ 14.14 m/s.

  2. Choose a time step. Let dt = 0.1 s.

  3. Write the update rule for each row: x = x + vx × dt; vy = vy − g × dt; y = y + vy × dt.

  4. Run until y drops below zero and read off x. That is your simulated range.

  5. Predict before you check. The formula R = u² sin 2θ / g gives 400 × 1 / 10 = 40 m.

  6. Debug the difference. Your model will be slightly off. Halve dt to 0.05 s and run again. Does the error shrink? Why does updating vy before y change the result?

  7. Extend it. Add air resistance as a force opposite to velocity. Now no simple formula exists, and your model is the only way to answer the question.

Step 6 is the most valuable. Explaining why a step size causes error teaches you more about what velocity and acceleration mean than another round of formula practice.

For more on what simulations add and where they fall short, read what interactive simulations are good for. The Feynman technique is another way to build something, an explanation, that exposes gaps. Parents can find ideas in encouraging curiosity at home.

Before you code your own model, it can help to play with one. The Fermi Simulation Lab has interactive simulations for ideas that are easier to see than to read.

About the author

More from Fermi

More in Great Minds