This course is an experimental one. It has been offered several times previously, but not recently by the current instructor. It borrows learning objectives from several traditional mid-level computer science courses. The students are of highly varied backgrounds, and the course will attempt to provide variant approaches to accommodate this diversity where possible. The course is also being taught to a group more than twice the size of the originally anticipated enrollment. And anyway, this is Olin College.
In short, expect things to be a little bit unsettled this semester.
You will be a major part of helping to determine how this course goes. We will try many things. Hopefully, most of them will be outstanding successes. Inevitably, some of them will be resounding failures. (If there are no failures, it will mean that we're not being ambitious enough!) Please be prepared to provide feedback on how things are or aren't working for you and to provide constructive suggestions on what might help to improve situations. Please also be prepared to be patient when things don't improve as quickly as you wish they would or when you find yourself in a frustrating situation. Hopefully, this won't happen very often....
In theory, there is no difference between theory and practice. In practice, however, ... [TheoryPracticeNote]