1. You can probably afford it.
I used to think that robotics was prohibitively expensive for schools, but I recently spoke at the LACUE conference in New Orleans and was invited by some STEM teachers to attend a workshop on SeaPerch, which is an underwater robotics program, and the parts are dirt cheap. There’s no programming, but you do get to learn how to solder. Robotics can be done on the cheap if you’re willing to get creative. And game design is almost free. All you have to have are laptops for every student. That’s the only expense.

2. Anyone can program, and everyone should
Everyone needs to learn how to program a computer; it’s just a good skill to learn. It teaches you to adopt an engineering mindset, a step-by-step way of making things work. It’s also a lot of fun. With my high schoolers I’m using a modified version of C++ called EasyC for robotics and Scratch for game design. When I say anyone can program, I mean it. An elementary teacher recently asked me if she should consider introducing programming to her second grade class. “Would the kids understand it?” she wondered. “Heck yes,” I told her, and of course her students would understand! With some of the coding programs out there you don’t even need to know how read as long as you can recognize shapes and put things in order.

3. Teach students to think like a computer
The students using Scratch are learning solid programming skills. They understand the thought process. The biggest thing I have to teach them is to think like a computer in that very logic-driven way. I tell them all the time, “You’re your own best teacher.” At first they don’t like to hear that. They think it means they have to go off and learn something without a guide. Of course I’m there to help them but it’s a hard subject to teach and especially to put into natural language what you’re trying to accomplish. If you want this sprite to move so many spaces, you have to distill or translate that into Scratch or EasyC and then go from there. That’s what I mean when I tell them to think like a computer.

4. And teach students how to channel frustration productively
One of the best skills students in my classes learn is how to use frustration and embrace it. If you’re learning a musical instrument or something new, frustration can make you give up if you don’t get it right away. But in this class you just have to use your frustration wisely. Use that frustration to try harder, to debug smarter. I let them walk away for a few minutes if they have to and come back and try again. Part of that just comes with maturity, but I think my students are now on the fast track.

(Next page: getting girls involved and turning electives into careers)