So today I gave a presentation in a high school technology class. Ostensibly, I’m here to give a talk about Video Game Programming Careers. This should be easy right? For one thing, I know quite a bit about what video game companies look for and even what students think about as they consider CS as a major. But honestly as I prepped for this class I would have have much rather been teaching the Cook-Levin theorm, issues of explaining the entirely of a Theory of Computation course in one lecture notwithstanding.

Part of this was history: I wasn’t happy with the first version of my talk. That talk felt like I was doing a lot of talking at students, who, by their body language would rather be just about be anyplace than listening to me.

The new version of the class, I added some question-and-response and a few funny visuals (CS job themed superheros: cheezy? absolutely…but I’m happy to be silly in the service of getting students to remember what they need to). And it even worked, sort of. Students seemed more engaged, actually answered my questions correctly, and by the end of things 50% of the seemed to be paying attention. Which is much worse than I usually do, but better than I did. But I still felt overall unhappy.

A student response resonated with me…I was talking about math, and I (somehow) mentioned that CS uses discrete math which is different than what you usually study. I got a bunch of student comments about that, trying to understand what the difference was (self note: I need a cool way to explain the difference!). That sort of summed up the talk: telling the students that CS was cool without actually showing them cool things about CS. I should have gone through one of Mark’s Media Computation examples, or come up with my own that illustrated and showed them a little programming, or algorithms, or something.

Anyways, live and learn. It was an OK talk and I think if I had to do it again it could actually be a pretty good talk.

Copy of Copy of Life as a Video Game Programmer on Prezi