Here is Bertrand Meyer’s take on learning how to program.
The site includes a rationale for the teacher, and introduction for the students, and recorded lectures among other things.
Having read OOSC2, it will be interesting to see his philosophy on teaching new programmers.
(via Bertrand Meyer)