Texts and Videos
The Text
Felleisen, Findler, Flatt, Krishnamurthi How to Design Programs, Second Edition (On-line Draft). MIT Press, since 2014
If you prefer a paper copy, the book store will sell a hardcopy of parts I and II of the text for approximately $30, which covers the first few weeks of the course.
MIT Press will publish the book by the end of 2017.
An Auxiliary Text
Bice, DeMaio, Florence, Lin, Lindeman, Nussbaum, Peterson, Plessner, Van Horn, Felleisen, Barski Realm of Racket No Starch Press. 2013.
Contrary to malicious rumors, Fundamentals I does not teach Racket. Period.
It teaches design principles that are valid in many contexts, especially JavaScript, Perl, Python, Ruby (on rails or crutches), Racket, and almost any managed language.
Realm is a non-text book that bridges the gap between the programming languages used in this course and Racket programming. So if you want to learn Racket, this book is the one you should read next.
It is true that Bice, DeMaio, Florence, Lin, Lindeman, Nussbaum, Peterson and Plessner were freshman students when they started working on this book.
Videos
Prof. Mitch Wand from NU CCIS has also created on-line lectures based on the Fundamentals I curriculum. These lectures are for our introductory Masters program, however, and proceed at a rather different pace than the ones from UBC.