Mindstorms

2020-05-03

Mindstorms by Seymour Papert is a book written in 1980 about how children can learn with computers - and learn to fall in love with learning along the way.

I read Mindstorms, and fell in love with the book. My own mind was besieged, stormed, and ultimately broken - only to be reforged anew like Andúril from the shards of Narsil (sorry, I'm re-reading Lord of the Rings right now). This post, after this short-I-promise expository intro, contains my book notes.

You may have heard of Papert's LOGO programming language before, which issues commands to an adorable round robot called a Turtle. Papert designed LOGO and the Turtle in the late 1960s to help children learn how to learn with computers. Here's a photo of Papert and his robotic operating buddy:

Papert

The popular Lego Mindstorms products are inspired by Papert and this book, along with many other cute robot learning toys for children, like my good friend Cozmo the Robot or the insanely cute Cubetto from Primo Toys:

Cubetto

When you conjure up an image of "learning with computers", you might think of a rote "quiz app" or "flashcard app" - but Papert suggests that it can be more -- more creative, more exploratory, more fun, and longer-lasting. I think about how I took Calc AB and Calc BC in high school, and I was pretty good at them, too, but I had no idea what I was really doing. I knew the mechanics, not the meaning. When Papert connects teaching the Turtle to move in a cirle and the principals of differential calculus -- measuring growth by movement at the growing tip -- all I can say is 🤯.

There's obviously also a reference to George Polya in here, too - always a good sign!

And now, onto the notes!

Learning with computers

  • Bricolage: creation from diverse range of things
  • Computers have the power to simulate. They can take 1000 forms and serve 1000 functions
    • Flexible enough so children can each create with them
    • Flexible enough to model the world
  • Remember: people seldom get things right on the first try
  • He is not recommending "computer-aided instruction" - like a quiz app
    • Instead, he envisions the child programming the computer!
  • Learning to program can be a natural process like language acquisition
  • Learning to communicate with a computer can change the ways we learn other things
  • Jean Piaget
    • Papert's mentor / teacher
    • "Learning without being taught" is perhaps Piaget's main idea
    • Piaget says that children build their own intellectual structures, models, and then evolve them over time when proven false
    • Children do thise all without being taught
    • "Child as builder"

Mathophobia

  • Mathophobia is endemic. To this day, if we see math, we avoid it.
  • But we often have no trouble with math knowledge if we don't perceive it as "math"
  • People's images of themselves as learners is contaminated by mathophobia
    • "I'm not a math person"
    • "I'm not artistic"
    • "I'm not musical"
    • As you can see, it dangerously spreads to other disciplines... "not an X person"
  • Mathophobia leads to insecurity and self-imposed restrictions, rather than a child's instinctive free exploration of the world
  • However, the computer can be a carrier of cultural germs and seeds whos intellectual products won't need a computer once they can take root in actively growing mind

The Turtle

  • "Body knowledge" - useful to think about things in relation to your body. Children do this instinctively
  • Children need an "object to think with"
    • This object is "the Turtle"
  • The Turtle is not a panacea, just a model for other objects not yet invented by the child
  • LOGO programming language is how children communicate with the Turtle
  • The Turtle serves no purpose other than being good to program and good to think with
  • Example LOGO commands
    • FORWARD 100
    • PENDOWN
    • RIGHT 90
    • PENUP
  • The idea of programming is done through the metaphor of teaching the Turtle a new word, like SQUARE or TRIANGLE
  • This is obviously fun, but also powerful learning is happening
  • Like other builders, children appropriate to their own use materials they find around them, mostly importantly the models and metaphors suggested by surrounding culture
  • Active, self-directed, recognizable personal purpose, source of power, doing something with knowledge --> all reasons to prefer using LOGO over watching educational programming on TV
  • Importance of learning systematic procedures and debugging them
  • Learning to be a master programmer is learning to become highly skilled at isolating and fixing bugs
  • Programs are not WRONG or RIGHT -> but they are fixable
  • Deliberately thinking like a computer is extremely valuable (step by step, literal, mechanical). Thinking like a computer is just one "style of thinking", and helps students understand that there are different ways of thinking.
  • Computers are not something that "rots our brains"

Teaching without curriculum

  • Doesn't mean free-form, spontaneous classrooms or simply "leaving the child alone"
  • Teaching without curriculum means supporting children as they build their own intellectual structures
    • Planting new constructive elements
    • Eliminating noxious ones
  • This is an ambitious task, and harder that a mere curriculum change
  • Educators should be anthropologists and work with the cultural materials of the time
  • He doesn't recommend BASIC as a learning language
  • BASIC is to computation what QWERTY is to typing
    • People say BASIC is easy to learn because of its small vocabulary, but that just gets extremely clunky when working on something more than just a toy problem

Why is it hard to change education

  • Radical change is possible, directly tied to the impact of the computer
    • Unfortunately, conservatism in the world of education is a self-perpetuating social phenomenon
    • But as individuals get computers, education can become a private act, an open marketplace, a Renaissance of thinking about education
  • Our culture has unneeded split between "humanities" and "science"
    • But Plato was both
  • Computer can break down this line
  • "Math" just means "learning" in Greek
    • e.g. "polymath" is a person of many learnings
    • "Mathetic" means "having to do with "learning"
  • Children begin their lives as eager and competant learners. They have to learn to have trouble with learning in general and mathematics in particular
  • Conservation of liquids example from Piaget
    • Children take a while to learn this principle
    • They have their own coherent world view (taller glass must have more liquid)
    • This model was spontaneously developed by them
  • Mathophobia limit's people's lives. Deficiency becomes part of their identity. It is a self-reinforcing taboo
  • "Cchool math" is not the same as "mathematics"

Turtle geometry

  • There are multiple types of geometry
    • Turtle geometry = computational (tracks Position and Heading of the Turtle)
    • Euclidean geometry = logical (tracks Position and Point)
    • Descartes geometry = algebraic
  • Geometry arises when child asks "How can I make the Turtle draw a circle?"
    • A good teacher doesn't answer the question, but encourages the student to act it out. Literally, to have the child "play Turtle" themselves. What steps do they take to move in a circle?
  • Learning to "program computers" is done by teaching the Turtle a new word (aka subroutine / function) like CIRCLE, SQUARE, TRIANGLE
  • Along the way, students learn about modularity and state
  • Don't forget the error - instead study the bugs!
  • Try to make sense of what you want to learn
  • Syntonic learning
    • The Turtle is body syntonic - firmly related to child's sense and knowledge about their own bodies
    • Also is "ego syntonic" - the Turtle is coherent with child's sense of themselves with things like (e.g. intentions, goals, desires, dislikes)
  • Turtle geometry is learnable because it is syntonic.
  • Turtle geometry encourages deliberate use of problem-solving
  • George Polya
    • Came up with a general method for problem solving
    • Turtle geometry lends itself well to Polya's methods (e.g. "look for something like it")
    • Turtle geometry is great for learning heuristic thinking
  • Disassociative learning is something like memorizing the multiplication tables
  • Bill, a fifth grader, suggests this unfortunate way to learn multiplication tables
    • "Make your mind a blank and saying it over and over until you know it"
  • Turtle geometry on the other hand has rhythm, movement, navigational knowledger
  • Differential Calculus
    • Differential calculus is ability to describe growth by what is happening at the growing tip
    • Newton modeled the motions of the planets with it
    • The Turtle's circle program ( FORWARD 1, RIGHTTURN 1) is a set of DIFFERENTIAL instructions!
  • Many students come to Turtle geometry hating numbers as alien concepts, and leave it loving them. For example, angles.
    • Turtle geometry shows students that angles have body syntoncity with compass navigation. The Turtle parallels this
  • Idea of a "variable" in programming: using a symbol to name an unknown entity
  • Idea of "recursion" in programming: a never ending process.
    • Kids already love the idea / fantasy of something "going on forever" (with 2 wishes, always use the second wish to wish for two more wishes!)3
  • The Total Turtle Trip Theorem
    • If a Turtle tasks a trip around the boundaries of any area and ends up in the state in which it started (direction and place), then the sum of all the turns will be 360 degrees
  • One learns to enjoy and to respect the power of powerful ideas. One learns that the most powerful idea is the idea of powerful ideas.
  • Computers can influence the language we use to talk about ourselves (e.g. input, output, feedback)

Structure programming

  • Learn to write subprocedures, aka "mind-sized bites"
  • It's possible to build a large intellectual system without ever making a step that cannot be comprehended, using hierachy of subprocedures
  • Example of teaching the Turtle to draw a person can use multiple subprocedures, each of which is easily understood
  • Computers give enough flexibility and power so that child's exploration can be genuine and their own
  • "Brute force" would be trying to have the Turtle draw the person without any subprocedures - the straight line approach.
  • Brute force with no internal structure is not a good model for computer programming
  • For example, in real life, juggling is actually composed of many subroutines
  • Introduces notion of timing: `* parallel processes vs serial processes
  • Introduce notion of condition logic with The "WHEN demon"
  • "When something happens, the demon pounces out and does its own action"

Debugging

  • Children seem to have a resistance to debugging
  • They would rather "throw it out" and start over
  • Seemingly, they want to do it correctly in one shot
  • We can empathize, because a bug seems like WRONG or MISTAKE or BAG
  • Kids like that computers can remove any trace of their errors
  • But errors and debugging are good!
  • We must learn to study what happened and understand what went wrong. Through that understanding, we can fix the bug.
  • Computers will help children "believe in" debugging
  • Contact with LOGO and the Turtle eventually, gradually, underminds the long-standing resistance to debugging and subprocedures
  • With LOGO, the teacher is also a learner, and everyone makes mistakes
  • Children know when teacher "fakes it" with "let's try this one together" - they see right through this.
  • But LOGO makes that situation feel genuine, because the teacher is trying to figure it out, too, and they make mistakes together
  • Real intellectual collaboration - together they try to understand the computer and get it to do what they want
  • Affirmation of the power of ideas and the power of the mind!

CS Primer Show

A podcast about computer science and computer science education

Fahrenheit 52

Read the stories Listen below