I've been interested in teaching since high school, probably because both my parents are also in the education business. What follows are my larger teaching projects and some of the web resources they generated.

6.001 - Structure and Interpretation of Computer Programs

I taught 6.001 for 7 semesters, during my M.Eng. and Ph.D. work. A fair number of those as head TA and once as a recitation instructor. I collected a lot of 6.001 related material, some of which is online.

6.090 - Building Programming Experience, a Lead-In to 6.001

I designed and taught an IAP course aimed at preparing those students with little-to-no background in programming to take 6.001. After I taught it in January of 2005, Marshall Tappen and Jacob Strauss taught the class in subsequent years.

A student-written 6.090 Limerick:
An intro to double-oh one
Ben said it would be lots of fun.
  the six oh nine oh theme
  was programming scheme,
And now we are sad that it's done.

6.033 - Computer Systems Engineering

My research advisor recruited me to serve as head TA for a term. Since I didn't have any students, I don't have much to post here. I did write a Therac-25 hands-on assignment as an April Fools joke.

Franklin W. Olin College of Engineering

I took a year of between my Masters and Ph.D. work and taught at Olin College as an instructor. The college was so new that they had to invent the position for me to fill, which amounted to something like a glorified teaching assistant. Amusingly, I was present for Olin's first year of real students, and thus got to participate in the formation of the college. While at Olin, I worked with Gill Pratt and Brian Storey on a modelling and control class, with Lynn Stein on Programming Interactively, and with Jill Crisman on a robotics lab class.