Turtle Geometry

Turtle Geometry is a tried and true pedagogical programming concept developed by Seymour Papert et al at MIT - and extensively researched and applied in a variety of implementations.

The implementation used in George is based on a modern-day real-world programming language - thereby making possible continuous growth; from basic turtle commands, all the way to professional programming.

And while the children are seemingly "just" learning programming, what they are really learning is much more profound:

And along the way, they will also pick up a few words of English, a bit of math, spacial and geometric "feel", and more.

From past to present

Seymour Papert first published the book "Mindstorms - Children, Computers, and Powerful Ideas" in 1981. In it he describes a powerful pedagogical concept: Turtle Graphics, and how systematically exposing children to it, allowing them to gradually explore and develop through it, infers great cognitive benefits. It stimulates and develops the child's understanding of math and science. It trains them in thinking through a problem, breaking it down, and then solving it. It encourages systematic "procedural" thinking. It teaches "debugging": the ability to say "This wasn't the result I expected. How might I change it, try again, get what I want.", rather than "This was wrong." Turtle Graphics give children cognitive tools to better understand the world around them.

It is now almost 40 years since Papert et al started developing the original Turtle Graphics environment built on a programming language called Logo. They did extensive research and testing with groups of children, both in and out of MIT Labs. A variant of the environment was developed for the early Apple computers of the 80s, and many children got to experience the creative process, joy, and skill development this brought.

Then it sort of ... faded away ...

In the meantime we have had an unprecedented technical and socio-economic development, such that every child has direct and personal access to computing power and technology which one could only imagine and dream of in the 80s. If anything, one might argue that children of today have to much access to computers, while at the same time doing very little meaningful with them. Certainly they are not utilizing much of the educational potential inherent in this technology - at best consuming and producing, not so much creating, learning, developing.

In recent years some attempts have been made to revive and build upon the work of Seymour et al - most notably the software package Scratch, and Lego's product Mindstorms Robotics.

Yet many of the basic principals and ideas behind Logo and Turtle Graphics are not available in these packages, and have not yet been implemented and adopted as part of mainstream children's schooling or education.

On George

George is a plattform for creating and learning, programming and playing games. Turtle Geometry is an app built into George. George is open source and free. Simply download, install and start the program on Windows or Mac, and you are ready to create, learn, have fun.

Dear teacher

The true power of Turtle Graphics (TG) lies in the child being allowed to struggle with problems and discover solutions for himself. As a teacher it is very tempting to suggest a solution to the child, but that would undermine the whole goal of TG.

In stead the teacher's role should be that of a fellow explorer; helping the child explore and better understand the problem through questions and dialog; helping the child think about and discover how the problem might be broken down into manageable pieces.

Trust the process. Children are of course very different: Background, knowledge and understanding, fearlessness and confidence, spacial and procedural thinking. In other words, some children might quickly arrive at complex and amazing results, while others might need a lot of time with the basics. Even though some children might seem to be stuck at a certain spot or level of mastery for a long time, it does not mean that the child isn't developing.

Therefore many of the projects are deliberately "open ended", allowing each child to reach a level of personal satisfaction with whatever he achieved: One child might "draw a house" simply as a rectangle with a triangle on top, while another child might "draw a house" as a complex structure with doors and windows, roof, chimney, garage, and even adding 3D dimensionality. And while the first house will seem simple by comparison, keep in mind that even such a simple program is more than 99.99 % of the children of the world have ever done!

Iterations and debugging

One of the things I love most about programming is the possibility to "iterate". I love that I can start with a tiny piece of code - perhaps just a single command - run it, and see the result. Then change it, or perhaps add to it, run it, and see the result. And through this very gradual process arrive at a powerful and amazing result. In a way "growing" your program. This is how Turtle Geometry on George itself was grown, and it is still being developed and improved.

This also allows me, you, and the children to "debug" your code as you grow it. There is no "wrong" answer or result when you program. Your code may simply not do as you expected it to do. And so you simply try to find out why - discover the "bug" in your code - and change it (perhaps repeatedly) until you arrive at your expected or wished-for result.

This mental shift from "What I did was right/wrong" to "What can I change to get the result that I want." is immensely powerful. And it is applicable in just about any facet in life: "I can never get the ball into the basket." becomes "What might I try to change to get the ball into the basket?"
"I am never able to close a sale." becomes "What might I try to say or do differently to close more sales?"
"I don't understand a word of French." becomes "How might I gradually learn to understand and speak French?"

In a word: Debugging.


So, without further ado...

Go download and install the program on the computer of your student or child, and, together with the child,

  1. start "Turtle Geometry",
  2. open an "Input",
  3. enter (forward 100), and press "Eval".

This page last updated: 2017-03-05