Can you teach shapes and geometry with computer coding games? Today I am excited to share a new coding toy that I used to just do that. Teaching kids Coding has become a popular topic nowadays. We all know today’s kids will grow up into a new world that computers and robots are essential parts of life. Even if they don’t want to be a programmer to write computer codes, it is important to understand how programs and coding work, so the world is less mysterious and they will feel more empowered in their life. Since coding is in so many different aspects of life and used in so many different fields of work, it is a wonderful idea to embed coding in all subjects in kids learning today. That’s why I love Sphero Edu program. With the new design, the newly updated coding toy can be used in so many different subjects, and shapes and geometry is just one of them.
With the SPRK+ Robot, kids can code in 3 ways: Draw, Blocks, Text. I am showing here one example of each.
Game Set Up:
Use the floor measuring tape (provided in the Sphero package) to mark on the floor the shape kids are learning. We created a triangle and a square. Make sure you have all the measures, like the length of the edges and the angles. It is nice Sphero also provides a protractor to measure angles.
Game Objective:
To write / draw a code for the SPRK+ Robot ball to follow the shape marked by the tape as closely as possible. We put LEGO pieces at certain spots on the shapes for kids to hit with the SPRK+ Robot ball.
Coding Game 1: Command by Drawing
For young children, who have none previous coding experience, drawing is a great way for them to learn shapes and to experience the wonder of robots taking instruction from coding commands. One of the features come with the free Sphero app is coding by drawing. Kids can easily draw the shape as the route they want the Sphero ball to move and watch the path the robot travels on the ground, and later on the iPad screen through the Sphero app‘s recording feature.
Drawing itself is easy, but drawing as coding that the robot can actually follow is not necessarily as easy as it looks. Our first try was a total failure, as the ball traveled twice the distance as the size we wanted it to.
Things to consider when drawing the path besides the geometric shapes:
The smoothness of the surface: the ball will function differently on hard wood floor vs. carpet.
How leveled the floor surface is: we learned quickly that the robot definitely is much more sensitive than our human’s senses, and we need adjust the lines that going up-slope a little longer than lines going down slope. Since the robot can sense a very tiny difference that we can’t, we ended up adjusting by trial and error.
Robot orientation alignment: each time before running the code, you should align the robot with your code. The instruction is in the free app. We also talked about reference system and perspectives in our coding game series too.
After several adjustments, we were able to have the robot travel along the line pretty well.
Coding Game 2: Command with Block Codes
Block code is for kids who know basic concepts of coding, but are not ready for real line codes. They can drag and connect coding blocks, and the program will translate the blocks into JavaScript codes. This is a great transition stage. Kids can learn coding concepts without worrying about the detailed codes, which could be very tedious.
With the coding blocks, kids can define the traveling length by code parameters, such as the time the robot moves, and the speed it moves.
Kids also need have better understanding of each shape to write the parameters. For a square, they need specify the angles to be 90-degree different from the last edge the robot rolls over. For equal lateral triangle, the angles need be 60 degrees. This is a good practice of perspective thinking skill
Things to Consider when commanding by Block Code:
In addition to all the factors mentioned under Drawing Code, kids need consider the relationship between time, speed, and distance.
Additionally, the angles in the code may not necessarily the angle of the shape, depending the reference direction. For example, if the first line of the square is going at 90 degree in the code, the 2nd line should go with 180 degree or 0 degree depending the alignment between robot and app device.
Coding Game 3: Text Coding
For kids who are ready to write JavaScript codes, they can use the line code section. One thing to note is even kids are using drawing and code block, after they run the program, the app automatically translates they drawing code and block code into line code. Kids can learn JavaScript code from these examples that they are already familiar with.
To start, kids can play around simply by changing parameters in the auto-translated codes. Via changing small parts of already working codes, they can see how line codes structure and function. When they are ready, they can write the code directly in the line code section without using drawing or block codes.
For more coding activities, please visit DIY Coding Camp at Home. You will find a series of 5 printable coding games teaching kids 5 crucial coding skills. Just print the game on paper, no computer needed.