After SICP, what next?
jsmanger: The best book to follow up SICP is Essentials of Programming Languages, by Friedman, Wand, and Haynes. It uses Scheme to show how the fundamentals of programming languages are built, and both in its form and its content, it seems a direct continuation from SICP. After you've done with it, you'll have a much better understanding of Scheme, functional programming, programming languages, and programming in general.