Five memorable books about programming (2008)

(prog21.dadgum.com)

83 points | by andsoitis 8 hours ago ago

53 comments

  • rbanffy 3 hours ago ago

    For me, the blue Smalltalk book by Adele Goldberg was deeply formative. It was computing done right and from first principles.

    The other two formative experiences for me were using Cincom’s Mantis on the 3278 and Dataflex 2. Both made it obvious how quickly one could go from screen to persisted data, CRUD, application logic, and reporting with the right level of abstraction. Much later I described Dataflex as “Rails for the VT100”. Sadly, Cincom will not provide a hobby license to run it on an emulated 4381, and won’t even give away free manuals, and the company behind Dataflex (I don’t remember their name right now) seems to not even have any versions from that time. When I read Paul Graham’s Beating the Averages, it all clicked perfectly.

  • so-cal-schemer 5 hours ago ago

    How about Higher-Order Perl by Mark Jason Dominus?

    https://hop.perl.plover.com/

    Some other great low flying titles:

    The Computational Beauty of Nature by Gary William Flake

    https://mitpress.mit.edu/9780262561273/the-computational-bea...

    The Nature of Computation by Cristopher Moore and Stephan Mertens.

    https://nature-of-computation.org/

    Algorithms by S. Dasgupta, C.H. Papadimitriou, and U.V. Vazirani

    https://cseweb.ucsd.edu/~dasgupta/book/index.html

    and On Lisp, of course:

    https://www.paulgraham.com/onlisp.html

    • a-tk 5 hours ago ago

      I would also recommend Higher Order Perl. I went through it this summer after a recommendation. I don't know Perl, and found it was more focused on practical functional programming techniques, and provides creative and interesting justification for its topics, which can be rewritten in other languages too. Great book.

  • jrmg 4 hours ago ago

    Programmers at work: I bought a used copy of it - probably after reading this the first time it was posted. Great book, if you can find it.

    Code, by Charles Petzold should be on any programmer’s list - and the list of anyone with curiosity about how the modern world works. It somehow manages the amazing trick of being readable for the novice, but also containing nuggets of insight for the expert all at the same time. Such a well written book.

  • dang 6 hours ago ago

    Related. Others?

    Five Memorable Books About Programming - https://news.ycombinator.com/item?id=3917165 - May 2012 (1 comment)

    Five Memorable Books About Programming - https://news.ycombinator.com/item?id=128054 - March 2008 (14 comments)

    • so-cal-schemer 5 hours ago ago

      Expert C Programming by Peter van der Linden comes up a lot in these discussions. One of my favorites.

  • pan69 5 hours ago ago

    > The majority of the book was about detailed optimization for the 8088 and 8086, yet it was published when the 80486 was showing up in high-end desktop PCs.

    The book goes all the way up to discussing the 386. It's just that the foundations is rooted in 8086, which is a large chunk of the book.

    My favorite books (or the ones I have spend most time with) and that have been most formative for me are:

    Mastering Turbo Assembler by Tom Swan

    Zen of Graphics Programming by Michael Abrash

    The Zen Of Assembly Language by Michael Abrash

    Programmer's Guide to the EGA, VGA, and Super VGA Cards by Richard F. Ferraro

    The Indispensable PC Hardware Book by Hans-Peter Messmer

  • lanthissa an hour ago ago

    functional programming in scala was probably the biggest level up of my career from a book

    • so-cal-schemer 3 minutes ago ago

      A dream of mine is to study some Scala at EPFL.

  • bitfhacker 2 hours ago ago

    The book that made me see programming differently and the one that taught me the most was The C Programming Language, by Dennis Ritchie.

    • so-cal-schemer 43 minutes ago ago

      AKA K&R for Brian Kernighan & dmr.

      Another regret was not getting my copy signed at a certain USENIX ATC.

      ..tho, actually Dennis was there with Ken and Rob, not Brian.

  • JKCalhoun 6 hours ago ago

    “This is also one of the most bizarrely delayed technical book releases I can recall. The majority of the book was about detailed optimization for the 8088 and 8086…”

    I’m starting work on the (tentatively titled) “The Second Book of KIM.”

  • so-cal-schemer 2 hours ago ago

    Has anyone read or can comment on this one?:

    Functional Design and Architecture: Examples in Haskell

    by Alexander Granin

    https://www.manning.com/books/functional-design-and-architec...

  • so-cal-schemer 6 hours ago ago

    These are great books. I was going to suggest Zen of Assembly Language and Leo Brodie's books for this list from last month:

    Show HN: The rarest tech books and docs you've probably never read(https://readrare.com/)

    191 points|miletus|29 days ago|67 comments

    https://news.ycombinator.com/item?id=50024055

  • Flow 6 hours ago ago

    My favorite two computer books are “Starting Forth” and “Let over Lambda”. It’s something about the language and the approach I like.

  • srean 7 hours ago ago

    Rarely have I felt the urge to fly out of my building and grab any random guy on the street and exclaim can you see how cool this is, can you please.

    That happened to me when I read The Little Schemer.

    https://mitpress.mit.edu/9780262560993/the-little-schemer/

    (The other time was when I saw a Hasui)

    https://ukiyo-e.org/artist/kawase-hasui

  • WillAdams 2 hours ago ago

    Published since then, and one which I need to re-read yet again is _A Philosophy of Software Design_ by John Ousterhout:

    https://www.goodreads.com/book/show/39996759-a-philosophy-of...

  • pluc 5 hours ago ago

    Who reads programming books anymore? People don't even read code

    • adamddev1 4 hours ago ago

      The people who build all the solid, crucial parts of the infrastructure and tools that the vibe coders depend on. People who are pushing forward with new ideas. People who are building solid, snappy, delightful software. People who take joy in understanding the logic and creating solid, novel abstractions.

      It is such a big category error to say "we're building simple apps without looking at code, therefore no one reads code anymore."

      I'm not sure if this comment is meant as a little joke or observation, but I keep on seeing serious comments like this. It is serious anti-intellectualism to scoff at people reading programming books or understanding things.

      • pitchlatte an hour ago ago

        well written. i also feel that the generation of code becoming possible/simple means that our theoretical fundamentals ought to become that much more secure.

      • perrygeo 3 hours ago ago

        > People who are pushing forward with no ideas.

        s/no/new ideas?

        The people pushing forward with no ideas are likely not reading much either.

        • adamddev1 3 hours ago ago

          That was a typo - I meant new ideas

          • perrygeo 3 hours ago ago

            Got it. Yeah, everything we'd consider "new ideas" demands, at the very minimum, a strident curiosity about how things currently work. Those people tend to read. A lot.

        • so-cal-schemer 3 hours ago ago

          Perhaps he was thinking of vibe coders.

          s/ideas/understanding/

          a glitch in the dialogue

    • so-cal-schemer an hour ago ago
    • so-cal-schemer 2 hours ago ago

      I still think the return-on-time from a good book is greater than a lecture or video or discussion. There is just so much refinement and information density, plus the ability to skip around to find interesting content is hard to match. (there is also something to be said for reinforcement of memory via spatial awareness while reading a physical book that is lost on a screen).

      An interactive portal to a digital book could rival or surpass the experience, but I haven't encountered that yet.

      • __mharrison__ an hour ago ago

        Great points.

        Once if the great things about books is that the author was required to plan out a path to take you along. Most shorter content skips that.

        Also love physical books and the spatial reinforcement.

        (I'm probably biased as a book author because books sales are definitely in a slump.)

  • jdw64 6 hours ago ago

    Software Design for Flexibility (2021) This book left the deepest impression on me. I was fascinated by the concept of additive programming. Personally, I spent a good while thinking about and studying the idea of "evolvability." True, the overuse of flexibility can obscure control flow, and opinions on the book are divided but I learned many concepts from it. Since I often work on maintaining and modifying legacy code, this book was a great help.

  • optimalsolver an hour ago ago

    The Atari Programming Manual, just for the cover alone:

    https://www.reddit.com/r/RetroFuturism/comments/13fq9xy/atar...

  • so-cal-schemer 5 hours ago ago

    Another on my reading list:

    The Art of the Metaobject Protocol by Gregor Kiczales et al

    https://openlibrary.org/works/OL4088774W/The_art_of_the_meta...

    https://en.wikipedia.org/wiki/The_Art_of_the_Metaobject_Prot...

  • milofeynman 3 hours ago ago

    The only technical book I own is Designing Data-Intensive Applications and I think everyone should read the first part of it.

    I prefer learning as I go and have never enjoyed technical books, but I think everything is basically a database and understanding those fundamentals is very helpful.

  • riskd 4 hours ago ago

    The only