It started when my school decided to hold an "Academic Festival" - one day when we were encouraged to deviate from our curriculum, throw guided practice to the wind, and teach something that we are passionate about. I decided on a one-hour introduction to programming, which was really a thinly disguised pitch for the computer science course we'll be offering for the first time next year. I had my students warm up with a Do Now asking them to identify some of the many ways they rely on coding in their everyday lives, without even realizing it. I used this PowerPoint as a basis for our discussion, which led into this (now semi-viral) video put out by Code.org, and finally some live coding in Python (the Word Smoosher was a big hit). The anxiety I felt prior to this lesson can only be compared to the anxiety I felt nearly every day when I taught in a project-based environment: What if the kids don't find programming interesting? What if the lesson is a flop? What if we speed through the PowerPoint in two minutes flat and they have NO questions and they fall asleep during the live coding???
Of course, that did not happen - not because of anything special I did, but because my students had never before been exposed to the world of coding. In fact, I had to pinch myself at one point, when I announced to one group that there would be a coding class next year and they actually - no exaggeration - cheered wildly. "Okay," I thought. "They're really into it now. But they've never actually tried coding. What if they find it boring/frustrating/uninteresting?"
I thought I'd have to wait until next fall to get that question answered, but just a couple of days ago North Star was lucky enough to be paid a visit by Jeremy Keeshin, cofounder of CodeHS.com. Thirty-two (out of 74) juniors from across the academic spectrum signed up for an after-school workshop that Jeremy ran to introduce students to some of the basics of coding as well as the terrific online platform for learning coding that he has developed. The program is such that students are able to watch short tutorial videos and work on challenges at their own pace, and Jeremy and I mainly circulated to help students troubleshoot -- what a great model for true differentiated instruction in computer science! In less than an hour, kids were already getting at some pretty big concepts softened only by the cuteness of Karel the Dog and the entertaining challenge names (Mario Karel!): "How can I teach the dog to turn right using ONLY turnLeft() commands?" "What if I want to make Karel move over and over - is there an easy way to do that?"
When it comes down to it, what I'm feeling right now is probably what every teacher feels at some point - the magical epiphany that "A few weeks ago, my students didn't know [what programming was], and now they're [running home to work on coding challenges] and [saying that they want to study computer science in college]."
They say that what we do every day changes lives, but some days that just feels especially true.