What follows1 is a hypothetical conversation between two children who are working and playing with the computer. These and other experiments can happen every day—and they do.
- Let’s make the computer draw a flower like this.
- Do you have any programs we could use?
- Yes, there’s that quarter circle thing I made last week.
- Show me.
- It draws quarter circles starting wherever the turtle is.
- It needs an input to tell it how big.
- Let’s make a petal by putting two QCIRCLES together.
- OK. What size?
- How about 50?
A FIRST BUG
- It didn’t work.
- Of course! Two QCIRCLES make a semicircle.
FIX THE BUG
- We have to turn the Turtle between QCIRCLES.
- Try 120°.
- OK, that worked for triangles.
- And let’s hide the Turtle by typing HIDETURTLE.
IT’S A BIRD!
- What’s going on?
- Try a right turn.
- Why don’t we just stick with the bird? We could make a flock.
- You do that. I want my flower.
- We could do the flower, then the flock.
IT’S A FISH!
- The right turn is better.
- But we don’t know how much to turn.
- We could try some more numbers.
- Or we could try some mathematics.
MATH TO THE RESCUE
- Do you know about the Total Turtle Trip Theorem? You think about the Turtle going all around the petal and add up all the turns. 360°.
- All around is 360.
- Each QCIRCLE turns it 90. That makes 180 for two QCIRCLES.
- 360 altogether. Take away 180 for the QCIRCLES. That leaves 180 for the pointy parts. 90 each.
- So we should do RIGHT 90 at each point.
- Let’s try.
A WORKING PROCEDURE
- Four make a flower.
- That’s more like a propeller.
- So try ten.
A BUILDING BLOCK
- Typing all that ten times hurts my fingers.
- We can use REPEAT.
- There it is!
- But it’s too big.
- All we have to do is change the 50 in PETAL. Make it 25.
- If we let PETAL have an input we can make big or small flowers.
- That’s easy. Just do TO PETAL SIZE QCIRCLE SIZE, and so on.
- But I bet we’d get bugs if we try that. Let’s try plain 25 first.
- Then we can make a superprocedure to draw a plant.
ENDS BECOME MEANS
- I have a great procedure for putting several together. It’s called SLIDE. You just go, PLANT SLIDE PLANT SLIDE PLANT SLIDE.
TRYING THE NEW TOOL
- It would be better with small ones and big ones.
- So, change the procedure to accept inputs.
- And if we use RANDOM we can make a garden.
- My next project is a flock of birds.
- Maybe we’ll put the birds and flowers together.
- Make a flock by doing BIRD SLIDE BIRD SLIDE.
- I want six birds, and I’m going to use REPEAT.
- That’s funny. I wanted 6 birds all the same way up.
- But it’s neat. If we debug it, we should keep a copy like this.
- Walk through it like the Turtle.
- It starts facing north… draws a bird… now it’s facing east… that’s the bug.
- And the fifth is on top of the first.
- If you want to fix the bug, bring the Turtle around to face north after doing the bird.
- And let’s make them smaller.
- Here’s the flock.
- It’s not finished. Let’s give the flock inputs and put several together.
- How can we make them fly?
- I found something neat. In BIRD use SPIN instead of RIGHT… it’s got bugs, but it is pretty.
The next phase of the project will produce the most spectacular effects as the birds go into motion. But the printed page cannot capture either the product or the process: the serendipitous discoveries, the bugs, and the mathematical insights all require movement to be appreciated. Reflecting on what you are missing leads me to another description of something new the computer offers a child: the opportunity to draw in motion, indeed to doodle and even to scribble with movement as well as with lines. Perhaps they will be learning, as they do so, to think more dynamically.
Seymour Papert, Mindstorms, Children, Computers, and Powerful Ideas (Basic Books, Inc., New York, 1980), 73-93. ↩
Published on <o> future <o>, October 3, 2012.
- © 1980 Seymour Papert
The original version of this text has also been published in △⋔☼, №3, 10/2012, p.31-47.