Live data from Hacker News

SICP: The only computer science book worth reading twice? (2010)

simondobson.org

71–80 of 189 posts

Re: SICP: The only computer science book worth reading twice? (2010)

#71

It’s interesting, SICP and other many other “classic” texts talk about designing programs, but these days I think the much more important skill is designing systems. I don’t know if distributed systems is consider part of “Computer Science” but it is a much more common problem that I see needs to be solved. I try to write systems in the simplest way possible and then use observability tools to figure out where the de…

I think the classic CLR text is great but, yeah, caches through quite a monkey wrench into naive big O analysis.

Still, I think the time investment to learn algos and data structures isn't too much of a burden.

Re: SICP: The only computer science book worth reading twice? (2010)

#72
post #56

It’s interesting, SICP and other many other “classic” texts talk about designing programs, but these days I think the much more important skill is designing systems. I don’t know if distributed systems is consider part of “Computer Science” but it is a much more common problem that I see needs to be solved. I try to write systems in the simplest way possible and then use observability tools to figure out where the de…

Well CS and software dev in trenches moved a bit. There are still jobs where people write frameworks, database engines or version control tools. Those jobs require heavy CS and algorithms, data structures day to day. But there are less of those jobs nowadays as no one is implementing db engine for their app they just use Postgres. Other jobs that is vast majority is dealing with implementing business logic. Using dat…

That's true, though new technologies -- web browsers, mobile devices -- have necessitated some framework writing.

Re: SICP: The only computer science book worth reading twice? (2010)

#73
post #70

I really wanted to like SICP but Lisp throws me off. I love Haskell and Standard ML however! Did others have a similar experience? Might be interesting to read a book similar in spirit to SICP but using a different language as a vehicle (No, I don't want to do SICP in JavaScript).

SICP isn't a book about Lisp, however it uses some of Lisp's unique properties to demonstrate important concepts that other languages can't easily replicate. A book that's meant to be similar to SICP that doesn't use Scheme or Lisp would not be anything like SICP, or at least not teach the same things. Haskell and ML are in my experience much harder to understand than Scheme, so I'm wondering what your difficulty is?

There's a SICP edition done in Javascript.

Re: SICP: The only computer science book worth reading twice? (2010)

#74
This is great, but it’s not what I get paid for. I’ve yet to work at a place where I thought, “If only I had read SICP, things would be easier.”

I work with distributed systems, writing business logic and dealing with infrastructure concerns. For me, learning about databases, quirks of distributed systems, and patterns for building fault-tolerant services is more important than reading the nth book on structuring programs, deciding which algorithm to use, or figuring out whether my algorithm has O(1) or O(n) complexity.

This doesn’t mean CS fundamentals aren’t important—they are—but I work in a different space. I’d get more value out of reading Designing Data-Intensive Applications than SICP. If I were in the business of building frameworks or databases, I’d probably be the target audience.

Re: SICP: The only computer science book worth reading twice? (2010)

#75
post #23
post #3

The article has a broken link for the free copy: https://mitp-content-server.mit.edu/books/content/sectbyfn/b... https://web.mit.edu/6.001/6.037/sicp.pdf I hadn't seen a blessed PDF version until today. Circa 2001, only the HTML version was freely available, and someone converted it to TeXinfo: https://www.neilvandyke.org/sicp-texi/ If anyone wants to work through SICP today, you can run the code in MIT Scheme, or in…

For anyone wishing to try: the maintainers of MIT Scheme no longer provide a .dmg but you can download and build the x86_64 version of MIT Scheme. The current release (v12.1) works on a Mac running Sequoia with Intel CPU or on Apple silicon via Rosetta. But the native code compiler (not necessary for SICP AFAIK) is a little broken. (Anecdotally it worked on macOS prior to Monterey, so maybe an Apple-supplied dependen…

most package managers have it, including apt and brew, so most of the time no need to build your own

Re: SICP: The only computer science book worth reading twice? (2010)

#76
post #56

Earlier quoted context omitted.

Well CS and software dev in trenches moved a bit. There are still jobs where people write frameworks, database engines or version control tools. Those jobs require heavy CS and algorithms, data structures day to day. But there are less of those jobs nowadays as no one is implementing db engine for their app they just use Postgres. Other jobs that is vast majority is dealing with implementing business logic. Using dat…

That's true, though new technologies -- web browsers, mobile devices -- have necessitated some framework writing.

So yes, some people working at Microsoft, Apple and Google wrote those frameworks. But that's like a drop in the bucket.

Re: SICP: The only computer science book worth reading twice? (2010)

#77
post #76

Earlier quoted context omitted.

That's true, though new technologies -- web browsers, mobile devices -- have necessitated some framework writing.

So yes, some people working at Microsoft, Apple and Google wrote those frameworks. But that's like a drop in the bucket.

+Meta ;)

Re: SICP: The only computer science book worth reading twice? (2010)

#78

I really wanted to like SICP but Lisp throws me off. I love Haskell and Standard ML however! Did others have a similar experience? Might be interesting to read a book similar in spirit to SICP but using a different language as a vehicle (No, I don't want to do SICP in JavaScript).

I don't understand why Lisp throws you off. I only read SICP after I became proficient in Haskell and it is just fine.

Re: SICP: The only computer science book worth reading twice? (2010)

#79
post #70

Earlier quoted context omitted.

SICP isn't a book about Lisp, however it uses some of Lisp's unique properties to demonstrate important concepts that other languages can't easily replicate. A book that's meant to be similar to SICP that doesn't use Scheme or Lisp would not be anything like SICP, or at least not teach the same things. Haskell and ML are in my experience much harder to understand than Scheme, so I'm wondering what your difficulty is?

There's a SICP edition done in Javascript.

Have you looked at it? It's an abomination. The point of SICP isn't Scheme or the syntax of Scheme, but what it represents. Whoever made the Javascript rewrite didn't understand that. You can't write a metacircular interpreter in Javascript, because Javascript is not homoiconic.

Re: SICP: The only computer science book worth reading twice? (2010)

#80
post #28

I’m slowly making my way through it a second time and thoroughly enjoying it. The first time through it seemed quite abstract, albeit only because of my completely lack of real world programming. The second time through it a revelation as I now have a strong base of experience through which to understand it (experience which it also, informs!). I am using Elixir’s Livebook to take notes and complete the exercises. It…

You're doing the exercises in Elixir and not Scheme then?
Post reply on HN