The Structure and Interpretation of Computer Programs

2007-12-19 01:04PM PST/Home

Philip Aaronson

CS 61A The Structure and Interpretation of Computer Programs. I'm like a kid in a candy store now. My boss, a Berkeley grad, mentioned that this was perhaps his favorite class when he was an undergraduate, and was surprised to see that it was still being taught after all these years. Seeing the two talks by Alan Kay was just too much to ignore. Unfortunately, or perhaps fortunately, the Kay talk was not a live talk, but rather a video of a talk from 1988.

You've got to check out demo of Sketchpad, about 9 minutes into the first talk. Sketchpad was running on a supercomputer from 1962. Alan Kay ticks off the firsts. First system to ever have a window. First non-procedural program. First object-oriented software system. First system in which it was discovered that the light pen was a bad input device because the blood runs out of your hand. In 1988, he commented about how we still hadn't learned that lesson, and of course, today 20 years after his comment and 40 years after Sketchpad, we still haven't learned that lesson.

My favorite quote from the first Alan Kay talk comes at minute 47:00 about Computer Literacy.

Literacy has three important parts to it. There's an access part, and in the print medium we call that reading. Somebody else makes up the material, and we have the skills to penetrate that material and understand it. Access literacy. The second one is creative literacy. We don't think a person is literate if all they can do is read. We think they should be able to write. And the English language is powerful enough in its metaphor that we can do very strong expressions of our own intent in just a page or two. Can start a revolution with two pages of well couched prose. Programming languages just haven't been strong enough and easy enough to understand. But if we're ever to have computer literacy it is going to have those two things as first order attributes.

And then the third thing in computer literacy for anything that we can be literate in, there is a literature. When we read Shakespeare, we have to read Shakespeare with a completely different approach to the genre of the Elizabethan age than we do from reading Mickey Spillane. So throughout the many centuries in which the English language has existed there different genre that we have to be able to adapt to. That's the third form of literacy, genre literacy.

A little more organized version is available here.