This book is for novice programmers who want to learn the most basic algorithms and data structures. We will use the Scheme programming language because it forces the programmer to think inductively and recursively. This way of thinking maps naturally onto many common algorithms.
In addition, Scheme is simply badass.
This book is a work in progress, and will be licensed under the The GNU Free Documentation License.