Katie Cunningham is a programmer, author, and one of the minds behind the Young Coders Tutorial, which teaches kids to code a game on the Raspberry Pi computer- and then lets them keep the computer! I’m very excited that she agreed to an interview because the story of just how she came to affect so many kids’ lives in addition to her impressive career is very inspiring.
This is part of a series of interviews we’re doing with educational innovators. You can find past interviews here.
Elliott: I first heard about the Young Coders when it made a splash at Pycon 2013. Could you talk a little about how you came to be in a room teaching kids to code at a programming conference?
Katie: I was initially a volunteer! The original teacher took on a new job, so she asked me to be a co-teacher. After her job ramped up, she had to drop out, so I asked Barbara Shaurette to my co-teacher.
Barbara took the slides from her PyLadies classes and adapted them for younger students. The first class was an eye-opener for us, so we spent every break adapting the slides for younger students. For example, one of our examples had the students making a list of the members of the Beatles, then printing out their favorite Beatle. Their reaction?
“Who are the Beatles?”
We also figured out that the kids couldn’t type quickly, so we shortened variable names and values as much as possible.
Elliott: What’s happened with Young Coders since 2013? What’s next?
Katie: Since 2013, we’ve had many more Young Coders workshops! Some have been held for local user groups, while others have happened at regional conferences. Young Coders 2014 at PyCon was held in both English and French to honor our host city, Montreal. There’s also an effort to translate the slides into Spanish for a programming camp in Peru.
We’d also like to create more classes, perhaps offering classes in making websites, or having an “advanced” class for students who already have a grasp of basic Python.
Elliott: By blogging about what you’re doing and providing open access to your materials you’ve inspired many people to teach, including former Trinket lead designer Julia Elman and one of our past interviewees Brian Painter. Have you been incontact with other instructors? Is there anything about what they’ve done that’s influenced how you teach?
Katie: We try to keep in touch with all of the instructors, if we can! I know that in talking with other teachers, we’ve adopted things like cheat sheets, or we’ve started working on new topics to integrate into the class.
Elliott: Why Python? Why the Raspberry Pi?
Katie: I love teaching Python because it’s not only easy to get started with, but because it’s also so powerful. Students can use it to create games, websites, crunch data, work with robotics… pretty much anything!
Raspberry Pis are great because we can set them up quite easily, and the students can take them home at the end of the day. That way, we know the students is going home with a working environment.
Oh, and they create GREAT buzz.
Elliott: You’re also a book author. Has your teaching influenced your writing?
Katie: Teaching has taught me how to break things down into consumable bites. With Teach Yourself Python in 24 Hours, I spent quite a bit of time thinking about what the atoms of programming are and spending time on each one.
Teaching also taught me the value of examples. 24 Hours is littered with examples for even the smallest of building blocks. Every time I introduce a new concept, I don’t move on until I’ve shown it off a few times.
Elliott: How does your career influence how you teach? Do you find your employer and colleagues supportive of your teaching?
Katie: My colleagues and employer love the fact that I teach. They’re always eager to hear about my latest classes, and will even pop in if they’re at the same event!
As for my career, I’ve found it useful to tell students about what my day is like when I talk about being a developer. Many think I spend all day hacking, when really, my day is much more textured than that. I write, I go to meetings, I play with new technologies, I help my co-workers, and yes, I code.
Elliott: Are there any people or resources you’d suggest our readers look up if they’re interested in getting started teaching Python?
Katie: First, I’d suggest seeing if they can ghost a Young Coders class! We’ve trained a number of teachers that way. Once you see us in action, it becomes clear that it’s not as intimidating as many people think! If you can’t get to a Young Coders class, Barbara and I did a talk and I wrote an article for O’Reilly.
Second, there are a number of great books for younger coders (and soon to be one more, since I’m writing one!). Hello, World and Python for Kids are two I’d suggest. Sit down and read them, because it can be helpful to have non-academic ways of explaining things like functions or variables.
Lastly, I would sit down with a younger student and show off some basic code. Take note of where they get confused, and where they understand concepts instinctively. I suggest a number guessing game to start off with, since that includes a number of complex concepts that are still easy enough for a young student to understand.
Note that the last exercise is more to help you understand the student, rather than help the student learn Python. Understanding the young mind is a huge part of being a good teacher!
Elliott: There are so many innovative efforts going on right now. Is there anything related to coding education that particularly excites or inspires you?
Katie: I love them all, to be honest! I’m very, VERY excited about the push to get computer science into more schools, as well as the push to teach more of the courses in Python. If this happens, then I feel like we could take Young Coders courses even further, diving into more specific topics, or teaching even younger students.
You can find Katie on Twitter as @kcunning.