I was reading this as a beginner after working through MIT600 on MIT OpenCourseWare.
I started off on this goal quite diligently, doing most of the exercises, and I think I got a lot out of that, but it took a long time. I spent about four months to get to the end of Chapter 3, even though I was devoting a lot of my weekends to it, and I started to get a bit overwhelmed and want to move on to other things. So I just read the last two chapters but I don’t think I took as much in.
It felt like I had traveled a long journey. The lecture videos were inspiring, and maybe I’ll come back after I’ve got more programming experience and do the last two chapters properly. I imagine it must have been quite intense to work through this as quickly as the class in the videos. They look really tired on the last day.
Also, I just got a job as a junior developer at a software company. So I think my study is starting to pay off. :)
I’ve made a pretty good start on this goal. I’m using DrRacket for my Scheme evaluation, with the SICP support kindly provided here: http://www.neilvandyke.org/racket-sicp/
I was using Aquamacs, but got frustrated. Sometimes it evaluated things. Sometimes it didn’t, and then it gave really vague errors. But I still like Aquamacs and have started using it for other things, so it was nice to discover it this way.
Usually when I try to work through a course on MIT OCW, I stick as closely as I can with the calendar. This time, I seem to have veered off a bit, and have developed the habit of just watching one lecture, then reading one section of SICP.
The sections are pretty long, and there are so many exercises that after that I get tired of doing exercises and don’t feel interested in going on the website and looking for more. So I’m thinking of changing this goal to just working through SICP. I’m up to section 2.2 so far.
I’m not confident that this will help me become a programmer in a very direct way, but it’s fun – it has a lot of maths interwoven with it.
I was a bit surprised by how hard I found learning C++ to be. There were a few concepts that I got stuck on and had to spend a while digesting. I kept forgetting and and having to re-learn things. Maybe I’m getting old and slow. But anyway, I finished this course now. I did Connect Four for the final project. Now I can look for a new OpenCourseware computer course to start – I think I will do an algorithms one and try to learn Java now.