4 ms·
I read SICP and never got the hype. Seems like there is a certain personality type who really takes to SICP but not everyone learns best that way. I found it mu
by jeffreyrogers 4y ago
I read SICP and never got the hype. Seems like there is a certain personality type who really takes to SICP but not everyone learns best that way. I found it much more intuitive to learn about computing from the hardware up rather than from the abstract, mathematical way of thinking SICP uses.
- kjeetgill 4y agoSincerely no snark intended. But this comment and another about "bottom-up" via Assembly and C kinda show that maybe you've missed the point. We can blame SICP itself for that maybe, but it's all in the name: Structure and Interpretation of Computer Programs. It's abstract because it's not about actually physical computing — nor is it trying to take you to the same place as learning computing from hardware, "bottoms-up" is meant to but via some other mathematical means. It's trying to teach you to reason about computer programs by it's structures — that they aren't just a list of instructions. Reading Shakespeare won't teach you grammar but they'll help you be a better reader and writer in their own ways!
- jeffreyrogers 4y agoYes, I understand the motivation for SICP. There are similar trends in mathematics where some people like an abstracted, axiomatized presentation and others like something more intuitive. I'm in the later group as are many others. I don't think either way is superior in itself, nor do people who learn from one approach or the other turn into better programmers.
- mixmastamyk 4y agoI don't think we can have one without the other. For example in Petzold's Code book there is a chapter about Boolean Algebra. In a following chapter, we then vastly simplify our previous circuits of logic gates, replacing them with other simpler ones. This happens after proving they are equivalent with our new found algebra talents. Imagine your computer being 3x (estimated?) slower and hotter without this advancement from the "propeller-head" pure-thought-stuff people. There are undoubtedly wins like this across the whole industry.
- sirsinsalot 4y agoI didn't get on with SICP the first few times, but loved Tannenbaum's works and eventually the Dragon Book. Everyone's path through these esoteric texts looks different, but all these books are magic.
- musicale 4y agoI wouldn't recommend the Dragon Book to anyone who wants to learn how to write compilers, especially for the first time. I'm not entirely sure I can recommend Wirth's Compiler Construction, but I definitely like his simple approach.
- sirsinsalot 4y agoIt was around 2001 and I was 16 or so. Still a classic though
- MattPalmer1086 4y agoI guess everyone is different. I loved the Dragon Book, and I bought quite a few books on the subject. It was the one that helped the most for me. But I had been programming, self taught, for years at that point.
- agumonkey 4y agoI somehow don't like the simple approach, I feel like learning a quick trick but my brain cannot encompass the whole idea. The Dragon Book (at least the 40% I've read) inspired me more.
- rtpg 4y agoThere are SICP lectures on YouTube (I think it was classes to HP engineers?) that I find pretty entertaining. The flavor offered by the lecturers make it more worth it and can introduce you to some interesting vocabulary.
- nickdrozd 4y agoA lot of books start at the low level and work their way up to higher abstractions. SICP goes the opposite direction: it starts close to math and then moves down towards the machine. So maybe you would enjoy the book more if you started from the last chapter [1] and worked backwards. [1] "Computing with Register Machines": https://mitp-content-server.mit.edu/books/content/sectbyfn/books_pres_0/6515/sicp.zip/full-text/book/book-Z-H-30.html#%_chap_5 https://mitp-content-server.mit.edu/books/content/sectbyfn/b...
- randcraw 4y agoIn the OP video, Sussman explains that SICP was one of four courses at MIT that taught students how to combine small H/W and S/W components to build computers and programs from the ground up. SICP built atop those primitives -- chips and assembly that compose functions -- and introduced the students to the primitives of computational models, from concrete procedural to abstract functional, in which lambda functions lead to higher order theoretical models of computing that will be encountered in EECS courses that follow... the gang of four.