What happens when you take one step, turn one degree, take one step, turn one degree, and continue doing that a total of 360 times? You will walk in a circle — or more accurately, you’ll walk along a 360-sided shape with each side measuring one step. You can split this shape into 360 congruent triangles with internal angles measuring 1º at the pointy centers and 89.5º at the corners on each side of your foot.
This may not be news to you, and you may have an easy time understanding this description and imagining the process and shapes I’m describing. However, for those who’ve never done such a thing or who don’t “see math,” you may have a difficult time creating a mental image of what’s being described. Asking learners to imagine things rather than demonstrating them can stress learners if they are not familiar or if they lack confidence.
Luckily, these days nobody has to rely solely on imagination. We can replicate this scenario using Scratch — a simple, fun, powerful programming language developed by the MIT Media Lab. Using Scratch, we can carry out the process of ‘walking’ in a circle and explore what happens when we make various changes. We can see the shapes generated and very quickly experiment with different numbers. Scratch’s block-based design (sort of like putting together LEGO blocks) makes it really easy to generate one shape after another (for an introduction to Scratch , check here). Ready?
If you’ve never used Scratch, the project I describe here will be a great introduction. If you’re already familiar with it, this is your chance to make some fun mathematical art. Head over to Scratch, log in (or create your account), open this Scratch project, and hit the remix button.
Let’s look at the existing code. We’re using the pen blocks (green) to draw. We also have two values for ‘turn’ and ‘move’ that we will use to determine the direction and distance we “walk” as we draw our shapes. Most of the code is simply getting us ready to draw: erasing all marks to start with a clear stage, then lifting the pen to avoid any marks as we get the pen in position. We also set the caliber and color of the line. Feel free to change the color if pink is not your thing. Just click the pink oval and select a new color.
Finally, when we get to the loop, we have the real meat and potatoes of the project. As described above, we are repeating the same process 360 times: turn, walk, turn, walk, etc. The result is a circle. The pen ends up in the exact same spot where it started, pointing in the exact same direction. You can verify this by looking at the X and Y positions and the direction of the sprite in the area under the stage. Go ahead, click the green flag.
Now we have this first circle drawn, but I’m sure you noticed how slowly the computer drew that circle. As it is, the code is asking the computer to go through the turn/step process 360 times. What can we do to make the process faster? Can we cut the number of repetitions in half and still have what appears to be a circle?
Let’s look at what happens if we cut the number of repetitions in half to just 180. Give it a try and you’ll see you don’t have a full circle. How many degrees did we turn in the original code? How many degrees do we have to turn now to get a complete shape that brings back to where we started? As you adjust the code, what do you notice about the total number of degrees and the total number of repetitions? Can you see a pattern starting to emerge — what has to happen to the number of degrees to create a circle if we have just half the repetitions? Just a third? If you adjust the number of degrees, but not the number of steps, what happens to the size of the circle?
Of course, you can start with 180 repetitions, but you can continue the process and keep reducing the number of repetitions and increasing the number of degrees in each turn. You can try every pair of factors for 360. In fact, I’ve given you a list of pairs of numbers you can try. Look for the hidden sprite called Numbers and make it visible by changing the Show settings under the stage. The very last pair of numbers in the list results in a shape that is now easily recognized as “not a circle” — you can easily see the 18 sides of what is now a regular polygon.
If you want to see the step count as you try different number combinations, go to the Variables blocks (dark orange). I have already created a variable named Steps for this project. To set up a step counter, add two blocks to the code. First, add the “set Steps to 0” block before any steps are taken. This resets the count so you start at zero each time you run the code. Then, add the “change Steps by” block inside the loop, under the move block. This will count the steps as you take them. Remember to change this number as you try different angle and repetition combinations to ensure the step count is accurate.
By now, the relationship between the repetitions and the degrees should be clear: the two must yield a product equal to 360 degrees. Learning that by tinkering with the settings yourself tends to stick better — and be more flexible — than if someone just told you. Now that you have this basic information, you can play around with many more combinations. You can explore how to make shapes with smaller and smaller numbers of sides. Just keep track of the multiplication. Go ahead, give it a try. How many degrees do you have to turn if you want just six sides? How about three? Four? Now we’re getting shapes we recognize. By tinkering with the numbers we can better understand the relationship between the number of sides and the measurement of the interior angles.
So what else can we do now that we know how to draw shapes?
We can combine different shapes to make a pattern, or maybe even a drawing. Let’s look at a couple of examples.
This bit of code corresponds to a hexagon: turning 60 degrees 6 times meets the required 360 degrees and gives us a 6-sided shape. The length of each side (40 steps here) depends on your preference. How big do you want your shape to be?
Now we can repeat the hexagon to make a pattern by adding an additional loop with a rotation. For example look at the code and the resulting shape. Again, there is a pair of numbers — the “repeat” and “turn” — that yield a product of 360 when multiplied, giving us a complete rosette. Different combinations of repetitions and degrees will result in different rosettes. Try a few out and see what you come up with. Do you notice any especially pleasing patterns?
Of course, you can make rosettes from pentagons, triangles, circles, and even squares. These are shown in that order below. Try making different designs using different shapes and repetitions. You can also change the color and thickness of the pen.
To make multiple shapes or rosettes in the same design, you can duplicate the code by right-clicking on it. Change the starting point so the shapes are side by side on the stage. Or, if you want to use the shapes outside of Scratch, take screenshots of the individual designs and arrange them on a bigger canvas. You can move the pencil out of the way by clicking on it. Or, if you are feeling confident, just hide the pencil by clicking on the no-show button under the stage.
If I think back to how I learned about regular shapes, circles, rotation, and many related geometric and mathematical concepts, I remember struggling to remember formulas, interior angles, and number combinations. I’m sure my teachers did their best, but now we can do so much better. Giving students ways to explore mathematical concepts with accurate visual representations is not hard. Using Scratch in this context gives students a good opportunity to explore and make their own discoveries while also learning a few coding concepts. They can see and understand changes almost instantly as they tinker with the turns and repetitions, and as they look for and try to understand patterns, they develop their own mental models. This strategy of learner-led learning-by-making is called “constructionism.”
What else can you help your students learn about math using constructionism and visuals created in Scratch? The possibilities are endless.
How could you use these concepts and strategies in your classroom? Well, you could give your students this entire post. I wouldn’t mind that. However, you can also take the ideas in this post and set them up in a format that lets learners explore other aspects of the magic of 360º combinations using a constructionist structure.
One helpful method for integrating constructionism is a framework we’ve developed known as “FTPS”: follow, tinker, play, share. It’s a very flexible framework that can apply to any discipline at any learning level. Here’s how it works.
Follow: All learners create the same project as a basic step. For example, the initial project I linked to at the start of this article is a “follow” project. It’s designed to introduce some basic concepts while also staying quite rudimentary, which gives lots of room for the next stages. In this case, the project is designed to ensure that everyone has code that results in the drawing of a circle.
Tinker: With guidance, learners make changes to the existing code to make different combinations of repetitions, angles, and steps. If anyone does something that breaks the code in a significant way, they can return to the original circle code without any difficulty — it serves as a ‘platform’ that makes experimentation safe. Tinkering with the different pairs of factors of 360 solidifies the understanding of what makes a circle and what makes regular shapes. If you’re using the framework for another kind of project, the key at this stage is to leave room for people to make small modifications and adaptations in ways that help them understand basic concepts. Leaving room in the original “follow” project for lots of kinds of tinkering means learners with different abilities and skills can participate and transform the project.
Play: Learners use their understanding of rotations and regular shapes to make something they find interesting or artistic, exploring additional shapes and furthering their understanding. Learners may also incorporate additional Scratch coding to make the project richer, more sophisticated, or more interesting. The main idea of the “play” phase is for learners to take what they’ve learned in the preceding phases to make something of their own.
Share: Learners showcase their work and share their discoveries, assessing each other’s work and learning from one another in the process. The “share” phase helps solidify learning by having people compare, collaborate, or even compete. As they process and evaluate what others have done and as they show others what they’ve done, learners develop competency and fluency.
If you followed along with the activities in this article, you’ve already engaged in an FTPS process. While I have used Scratch to walk you through it, you can use FTPS to teach many skills and concepts. For example, I recently led a group of students through the process of making a mini documentary using Final Cut Pro. For the follow project, students used components I provided to assemble a short video. We all created the exact same video to learn the basic functions of the application.
The students then tinkered with their video, adjusting sounds, titles, transitions, and even rearranging the existing footage to change the overall message of the video. As they worked, I called attention to camera angles, framing, lighting, and other technical aspects of capturing their own footage in preparation for the next step.
Over the next three days, students worked to gather their own video and audio assets for their own projects. Then they worked on assembling the assets into a documentary using what they had originally learned during the follow step As students worked and were more confident in what they were doing, I pointed out additional features they could use. After a while, students felt confident enough to click and explore, using the help menus on their own or looking up help online. On the last day of the workshop, students shared their documentaries with a group of guests.
That’s the end result we’re looking for as teachers: students who know enough and are confident enough to explore and create on their own and then share their work with others. Students develop their knowledge and confidence not by being told about things by a teacher, but by trying, tinkering, and creating. When they’ve experienced and made basic projects, they’re much more capable of tackling more sophisticated work — and of really using what they’ve learned.
If we want to prepare students for life after school, we need to emphasize their exploration and discovery a lot more. Having them experiment with Scratch — or many other tools — is a great way to get that started.