Skip to content
HomeVideosBooks
AllTopicsTrends
BlogsPodcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    Cover of Structure and Interpretation of Computer Programs

    Structure and Interpretation of Computer Programs

    Harold Abelson, Gerald Jay Sussman, Julie Sussman · 1985

    Wizard Book n. Hal Abelson's, Jerry Sussman's and Julie Sussman's Structure and Interpretation of Computer Programs (MIT Press, 1984; ISBN 0-262-01077-1), an excellent computer science text used in introductory courses at MIT. So called because of the wizard on the jacket. One of the bibles of the LISP/Scheme world. Also, less commonly, known as the Purple Book. from The New Hacker's Dictionary, 2nd edition (MIT Press, 1993)

    Lisp & FunctionalProgrammingComputer Science
    Open LibraryAmazon
    Stats for nerds
    347recommend
    761mentions
    602people
    2007–2026years
    55% recommend43% neutral1% critical

    Mentions per year

    20072009201120132015201720192021202320252026

    What Hacker News says

    1. kserrecSep 2026
      I am a software developer and most of my work is in AWS. I don't have a CS degree, but have taken a handful of lower level courses. I haven't studied PLT much at all, but I really like the lambda calculus.

      As for books, I don't have many to recommend beyond Michaelson's book except maybe a few classics like Cormen's Introduction to Algorithms, Structure and Interpretation of Computer Programs, and Types and Programming Languages.

      What have you made that was cool? And what are some books you recommend?

      thread
    2. so-cal-schemerAug 2026
      > Structure and Interpretation of Computer Programs (SICP) by Gerald Jay Sussman and Hal Abelson. SICP is my all-time favourite programming book. It’s also where I learned about the power of wishful thinking when coding. SICP uses wishful thinking as a design tool: write code as if the abstraction already existed. Pretend. Then, once the ideal abstraction has taken shape, you go ahead and implement those functions. This meta-level is what made SICP so valuable. Ultimately, it’s a book that teaches how to think about code and problem solving. I’m tempted to even say that SICP is more a work of art than a pure coding book, but I won’t go there. A beautiful book.

      Obviously, this is a timeless classic. I too love the writing style and its precise, articulate prose; it sets a bar for what I expect at MIT. There is much wisdom to glean.

      This note about "wishful thinking" is an important concept from the book that I rarely see mentioned, but is core to the authors' layered approach of building systems. In essence, it's a development style of hallucinating or confabulating appropriate functions and data structures during the design of your programs from the inside out, which you would implement later on. (A quite natural approach with a Lisp/Scheme REPL.)

      It's also why I never understood the fuss about supposed failures in AI code generation. Some developers never read SICP, I guess.

      thread
    3. WalterGRJul 2026
      Your mind is about to be blown! I'm jealous.

      After learning of Scheme, if you truly want to dive into the deep end of programming, the 'next step' is the book The Structure and Interpretation of Computer Programs aka SICP. By no means is it the required next step after learning of Scheme - of course - but if you're looking for the programming book to have when you're shipwrecked on a desert island, that's the one.

      SICP: https://mitp-content-server.mit.edu/books/content/sectbyfn/b...

      thread
    4. quotemstrMay 2026
      There are books about languages, and then there are books about timeless truths. The former? Toilet paper. The latter? Treasures. Worth reading:

      - Okasaki, Purely Functional Data Structures https://www.cs.cmu.edu/~rwh/students/okasaki.pdf

      - The Garbage Collection Handbook https://gchandbook.org/

      - The Dragon Book - https://faculty.sist.shanghaitech.edu.cn/faculty/songfu/cav/... (yes, it's old, but I still like the end-to-end, all-in-one intro)

      - Windows Internals - https://learn.microsoft.com/en-us/sysinternals/resources/win...

      - Structure and Interpretation of Computer Programs - https://web.mit.edu/6.001/6.037/sicp.pdf

      - Concurrency Control and Recovery in Database Systems - https://www.microsoft.com/en-us/research/people/philbe/book/

      - Crafting Interpreters - https://craftinginterpreters.com/

      - What Every Programmer Needs to Know About Memory - https://people.freebsd.org/~lstewart/articles/cpumemory.pdf (the best thing Ulrich Drepper ever did)

      - An Introduction to Modern Cryptography - https://eclass.uniwa.gr/modules/document/file.php/CSCYB105/R...

      A good programming book gets better with age. If it's really about ideas and uses this or that technology for exposition, so much the better: the more remote in time the grammar of the examples, the more you can focus on the ideas. SICP being in Scheme is an advantage because you don't know Scheme yet; Windows Internals being about Windows teaches you generally good lessons in OS design by forcing you to contemplate a system alien to the Unix you probably know better.

      It's shocking how many of these seminal books are available for free and how few people read them. Yes, yes, you can get the same information from an LLM, but an LLM won't give you the guided tour through the whole rugged ideas-space and show you a reasonable peak. Order, emphasis, and expository style build intuition, so books (especially old ones) are worth reading.

      thread
    5. boisterousnessMay 2026
      These are good ...

      "Python for Data Analysis" by McKinney (2018)

      "The Go Programming Language" by Donovan and Kernighan (2016)

      "Hacker's Delight" by Warren (2013)

      "Algorithm Design Manual" by Skiena (2008)

      "Purely Functional Data Structures" by Okasaki (1998)

      "Structure and Interpretation of Computer Programs" by Abelson and Sussman (1985)

      thread
    6. bmitcMay 2026
      There are a lot of good books here: https://pragprog.com/categories/architecture-design-and-test...

      I second the comment (https://news.ycombinator.com/item?id=48327571) recommending How to Design Programs (HTDP) and Structure and Interpretation of Computer Programs (SICP). The former has an edX course (https://www.edx.org/learn/coding/university-of-british-colum... and https://www.edx.org/learn/coding/university-of-british-colum...) and the latter has online lectures (https://www.youtube.com/watch?v=-J_xL4IGhJA&list=PLE18841CAB...)

      Head First Architecture (https://www.amazon.com/Head-First-Software-Architecture-Arch...) is good.

      Reading about systems thinking would be useful.

      Learning programming languages that have been well designed is helpful. I suggest Programming Erlang: Software for a Concurrent World and Elixir in Action.

      thread

    Related

    Cover of On LISP
    2007–2026

    On LISP

    Paul Graham
    192 recommend · 533
    Cover of How to Design Programs
    2007–2026

    How to Design Programs

    Matthias Felleisen
    277 recommend · 776
    Cover of The Little Schemer
    2007–2026

    The Little Schemer

    Daniel P. Friedman
    288 recommend · 652
    Cover of Practical Common Lisp
    2007–2026

    Practical Common Lisp

    Peter Seibel
    218 recommend · 400
    Cover of Purely functional data structures
    2007–2026

    Purely functional data structures

    Chris Okasaki
    87 recommend · 209
    Cover of Paradigms of Artificial Intelligence
    2007–2026

    Paradigms of Artificial Intelligence

    Peter Norvig
    63 recommend · 169
    Cover of The reasoned schemer
    2007–2026

    The reasoned schemer

    Daniel P. Friedman
    recommend · 107
    45
    Cover of Lisp in Small Pieces
    2007–2026

    Lisp in Small Pieces

    Christian Queinnec
    101 recommend · 246