The pundit and the practitioner (CS/IT 2011 keynotes)
Last month, I attended CSTA’s CS/IT for the third year and was pleased to see that it continues to attract great people from the K-12 and college computer science teaching community. This year saw the addition of a day of 3-hour workshops and the feedback on those seemed overwhelmingly positive.
I was particularly struck by the opening and closing speakers and I thought that they nicely, if inadvertently, illustrated some of the tensions in the introductory CS teaching world.
Doug Rushkoff, who recently published a short booked titled Program or be Programmed, kicked things off. The best way I’ve seen him described is as a “media theorist” — he has been tracking disruptive information technology innovations since the early 90s and gained notoriety as one of the first people writing about the Internet as a socially relevant phenomenon. To me, what made him a very interesting pick as an opening speaker is that he is not himself a technology creator though he certainly seems to leverage technological tools with great ease.
Doug is a charismatic and energetic speaker who clearly had the crowd bought into the title of his talk which promised to be about the importance of programming. He is the kind of person who likes to make emotional appeals to his audience — the alarmist title of his book set the tone for the talk. Though he was very entertaining, he made my head spin. He jumped from anecdotes about the effect of written text in Israel to deploring that kids don’t understand that Facebook doesn’t exist for them to make friends but rather to make money off their data to arguments that machines are programming us to use them better. At some point in the talk, I started wishing that he had slides so that I could have some sort of thematic anchor point for all the energy he was throwing my way. He quickly addressed his dislike of digital presentations — he feels it detracts from the “full-spectrum communication” that occurs between live human beings.
I think his main point was that we should all be more aware of how social media tools and devices affect us socially and be wary of being over-connected. Fair enough but I didn’t really understand where the programming came into play.
On the other hand, our closing speaker, Ken Perlin, put programming front and center. Ken directs the NYU Games for Learning Institute and seems to derive great pleasure from putting together little games and animations which he blogs about. He didn’t go into deep analysis of why learning to program is important but instead showed us a bunch of things he has worked on. He showed us a simple animated creature that kids could learn to program, a tool to make collaborative music and a Kinect drawing program. I found myself wanting to play with the ideas he was presenting and was really charmed by his enthusiasm. I can see myself showing his experiments to students to motivate and excite them. What I got out of this talk is that programming is a great tool through which to learn about various domains including cognition, music and emotion. All I really wanted at the end of the talk was a keyboard and some fun APIs to play with.
Again, those two talks told a very neat little story about the difficulties that we face when trying to decide on what introductory CS curriculum looks like. For some people, ethics, responsible technology use and surface understanding of ideas like DNS are most important. To others, algorithm elaboration and analysis take precedent. To some, the need for CS courses is all about the threat of Chinese economic overpowering or of autonomous machines taking over. To others, it’s about exploring the boundaries of the currently possible and rolling up one’s sleeves to build things. And of course, different CS education proponents lie everywhere in between those different extremes. I wish I could witness these two designing a high school CS course together!