My experience as a robotics teacher

June 1, 2022

robots competition

I taught Scratch programming using Arduino robots, to middle-high school level students, during school holidays. This project was initiated by the Observatoire du Numérique (Digital Observatory), which was looking for someone to teach kids programming and robotics in a fun way during summer vacations.

It was pretty challenging since I started from zero and had to keep several classes interested for a week-long project. Kids usually have a short attention span, and you can't afford to give them boring materials, especially when you ask them to work during their holidays.

I started with some programming basics and quickly moved to the fun part: building their robots with captors and engines and programming them to life. It was gratifying watching them using their creativity to animate a robot. The classes were pretty intense as I had to constantly go from one group to another to help them go in the right direction.

I stayed for two weeks, each class consisted of 12 students, and they had five days each to learn the basis of Scratch programming and deliver a demonstration of their work during a presentation day. Which usually involved making your robot dance and do things in front of elected officials and the students' parents, who came for the occasion.

The first day usually involved going over the basis of Scratch programming, a high-level block-based visual programming language aimed primarily at children as an educational tool for programming. The tool is so intuitive that they usually understood the concept of loops the first day, which isn't the case with a complete language like Python. It was a good thing since the main goal was to focus on interacting with your robot.

I used two different teaching approaches for each class group :

First group

For the first group, I built spider robots in advance, with the help of a blueprint from Algora. The goal was to provide them with a ready-to-be programable robot and see how far they could go. Programming those spiders to walk adequately was tricky, certainly too complex for their level, but the goal was to see how far they could go and see if they had other ideas than walking.

3 spider robots

students programming a robot

I made four groups of 3, each one had the same spider, and they all took different directions. Two of them focused on making the spider walk the best they could, which wasn't easy since you had to synchronize four independent legs. Most of them got their robots trying to walk with the two front legs and the two back legs parallel to each other, but this didn't work too well as the robot was barely walking. Simulating crawling is more complicated but was party done by the other group. The last two groups went a different route and chose to program a static dance with some music since the robots also had a small MIDI music chip.

On the last day before the demonstration, I asked them to stop working on experimentations, start fixing the last remaining bugs and work on how they would present them. I thought that giving the robot a name and a short story was an excellent way to make it look more realistic to the audience.

They presented their work at the University of New Caledonia, to elected officials and their parents. It was a wholesome moment, and I could feel everyone being proud to be there.

Second group

For the second group, which includes the most significant age disparity (from 10 to 16 years old, whereas the first group mainly was 12-15 years old), I decided to let them build what they wanted by giving them different blueprints from the simplest to the most complex. I encouraged them to pick one and customize it as they wished. It resulted in a different experience than the first group; they spent more time building and conceptualizing their robot and less time on the coding part, except for one group, the more advanced, to whom I gave a fully built spider.

3 students with their robot dog

The group with the spider did better than all groups in week 1, partly because some of them were a bit older and had little experience coding basic scripts.

Another one made a giant walking robot that was pretty cool to see; it was also fantastic to see how proud he was of it. However, I had to come back to him many times so that he didn't fall into something too complex he couldn't finish. The main challenge was to make it walk without falling apart as it was the tallest robot.

A group of younger students went to build an adorable walking dog that was cool to watch and much easier to build and program than the spider; they took advantage of a distance sensor to make him stop and bow by the touch of a finger.

This time, the final presentation was at a local theater, where they could walk on stage and feel like they were presenting something important. They were a bit shy and needed some coaching. Before running the demo, I advised them to start by showing their robot, giving it a name and a purpose in life. All parents loved it.

Conclusion

It was my first experience teaching, and I loved it; it was an incredible experience since I got a lot of positive feedback from my client, the Observatoire du Numerique, and all students and their parents. Teaching programming in a short amount of time to youngsters who never coded before and having them produce something interesting in just a week is very demanding and requires constant student assistance. I'm not sure how many of them will pursue a career in software development or computer engineering. Still, the main goal of those classes was to demystify what programming is and make them realize that it's not magic but just logic that anyone can write.