People keep asking me about the choice of programming language in 61A. Here is a rather longer explanation than I could give face to face. 1. The most important thing to understand: The choice of programming language is far from the most important thing in designing a course. The Berkeley party line is that you should be able to learn a programming language (after the first time) over a weekend. If we mean that, then we shouldn’t be arguing about the programming language so much. And we shouldn’t start designing a course by picking a programming language. Honestly, if the new Python-based course turns out to be a better course, I won't mind at all that it’s in Python. It's SICP that I want to preserve, not Scheme.