Textbooks
Required Text
There is one required text for this course. Right now, it exists only
online, so there's no text for you to buy.
Recommended Readings and Resources
- Friedman and Felleisen. The Little Schemer: Fourth
Edition MIT Press, 1996. An alternative
introduction to recursive programming.
- Friedman and Felleisen.
The Seasoned Schemer MIT Press, 1996. More
on functional and imperative
programming
- Felleisen and Friedman. A Little Java, A Few Patterns MIT
Press, 1998. Why all this matters and how it scales to
Java
- Abelson and Sussman. Structure and
Interpretation of Computer Programs MIT Press, 2nd edition,
1996. The classic textbook on Scheme and the functional approach to
programming.
Scheme Readings
If you wish to learn to use Racket as a tool, which is not the goal of this course, then
you will find lots of resources at racket-lang.org.
For information about other versions of Scheme and applications,
check out the Community Scheme
Wiki.
Other Readings
- If your native language is not English, or even if it is, the
following book will help you improve your writing:
Strunk and White The Elements of Style Longman (1918,
4th ed., 1999). A useful resource on English grammar and usage. Also
contains many good tips on style. It is not perfect, but it has a lot
of good content. It is available online
but it's far more useful to have the 105-page paperback in your hand,
or on your desk to inspire you.
- The Seven Habits Of Highly Effective People by Stephen
R. Covey. (Amazon) Most graduate students need some help with
managing their time, and this only gets harder as you go along. This
is one of the classic books on time management. It gives guidance on
juggling competing demands on your time, setting (and keeping!)
priorities, and the psychological dimension of time management. I've
had a number of students who found this book invaluable.
- Getting Things Done: The Art of Stress-Free Productivity, by David
Allen. (Amazon) This is a system of keeping track of your tasks. It
is extremely nerd-friendly (and I mean that in a good way).
Last modified: Sun Jan 10 2016