We Should Teach Code like We Teach Languages

There’s been a movement afoot at all levels to get computer languages treated like foreign languages for curriculum purposes.  This is in part a strategy of how to get computer science topics to count in education of various levels, which is an important question. But there’s a deeper insight here that I think most people miss. […]

Beginning Coders Need Visual Examples

An effective and time-honored technique for introducing teaching algorithmic thinking to a class is to make a peanut butter and jelly sandwich. No, I’m not joking. Here’s proof: a university computer science class making a sandwich. As humans, making a sandwich is easy.  For computers (robots, at least), it can also be easy – given […]

An Art History Major Teaching Programming, Part 1

This is the first of a three-part series about how the techniques I learned studying Art History have influenced the ways I teach Programming at UNC-Chapel Hill’s iSchool. Part one: Code is Cultural President Obama recently came under criticism for disparaging art history majors. He made the comment in the context of extolling the virtues of technical […]

In Search of a Middle Path for Ed Tech

In my last post I made the argument that teachers won’t be replaced by software. I was excited to see the resulting comments on our blog and on HackerNews. The discussion surrounding technology in education is contentious, and these comments were no exception. Khan Academy, for better or worse, has become the litmus test defining the sides of […]