Miniature robots zoomed across the floor, lights flashing. Students bent over computer screens, writing code. Parents sent emails telling me that their kids couldn’t stop talking about the Ozobots. My students were reviewing linear relationships, being introduced to systems of equations, and learning some coding skills. It was the best way I could have hoped to end the semester with my 7th graders.

My students came into this project with a lot of background knowledge. This is their second year with me. Last year, I introduced them to some basic coding by having them create video games using SCRATCH. The Ozobots use Ozoblockly, which is very similar in structure to SCRATCH. (Both languages are object-oriented visual programming language. I think this is absolutely the best way to introduce coding. They allow the user to focus on the big ideas of coding without getting bogged down in the syntax of the language.) The added challenge this year is having the code control a miniature robot. This required students to work through a few challenges that had nothing to do with coding, but everything to do with problem solving and making things work. I documented the journey on my twitter account . There are videos there showing each step of the projects (posts dated Dec 8 – 15). Unfortunately, you will have to go to the twitter account to see the videos if are interested, because my blog doesn’t support videos.

**Building Background Knowledge **

InitiallIy, I focused on building knowledge. Students had to learn how to calibrate the bots, how to write code, and how to load the code onto the bots.

Next, they worked on getting the bots to do what they wanted. They explored the different capabilities: getting the bot to move in specific ways, playing with the light features, etc. During this early phase, I had students work in pairs. Because there is a certain amount of frustration inherent in the process of figuring out how to make things work, it helps to have someone to share the journey.

**The Project**

Once I was confident that everyone had a little experience, I assigned a two-part project that would require them to review the work we had done earlier in the year with linear equations and also act as a launch into the work solving systems of linear equations that we will do at the start of the spring semester.

**Linear Relationships in Tables and Graphs**

For the first part of the project, I assigned each pair of students a different linear relationship. Each pair was given two ordered pairs, an ordered pair and the y-intercept, or an ordered pair and the slope. They had to find the linear equation representing their relationship and create a table for the relationship. Then, they had to create a large scale coordinate plane and write code so that their Ozobot would graph the linear relationship. The Ozobot had to flash lights on three ordered pairs and perform a different action at the y-intercept (flash different lights or spin on the spot).

**Solving a System of Equations Graphically**

Next, each pair had to use a second Ozobot to graph a second line intersecting the first line on their coordinate axis. They had to calculate the point of intersection and time the two Ozobots so that they would not collide at the point of intersection.

While there was plenty of math in the project, the most important piece of math was not what one usually thinks of as math. It was learning how to make something real actually work. Students had to learn how to frame a task and then to persevere in the face of challenge (one of the math practice standards).

**My Favorite Thing**

My biggest measure of success is that the kids dinner time conversations were all about math for the entirety of the project (a number of them ended up getting their own bots for Christmas as a result).