As I’ve said many times before, I’m a huge fan of The Structure and Interpretation of Computer Programs (SICP), Hal Abelson’s and Jerry Sussman’s seminal work on computer science. It’s a tremendous resource and one that’s available on the Web for free along with a series of lectures by Abelson and Sussman based on the book. It will, I promise you, teach you things you didn’t know and change the way you think about programming.
In the last couple of days, I’ve come across two articles that offer advice on why the SICP journey is worth taking and ways to make the trip easier. The first, WHY AND HOW TO START YOUR SICP TREK by Kai Wu explains what the excitement is about and what well known computer scientists have said about it. Wu explains why the effort required to work through the book is a worthwhile investment and offers some advice on how to proceed.
The second, Learn SICP, Make Friends, provides similar motivation but offers an iPad program that allows you to collaborate with other people working through the text. If working through SICP by yourself seems too daunting, this may be a good alternative.
If you haven’t yet done so, I urge you to take the trek. Be warned, though, it takes some work. The text is well written and easy to read but you really need to work almost all the exercises to get the optimum results. Watching the videos as you read the book is also a good strategy but, again, you really do need to work those exercises.