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?


*Notes:
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.

Resources

  • 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.


Leading family learning-by-making workshops in schools around the world is a pure joy. When parents can experience through the eyes, hands, and screens of their children what is possible, they demand a new more progressive educational diet from their school. I have now led three different family workshops at my favorite school in the world. The first one featured a wide range of materials, including: MakeyMakey, littleBits, LEGO WeDo, sewable circuitry, and Turtle Art. Twenty people RSVPd and more than one hundred showed up. The kids ranged in age from preschool to high school.

The next workshop was held the night before Halloween 2018. So, I selected a Halloween theme for our work with the Hummingbird Duo Robotics kits. A few minutes of introduction to the Hummingbird kit and the prompt, “Bring a Spooky ghost, goblin, or monster to life!” was all that was required for 60+ kids and parents to build and program in Snap! spooky creatures in less than ninety minutes.

Last week’s workshop was the best yet. An invitation for thirty grade 3-6 kids and parents to attend a family learning-by-making workshop sold out in no time flat.

Each of these workshops exemplified irrefutable evidence of the efficacy of constructionism and the limits of instruction. However, the most recent workshop possessed a special magic. Last week’s workshop was centered around the BBC micro:bit microcontroller development board. For $30 (Australian/$22 US), each kid would go home with the micro:bit Go kit they used during the workshop.

It is worth noting that while the hosting school has a long tradition of project-based learning and open education, it is not a high tech school and its facilities are not unlike many public primary schools. Furniture, room layout, and projector placement make instruction virtually impossible, even if I were prone to offer step-by-step tutelage, of which I am not. (Kids and parents were working in every nook and cranny of a library and in an adjacent classroom) Besides, the research project that is my work with teachers and students, leaves me convinced that instructionism, the notion that learning is the result of having been taught, is a fool’s errand. Piaget’s belief that “knowledge is a consequence of experience” is central to my work.

Parents brought their own laptops while other families used school laptops. The parents with personal laptops needed to use their phones for Internet access because stupid school Internet implementation doesn’t allow guest Web access. There were more than sixty workshop participants.

This is how the workshop began.


Hi. I’m Gary. This is the micro:bit. It has a 5X5 LED display that can be used to show pictures or display text. It also has two buttons that you can use to trigger actions. The micro:bit also has a temperature sensor, a light sensor, an accelerometer that knows if you move, tilt, or drop it, a compass, and ability to communicate between two or more micro:bits via radio. You can also connect LEDs, motors, buttons, or other sensors to the micro:bit via alligator clips, wire, or conductive thread  if you want to build robots or other cool stuff.

If you program in Scratch, the micro:bit can be used to control a video game you make by pressing the buttons or tilting the micro:bit like a steering wheel. You can even connect the micro:bit to a paper towel tube and make a magic wand to advance a story you program.

We will be using a Web-based programming environment, Microsoft MakeCode, tonight because it uses all of the hardware features of your micro:bit.

  • Go to MakeCode.com
  • Click on micro:bit
  • Click on New Project
  • Drag the Show Icon block from the Basic blocks into the Start block.
  • Select the heart shape
  • Now, we want to transfer the program we created to the micro:bit. The micro:bit works like a USB flash drive. Put a program on it and it runs until you put a new program there.
  • Click Download
  • Find the downloaded file you created, the one that ends in .hex in your downloads folder
  • Drag that file onto the microbic drive in your file explorer or Finder
  • Watch the yellow light on the micro:bit flash to indicate that the transfer is underway.

Voila! There’s a heart icon on your micro:bit!

  • Click on the Input blocks
  • Drag out an On Button blockChoose Button A
  • Make the program show you a Pacman icon when a user clicks the A button on the micro:bit
    Drag out another On Button block
  • Program the B button to Show String (some text you type as a message)
    Download your new program and copy it to the micro:bit

Heart displays

  • Click the A button and see Pacman. Click the B button and display your message!
  • Connect your battery box to the micro:bit and disconnect the micro:bit from the computer. Look!
  • The program runs as long as it has power!
  • Come get your micro:bit kit and a list of project ideas you might try.

90 minutes later, we needed to tell kids and parents to go home. (I am reasonably confident that I wrote more of my two minutes worth of instruction above than I actually said to the kids).

About 1/3 of the participants were girls and many boys were accompanied by mothers and grandmothers. There were plenty of Dads participating as well. Once one kid or family team made a breakthrough, I would signal that to other kids so they knew where to look or ask questions if they were struggling or curious.


Scenes from the workshop

Observations
Many teachers in workshop settings really struggle with the mechanics or concept of finding their downloaded file and clicking-dragging the file onto the micro:bit. Not a single child had any difficulty performing the process of copying a file from one drive to another. I have long been critical of the clumsy way in which MakeCode handles the process of downloading programs to the micro:bit and the way in which the Arduino IDE uploads programs to its board. The fact that upload and download are used arbitrarily is but one indicator of the unnecessarily tricky process. The fact that not one primary school student had such difficulty the first time they encountered physical computing makes me less anxious about the process.

Several kids were very clever and had working understanding of variables despite not having school experience with such concepts. This once again proves that when a teacher acts as a researcher. they discover that kids know stuff or harbor misconceptions . Such information allows for adjusting the learning environment, testing an intervention, or introducing a greater challenge. Some students had little difficulty constructing equations, despite the ham-fisted MakeCode interface. A few kids just wanted the micro:bit to perform calculations and display the result.

Conditionals proved equally logical to lots of the 8-12 year-olds. (It was interesting chatting with parent/student teams because it was often difficult to predict if you needed to engage in one or two conversations at the same time. A clever kid didn’t always mean that their parent understood what was going on or vice versa.)

There is much written about iterative design in education. Iterative design is swell for designing a new toothpaste tube based on customer interviews, brainstorming, pain points, etc. It is terrible for learning history or playing the cello. Iteration is about fixing something; making it right. I am much more excited about activities, such as computer programming in accessible languages, that lead to generative design. Show a kid a couple o blocks and they immediately have their own ideas about what to do next. The degree of difficulty of projects increase as kids experience success. If they are successful, they naturally find a new challenge, embellish their project, or test another hypothesis. If unsuccessful, debugging is necessary. Debugging is one of the most powerful ideas justifying computer use in education.

New prompt ideas emerged. While working with kids, I improvised the challenge to make a thermometer that showed a smiley face for warm temperatures and a sad face for colder temperatures. That was then substituted for a too difficult challenge in my list of suggested prompts.

When chips are cheap as chips, all sorts of new things are possible. You can leave projects assembled longer than a class period. You can use multiple micro:bits in one project. If you build something useful, you never have to take it apart. Giving every child the constructive technology to keep is a game changer! I will reconvene the students who attended the workshop next week to answer questions and see what they’ve been up to. Perhaps, this experience will lead to another article.

In less than the time of two traditional class periods (90 minutes), young children demonstrated a working understanding of computing concepts covering a breadth and depth of experiences many kids will not enjoy over twelve years of formal schooling. All of this was accomplished without coercion, assessment, sorting, worksheets, or more than a couple of minutes worth of instruction. A commitment to student agency and use of good open-ended constructive technology with extended play value allows a beautiful garden to bloom.

Resources


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 here.