What does ‘continuing education’ mean to you?
I just finished an online version of SICP, the famous computer science text Structure and Interpretation of Computer Programs (link to full and official text online). What do I mean by “finished”? Well, there are online video lectures (link to iTunes-ready RSS video feed), expertly delivered by SICP authors Sussman and Abelson themselves in 1986. Beyond just watching the lectures, I took careful notes so I have something to refer back to later. I didn’t get the full intense college-class experience–no pop quizzes for instance–but it’s still helpful. Recent Python and XSLT I’ve written has been influenced for the better.
It’s interesting to peruse the reviews for this book on Amazon. They seem to mainly fall into gushing 5-star reviews, or else ‘yecccch, I’ll never use this stuff’. Both are correct. As Harold Abelson says to start of the first lecture, computer science is neither about computers nor science. The point of this endeavor isn’t about “programming”. You won’t find many Scheme jobs on LinkedIn, for instance. It’s all too easy to get pulled into the world of trench warfare programming, so it’s good to be able to step back and survey broader theoretical issues.
My views toward Lisp/Scheme have shifted as well. Before, and for about the first half of the lectures, I would have talked vaguely about how Lisp has an elegant purity but unusable syntax. Lots of Irritating Superfluous Parentheses, and so on. By the end, I have a lot more respect for the language. I admit I was rather floored by the metacircular evaluator lesson, where a suitably fezzed Gerald Sussman writes an entire Scheme interpreter–writes in Scheme–on a blackboard.
Prior to that, I went through an MIT course on differential equations by the engaging Arthur Mattuck, picking up where my electronics left off. Prior to that, a book called Problem Frames, about fully analyzing problems before diving into solution space.
So I’ve been keeping busy. It seems like these sorts of things run in cycles for me, with a full cycle taking around two years. So I’m really curious: how do others manage “continuing education”? What have you learned lately? How do you learn best? What should I look in to next? Comment below. -m