Scratch is a miracle. It’s popularity as a creative computing environment and its ubiquity around the world are truly impressive. Millions of children use the environment and have shared tens of millions of projects for others to enjoy and remix.

Scratch is a descendent of the Logo programming language. Logo was the first, and I would argue best, programming environment ever designed for children and learning. Logo is over fifty years old. While this would seem to be a million years old in technology years, Logo not only remains powerful in the hands of children, but benefits from a half-century worth of research, project ideas, and collective pedagogical wisdom.

Scratch adds media computation to the Logo bag of tricks available to kids. The sort of storytelling projects created in it appeals to adults who value kids being engaged in creative acts. A large part of Scratch’s appeal is the enormity of its project library full of projects that look like anyone can make them. It is also worth remembering that Scratch was originally designed for use in afterschool programs where teaching could not be guaranteed. Kids look at Scratch and know what to do. These are powerful and legitimate design features that contribute to its popularity.

Logo on the other hand was designed as a vehicle for education reform and created a “microworld” in which children could be mathematicians rather than just be taught math. Kids using Logo often fell in love with mathematics and felt intellectually powerful for the first time. Logo introduced the concept of the turtle, a representation of the child’s place in physical space, and turtle geometry, a math connected to movement in the real world. The turtle matched the intensity of children, captured their imagination, and was their collaborator in constructing mathematical knowledge. In 1968, Alan Kay first imagined the Dynabook, the progenitor of the modern laptop or tablet computer, after observing children programming in Logo. Kay recalls being amazed by the sophisticated mathematics young children were engaged in. Fifty-two years later, I feel the exact same way every time I use Logo with children.

*Today, a 5th grader came bounding up to me to announce, “Look what I accomplished!” She had taught the Logo turtle to draw a fraction, a bit of curricular detritus that normally invokes dread. In the process, she simultaneously demonstrated understanding of fractions, division, angle, linear measurement, and was on the verge of understanding variables all while teaching the turtle to draw. Turtle geometry may be the greatest mathematical prosthetic ever invented for learners. Logo creates a Mathland in which “messing about” and learning mathematics is as natural as a child develops oral language.

Math is the weakest link in every school. It remains the center for misery and instructionism in most. Seymour Papert taught me that the teaching of math ultimately jeopardizes all other efforts at educational progress. There is no gap as wide as the gulf between mathematics – a jewel of human intellect, and school math. Papert believed that even the most progressive schools become undone by the traditional diet and pedagogy of school math. He often discussed the need to create a mathematics children can love, rather than inventing tricks for teaching a “noxious” irrelevant math. Papert convinced me that no matter how project-based or student-centered a school happens to be, there remains a part of the day or week (math time) when coercion is reintroduced into the system. That is ultimately coercive to the nobler aims of the institution. Logo is and has been one of the few Trojan horses available for helping teachers rethink “math” on behalf of the kids they serve.

I fear for the future of such experiences in a world in which software has no value and there is no incentive for modern Logos to be created.

I just spent several hundred words stipulating that Scratch is a good thing. However, decisions were made in the evolution of Scratch that undermine its ability to make mathematics comprehensible, wondrous, relevant, and accessible for learners of all ages. Scratch could maintain fidelity to the powerful ideas inherent in Logo while adding all of the storytelling, animation, and media manipulation in a Web-based programming environment, but the designers of Scratch have decided to do otherwise. In fact, the most recent version, Scratch 3.0, has made it either too difficult or impossible to create the sorts of experiences I desire for my grandchildren and the children I’m privileged to teach.

I truly do not wish to step into the minefield of arguing about everyone’s favorite software, but my concerns are legitimate. I know readers may be thinking, “Hey, design your own software if you love Logo so much!” This is impossible in a world in which software has no value and there is no incentive for modern Logos to be created. Scratch benefits from mountains of government, university, and corporate funding, making it the 900-pound gorilla in coding for kids. That’s a good thing, but it could be better. My hope is that as Scratch evolves, consideration is given to bringing back some of the powerful mathematical ideas that have been lost.

Let me get specific. The following examples are a non-exhaustive list of the ways in which Scratch makes my life more difficult as a teacher and teacher educator concerned with providing authentic mathematical experiences.

Putting the turtle out to pasture
Perhaps the most enduring and kid-imagination-capturing metaphor of Logo programming goes like this:

[Teacher] “The turtle has a pen stuck in its belly button. What do you think happens when it drags its pen?”

[Kids] It draws!

This sounds simple, but is at the heart of what makes Logo a powerful, personal experience. Placing a transitional object representing ourselves inside of the machine is an instant personal invitation to programming. Drawing, with a crayon, pencil, or turtle is the protean activity for representing a child’s thinking.

Drawing or painting with the mouse is fine but denies children opportunities to express mathematical formalisms in service of drawing. There is fifty years’ worth of scholarship, joy, and powerful ideas associated with turtle graphics – often a user’s first experience with thinking like a mathematician and debugging.

Scratch 3.0 inexplicably demotes its pen blocks (commands) to software extensions. The extensions are hidden until the user un-hides them. All of the other Scratch 3.0 extensions support either external hardware control or more advanced esoterica like interactive video, language translation, or text-to-speech functionality. I appreciate that part of Scratch’s success is its clean design and lack of clutter. However, pen blocks are seminal and were integrated into previous versions. This design decision has several negative consequences.

  • It complicates the possible use of turtle graphics by requiring finding the location of the extensions button and clicking on the pen extensions
  • It implies that turtle graphics (drawing) is not as valuable a form of expression as animation.
  • The symbol on the extensions button is highly non-intuitive.
  • The pen blocks, once the extension is loaded, appear near the bottom of the block palettes, far from the motion blocks they rely on. This makes block programming cumbersome when the focus is turtle geometry.

The turtle has a pen stuck in its nose? Ouch!
In Scratch, the sprite draws from the perimeter of its shape, not its center. This makes precise movement, predictions about distances, and drawing precision much more difficult.

There are no turtle costumes for sprites
The turtle head points in the direction that matches “Forward” commands. This is obvious to even the youngest programmers. In Scratch, even if one wanted to use the turtle, there are no turtle costumes. Neither the turtles found in systems, like Turtle Art, MicroWorlds,  Lynx , or even the old 70s-80s era turtle  are provided. While it is possible to design your own Scratch costumes, you would be required to do so for every project, rather than merely adding sprite costumes to the system.

It is easy to explain that the “turtle may wear other costumes you design,” telling the kids that “the sprite could be a turtle that you can dress in custom costumes,” adds needless complexity.

No Clean, CG, Home, or CS
Nearly every other version of Logo has a Clean command for erasing the screen, CG, or CS for erasing the screen and repositioning the turtle at the center of the screen with a compass orientation of zero. Commonly found, HOME commands, send the turtle back to the center of the screen at coordinates, [0 0]. These are all simple concepts for even young children to quickly grasp and use.

Scratch’s pen extension Erase All block wipes the screen clean, but neither returns the sprite to home nor reorients a “dizzy turtle.”

Program for clearing the screen and sending the turtle/sprite home

Sure, if a teacher wants students to have a block performing the roles of Clearscreen, Scratch allows them to Make a Block.

The problem with doing so is that Scratch leaves the blocks you create, complete with their instructions, in the blocks palette – cluttering up your workspace. The definition of the “new” block cannot be hidden from users, even when the new block appears under My Blocks. Even more critically, there is no simple way to add pseudo-primitives (user-created blocks) to Scratch 3 for use by students each time they use the software. Therefore, you need to recreate Clearscreen in every new project.

[Making your own blocks is buggy too. Make your own block. Drag that stack of blocks, topped by Define, off the screen to delete it. Press Undo (Apple-Z or CTRL-Z). The definition stack of blocks returns, but not the new block under My Blocks until another block is created.]

The default sprite orientation is 90
When you hatch a sprite in Scratch, its orientation is towards the right side of the screen with an orientation of 90. If one hopes for children to construct understanding of compass orientation based on Mod 360, orienting the sprite/turtle to 0 is more intuitive. Since the turtle is a metaphor for yourself in space, your orientation is up, or 0 when facing the computer to program it.

No wrapping
For many kids, one of the most intoxicating aspects of turtle graphics comes from commanding the turtle to go forward a large number of steps. In many ways, it’s a kid’s first experience with big numbers. Turn the turtle and go forward a million steps and get a crazy wrapping pattern on the screen. Add some pen color changes, turns, and more long lines and math turns into art turns into math.

Scratch has no wrapping due to its focus on animation and game design. There could be a way to toggle wrap/no wrap. But alas…

Units are unnecessary
Not only are they unneeded, but educationally problematic. Far too much of math education is merely vocabulary acquisition, often devoid of actual experience. I go into countless classrooms where I find a store-bought or handmade “angles” poster on the wall listing the various kinds of angles. My first question is, “Who do you think is reading that?” The kids certainly aren’t, but more importantly, “Who cares?” Kids are forced to memorize names of angles too often without any experience with angles. Turtle geometry changes all of that.

If you watch me introduce turtle geometry to children, I show them that the turtle can walk and turn. It walks in turtle steps. I never use the terms, angle or degrees, until either kids use them or much much much later. After kids have experience with angles and a growing intuition about their units of measure will I mention the words, angle or degrees. After experience, those labels hang nicely on the concepts and the terms are understood, not just parroted.

In Scratch, the turn right and turn left blocks include the label for “degrees.” This is quite unfortunate. The design of these blocks is particularly odd since they do not even use the words, right and left, but arrows instead. This is most peculiar when juxtaposed against the rest of the motion blocks which are excessively chatty with extraneous text for their inputs.

Why use symbols for right and left and not a straight arrow for move?

To make matters worse, the default degree value in Scratch is 15. Kids naturally turn in 90 degree increments. If the default were 90, as it is in Turtle Art, kids quickly realize that there are turns smaller and larger when seeking angular precision. This is a much more effective sequence for understanding angle measurement from the syntonic to the abstract.

One tacit, yet profound, benefit of teachers teaching with Logo is that they gain experience teaching mathematics without front-loading vocabulary. In too many classrooms, kids are “taught” terms, like degree or angle, absent any experience. Logo-like environments offer the potential for teachers to appreciate how students may engage in mathematics unburdened by jargon. After children enjoy meaningful experiences and “mess-about” with the turtle, it is easy to say, “that’s called an angle,” or “the units used to measure angles are called degrees.” Those terms now have a powerful idea to hang their hat on.

Starting with units is not just unnecessary, it’s pedagogically unproductive.

Asymmetrical movement
Why are there blocks for turning right and left when there is only one move block? In Logo, Forward (FD) and Back (BK) are incredibly simple for children to understand and act out by playing turtle as a formal activity or in the course of programming. Move is ambiguous. Which way should I move? Forward and back make perfect sense.

Frankly, having a default of 10 in the move block is also a drag. For decades, teachers have experienced success by asking children, “How far would you like the turtle to go?” Kids suggest values and then are surprised by them. 10 is an arbitrary number. I might prefer 0 or a random integer as the default value for move. Such a change would force children to make a decision about the distance they wish to travel.

If you want the turtle to move backward, there is no back block. You are required to turn 180 degrees or move by a negative value.

Premature use of negative numbers
Introducing negative numbers and vectors the moment one encounters the turtle is premature and likely developmentally inappropriate. There is no reason for little kids to deal with negative numbers so soon when forward (fd) and back (bk) blocks could have been in the system, or at least as primitives under the pen extensions.

Multiple forwards provides kids practice with repeated addition, leading to multiplication.

Consider this simple example:

fd 20
fd 30
fd 100

Now you want the turtle to return to the midpoint of that line segment.

You can achieve that goal three ways, not including all of the repeated addition that might be used if a kid is not ready to divide 150 by 2 or figure out that a U-turn equals 180 degrees.

bk 75
rt 180 fd 75
fd -75

It is the possibility of solving even simple problems in multiple ways that is central to the genius of learning to think mathematically with Logo and the turtle. Sadly, the Scratch use of “move” to replace forward and back makes what was once a natural simple act, complicated or impossible.

PS: One more annoyance
Why are ask and answer in the Sensing palette? They get information from a user, but do not sense anything. Either move them or rename the Sensing palette, Data. Again, why lead the witness with the arbitrary “What’s your name?” value?

This was largely written after a recent day teaching kids. I spent months deciding whether to share this with the world. The great Cynthia Solomon contributed to my thinking and Sylvia Martinez read a draft. Seymour Papert is in my head all of the time.


  • Scratch – web site for Scratch software
  • ScratchEd – online community and resources for teachers teaching with Scratch
  • LogoThings – Cynthia Solomon’s collection of artifacts on the history of Logo
  • A Modest Proposal – ideas for using Scratch to learn computing and reading
  • Lynx – web site for new generation of Web-based Logo
  • MicroWorlds – web site for MicroWorlds software
  • Turtle Art – web site for Turtle Art software
  • The Daily Papert – archives of Seymour Papert writing, audio, and video
  • The Logo Exchange – archives of the long-running journal for Logo-using educators
  • Logo history discussion – video interview with Cynthia Solomon and Wally Feurzig, two of Logo’s creators

Selected bibliography

  • Abelson, H., & DiSessa, A. A. (1986). Turtle geometry: The computer as a medium for exploring mathematics: MIT press.
  • Harvey, B. (1982). Why logo? . Byte, 7, 163-193.
  • Hawkins, D. (2002). The informed vision; essays on learning and human nature. NY: Algora Press.
  • Newell, B. (1988a). Turtle confusion: Logo puzzles and riddles. Canberra, Australia: Curriculum Development Centre.
  • Newell, B. (1988b). Turtles speak mathematics. Canberra, Australia: Curriculum Development Centre.
  • Papert, S. (1972). Teaching children to be mathematicians versus teaching about mathematics. International Journal of Mathematical Education in Science and Technology, 3(3), 249-262.
  • Papert, S. (1993). Mindstorms: Children, computers, and powerful ideas (2nd ed.). New York: Basic Books.
  • Papert, S. (1999). Introduction: What is logo and who needs it? In LCSI (Ed.), Logo philosophy and implementation (pp. v-xvi). Montreal, Quebec: LCSI.
  • Papert, S. (2000). What’s the big idea? Toward a pedagogical theory of idea power. IBM Systems Journal, 39(3&4), 720-729.
  • Papert, S. (2002). The turtle’s long slow trip: Macro-educological perspectives on microworlds. Journal of Educational Computing Research, 27, 7-27.
  • Papert, S. (2005). You can’t think about thinking without thinking about thinking about something. Contemporary Issues in Technology and Teacher Education, 5(3), 366-367.
  • Watt, D. (1983). Learning with logo. New York: McGraw-Hill Book Co.
  • Watt, M., & Watt, D. (1986). Teaching with logo: Building blocks for learning. NY: Addison-Wesley Publishing Company.

The Papert articles (above) are available here.

Veteran educator Dr. Gary Stager is co-author of Invent To Learn — Making, Tinkering, and Engineering in the Classroom and the founder of the Constructing Modern Knowledge summer institute. He led professional development in the world’s first 1:1 laptop schools and designed one of the oldest online graduate school programs. Learn more about Gary.

I’ve been meaning to share this project idea with Josh Burker, author of The Invent to Learn: Guide to Fun and the Invent to Learn: Guide to More Fun books, for more than a year.

While on one of the fabulous London Walks tours (I’ve done dozens of them) of Chelsea in London last year, I learned that before houses had street numbers assigned to them, people shared cards with a rendering of their home’s fanlight depicted on it. This practice dates back to 1720.

The function of the fanlight is to light a home’s entry way, but many of London’s upscale townhouses feature a semicircle shaped fanlight in which a geometric pattern exists. Each pattern needs to be different, at least in a particular neighborhood, in order to depict the occupants of the home for deliveries and visitors. Below are some of the photos of fanlights I took while walking around Chelsea.

Here’s the project idea…

  • Use your favorite dialect of Logo (Turtle Art, SNAP!, Scratch, etc…) to design a unique fan light. Teachers may support the activity by providing the code for drawing a uniform semicircle in which each student’s fanlight pattern must fit.


This is a good project for employing the concept of state transparency; in programming as in life, it is a good idea to return to where you started. Returning the turtle to its initial starting position and orientation allows you to repeat the pattern elsewhere on the screen and perform various transformations on it.

Try these challenges

  • Use Logo/MicroWorlds/SNAP!/Scratch to program the turtle to draw a row of townhomes with different fan lights in each window.
  • Change the scale of your entire neighborhood.
  • Change the scale of your fanlight window without altering its shape.
  • Allow the user to specify the scale of the fanlight and draw it to that scale.
  • Create a more abstract illustration using your fanlight in different ways.

That’s it!

Happy programming
































Gary S. Stager, an award-winning teacher educator, speaker, consultant and author who is an expert at helping educators prepare students for an uncertain future by super charging learner-centered traditions with modern materials and technology. He is considered one of the world’s leading authorities on learning-by-doing, robotics, computer programming and the maker movement in classrooms. Dr. Gary Stager is co-author of Invent To Learn — Making, Tinkering, and Engineering in the Classroom and the founder of the Constructing Modern Knowledge summer institute. He led professional development in the world’s first 1:1 laptop schools and designed one of the first online graduate school programs. Learn more about Gary here.

Two-Day Seminars with Will Richardson in October 2019 in DC, NJ, & Boston – Register today!

Hate to be a killjoy, but I just looked at one of the activities for programming turtle graphics in App Lab.

As someone who has taught various dialects of Logo to kids and teachers for 34+ years, I was horrified by the missed learning opportunities and design of the activity. My concerns are in lesson/interface design and lost learning opportunities.

First of all, you connect any blocks and then hit Next. It doesn’t matter if you solve the actual problem posed or not.

Second and MUCH more importantly, ALL of the power and intellectual nutritional value of turtle geometry is sacrificed in order to teach a much simpler lesson in snapping blocks together in service of “efficiency.”

The power of turtle geometry is well – geometry, also measurement, and number. There are no numerical inputs to the turtle geometry blocks and all of the turns are in 90 degree increments.

The use of Javascript (presumably the blocks were added to the environment for this exercise and are not actual primitives) adds needless and confusing punctuation to the command structure WITHOUT the benefit of allowing users to change the input to FD or LT. Therefore, any opportunity to explore powerful mathematical ideas

As we approach the 50th anniversary of Logo and are celebrating the 35th anniversary of the publication of Mindstorms – Children, Computers, and Powerful Ideas, it sure would be nice if would learn some fundamental lessons of children, computers, and powerful ideas instead of depriving kids of an opportunity to learn mathematics while learning computer science.


Since posting the above statement to a CS discussion forum on Facebook, Hadi Partook – founder of responded as follows.

Gary, the goal of this course isn’t to teach turtle programming. Most of the students in our course sequence would have done that years earlier. This is a high school course to introduce students to JavaScript (including the syntax) and making apps. It begins with a few turtle stages because turtle programming would be familiar to these students as a concept fully explored in our CS Fundamentals courses – including all the geometric glory you mention, and problems that tell you whether you solved them or not. In our high school course the theme isn’t “solving puzzles” because it’s about “making apps,” with just a few turtle examples to carry forward from something students already know.

Hadi, I wish I shared your optimism that kids in your high school courses had experience with turtle geometry. I found the design of this unit clickable with very little nutritional value, especially since its web-based design implies little teacher interaction or scaffolding. If the turtle “blocks” used in the example are merely an exercise in sequencing, then they need no punctuation on them whatsoever. If I desired to change the angle or linear units, there was no way to do so (at least no way obvious to me).
Therefore, from a design perspective, there are several problems with the lesson. They include:
  • Low engagement
  • Limits on student creativity, exploration, and tinkering
  • A missed opportunity for students to learn/use mathematical ideas while learning Javascript
I am NOT asking that the lessons yell at kids for being wrong or test them along the way. That would make things worse.

Last Friday afternoon I experienced one of the most joyous moments of my thirty years in education. I took three fifth grade girls (along with their classroom teacher chaperone) out to lunch. That’s right. We walked right out the front gate of the school, into the sunlight, crossed the street, walked down the block and had a leisurely 90-minute lunch at the restaurant of their choice – regrettably the crime against gastronomy (and pizza), California Pizza Kitchen.

A few weeks earlier, I had challenged the 5th graders to write a computer program in MicroWorlds EX that would draw fractional representations of a circle for any fraction a user requested. Feeling a bit cheeky, I said that I would buy lunch for the first kid or group of kids to write a successful program. After a few class sessions dedicated to the challenge, three fifth grade girls were the first to succeed.

I know. I’m a hypocrite.

I reject behaviorism and its evil friends; grades, punishment, bribes and rewards. However, this felt different. The kids were going to join me for lunch like colleagues celebrating an accomplishment. Best of all, their classmates continued working on the programming challenge, without hard feelings, even after “winners” had emerged. Perhaps they knew that their turn would come. I routinely bring treats from my travels into the classroom. If I worked in an office, I might stop occasionally and buy Dunkin Munchkins for my co-workers. I do the same with my students. Why not?

I loved telling the girls that they could order anything they wanted and learning about their dietary habits and favorites. Conversation covered sick babies, interior decorating, roller coasters, face blindness and Khan Academy. The last two topics were introduced by a girl who matter-of-factly stated, “I watch 60 Minutes.” I was jealous of their classroom teacher who knew more about their parents, siblings, friends and neighbors than I do, but a good time was had by all. The genuine gratitude expressed by the girls (including their teacher) made it all worthwhile.

Perhaps the highlight of our lunch was watching the girls color their kid’s menus at a lunch celebrating their computer science prowess.  Once again, Seymour Papert is correct.

Below is the program the girls wrote. It required figuring out how to “teach the turtle” to draw a circle and utilized a bunch of mathematical concepts, including radius, fractions, variables and angle.

For those of you lacking the skills of a 5th grader and can’t read a Logo program, I’ve included a video demonstrating their program at work.

to Pie
 repeat 360 [fd 3 rt 1]
to fraction :n :d
 setc "black
 rt 90
 fd 172
 rt 90
 repeat :d [fd 172 bk 172 rt 360 / :d]
 repeat :n [rt 360 / :d fillit ]
to fillit
 setc color + 5
 rt 5
 fd 20
 bk 20
 lt 5
to mem
 repeat :n [fillit pu rt 1 fd :l / :d lt 1]
 rt 1
 bk :n / :d * :l lt 1


An old friend of mine, Dr. Barry Newell, is an astrophysicist who was was the Administrator (in the NASA sense) of Mount Stromlo and Siding Spring Observatories of the Australian National University. He now works on the dynamics of social-ecological systems. In his spare time (back in 1988), he wrote two classic books on Logo programming and mathematics, Turtle Confusion and the accompanying book for educators, Turtles Speak Mathematics. Turtle Confusion features 40 challenging turtle geometry puzzles in a mystery format and Turtles Speak Mathematics helps educators understand the mathematics their students are learning.

I was reminded of the books when Sugar Labs, the folks behind the operating system for the One Laptop Per Child XO laptop, featured the challenges as an activity to accompany TurtleArt software on the XO.

Screenshot of the XO Turtle Confusion Activity

The books’ author, Dr. Barry Newell, gave me permission to share digital copies of the book for personal, educational and non-commercial use. Click here to go to the download page.

These books are best used with versions of Logo such as MicroWorlds EX or Berkeley Logo. Some of the puzzles are very difficult or impossible to solve in Scratch, but it’s worth trying if that is all you have. SNAP! is another potential option. TurtleArt is another possibility. Although, mathematical programming is often easiest and best achieved through the use of textual language (IMHO). A bit of dialect translation might be necessary. For example, CS is often CG (in MicroWorlds EX).