3 ms·
It may have lost relevance at MIT but all around London, companies are still using examples from SICP in their programming interviews and tests. Does this mean
by vr46 10y ago
It may have lost relevance at MIT but all around London, companies are still using examples from SICP in their programming interviews and tests. Does this mean these selection schemes are stupid and irrelevant or does SICP still possess the power to sway and influence? Just not in the way the authors expected?
- geofft 10y agoWhat are the examples being used in interviews/tests, and for what jobs? (I took one of the last instances of 6.001 / SICP right as the curriculum was changing; I don't regret it, but I already knew programming pretty well coming in.) If you're testing someone's ability to write some code from scratch, as opposed to how to modify a large system that they can't fully understand by the time the interview is over, you are either conducting a good interview for a very small number of jobs, or a bad interview for a much larger number of jobs. A lot of MIT classes (e.g., the OS class, 6.828, where you're given most of an OS but with the important pieces left out for you to write) are much better at teaching the latter skill. Also, to be fair, most programming interviews and tests are stupid and irrelevant, regardless of inspiration. :)
- vr46 10y agoThe ones I remember doing myself were the Tree recursion count-change problem, Simpson's Rule, and counting pairs in Lists. These were for general programming jobs as I recall on Javascript (not my speciality) or Ruby systems.
- 794CD01 10y agoI went to university 8 years ago and learned from SICP. It has decades worth of influence left even if everyone in the world stopped teaching it today. Not to mention the second order effects.
- sytelus 10y agoIn my experience, SICP's main effect was developing "analysis" muscle. I remember reading first 3 chapters and realizing that we are starting to write fairly complex stuff but still our language doesn't even have assignments let alone for loops or other bread and butter of programming. It's that moment, it dawns on you what computer program really means. It's not prescription of step-by-step instructions, but set of ideas that come together, compose with each other and make a whole that is far bigger than sum of small pieces. In SICP, you actually start at "atomic" level to build real world objects. I think this exercise is still relevant at least in that way and chances are that SICP readers are better at grasping and using abstractions.
- vr46 10y agoYes, I agree - I think this is why so much was also used in the Coursera Scala course to build up the student's understanding of the functional aspects in composing software. Must revise SICP sometime soon.