Remix.run Logo
▲ Five memorable books about programming (2008)(prog21.dadgum.com)
136 points by andsoitis a day ago | 91 comments
▲so-cal-schemer a day ago | parent | next [-]

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

▲so-cal-schemer 5 hours ago | parent | next [-]

Here's another similar to Flake's, but using JS and with nice binding:

The Nature of Code: Simulating Natural Systems with JavaScript

by Daniel Shiffman

https://natureofcode.com/

https://openlibrary.org/works/OL20389247W/The_Nature_of_Code

▲a-tk a day ago | parent | prev | next [-]

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.

▲s_hegde a day ago | parent | prev [-]

I second the recommendation for The Nature of Computation; very well written with interesting problems.

▲rbanffy a day ago | parent | prev | next [-]

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.

▲jrmg a day ago | parent | prev | next [-]

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.

▲so-cal-schemer a day ago | parent | next [-]

Code and Elements of Computing Systems are two of the most recommended books (top 20) on HN according to a now defunct scraping site.

The Elements of Computing Systems: Building a Modern Computer from First Principles

by Noam Nisan and Shimon Schocken

https://openlibrary.org/works/OL21015000W/Elements_of_Comput...

▲rbanffy a day ago | parent | prev | next [-]

If, for nothing else, Programmers At Work has Bill Gates talking about dumpster diving for program listings.

The book is great - I love how Gary (IIRC) describes the centrality of data structures and how code kind of emerges from there.

▲so-cal-schemer a day ago | parent | next [-]

Classic!

The 2nd part reminds me of another in my personal library:

Algorithms + Data Structures = Programs

by Wirth

https://openlibrary.org/books/OL5191055M/Algorithms_data_str...

https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures...

▲jan_m_savage 18 hours ago | parent [-]

How did Wirth's book benefit you?

Wirth writes fast but well.

▲so-cal-schemer 18 hours ago | parent [-]

It was probably the first book on data structures and algorithms I came to possess (likely from a library book sale as a teen), so I would say I learned a lot from it, but don't remember the particulars. I remember it being clear and to the point, even though I didn't use Pascal, with good diagrams and nice printing. I read it as pseudocode.

It was a very compact hardcover edition that I could carry around easily in my backpack.

And it had a memorable title.

▲getpost 4 hours ago | parent | next [-]

I loved that book! Fortran was the language used in my first programming class, and it was a revelation seeing program examples in the comparatively lucid PASCAL.

▲so-cal-schemer 16 hours ago | parent | prev [-]

Ah. I realize the book I carried everywhere was this one:

Data Structures and Algorithms

by Aho, Hopcroft, and Ullman

https://openlibrary.org/books/OL3491774M/Data_structures_and...

but I own copies of both.

▲jan_m_savage 14 hours ago | parent [-]

Thanks.

Aho et al. was also given in Modula-3 which was perfect since Pascal-derived languages clearly motivate the why and the guts of the algos. C obscures them (too focused on pragmatism).

Wirth's DS + A = P book was also written in Modula-2, a better, real-world language, and the writing was tightened. Still can be found if you know where to look. (I have a German edition cuz I wanted to hear the man say it in his native language-- btw, I am not German).

▲drivers99 a day ago | parent | prev [-]

He writes about that and many other similar things in his recent autobiography of his younger years, "Source Code" (2025).

▲hcs a day ago | parent | prev [-]

Programmers at Work has a new edition, so might be easier to find now! https://www.programmersatwork.net/the-book

Agreed that Code is great! I'll pick up the second edition some day if I ever see it on a bookshelf.

▲jrmg 14 hours ago | parent [-]

I know this is all ‘judge a book by its cover’, but I was really disappointed in the second edition. It’s super cheaply printed compared to the first.

Black, thin, warped, glossy cover stock instead of that super nice feeling matte white one, and much thinner nastier paper (despite being longer the book is much thinner).

I have in the past given copies of ‘Code’ to people who’ve seemed interested in learning about computer science/engineering with a ‘this book is so good!’ and upon reflection just now I’m ashamed to say I’ve stopped doing that because the book _feels_ like a cheaply made textbook rather than a nicely presented popular science book now.

▲hcs 8 hours ago | parent [-]

Even later printings of the first edition of Code lose a lot of that nice hefty handbook feel, unfortunately.

▲so-cal-schemer 6 hours ago | parent [-]

I've mostly stopped recommending O'Reilly books at my public library because in many cases the printing has been so bad, it's embarrassing. Just-in-time manufacturing, I guess.

It's not like the old days when books were heirlooms with attentive layouts, quality paper and ink, and solid bindings. Addison-Wesley's offerings come to mind, even softcover books from Prentice-Hall. And especially the ancient Computer Science Series from McGraw-Hill College.

Manning and No Starch do a better job these days.

Here's a new hardcover many here could appreciate:

Heavy Wizardry 101: Shellcodes, Backdoors, Droppers, and Worms

by David Martínez Oliveira, aka Pico

https://nostarch.com/heavy-wizardry-101

▲so-cal-schemer 5 hours ago | parent [-]

s/mostly/almost/

O'Reilly still puts out many great, serious books with good formatting and decent binding + paper + printing.

Many of the new titles on machine learning, for instance.

▲pan69 a day ago | parent | prev | next [-]

> 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

▲so-cal-schemer a day ago | parent | next [-]

Excellent. I was just looking for the title for Abrash's graphics book.

Another from the same publisher is

Assembly Language Magic: Programming for the 8088-80386 by William H. Murray

https://openlibrary.org/books/OL2192212M/Assembly_language_m...

I really enjoyed my intro to RISC assembly:

SPARC Architecture, Assembly Language Programming, and C by Richard P. Paul

https://openlibrary.org/books/OL9285324M/SPARC_Architecture_...

Any recommendations for VAX or 68k or 6502 assembly (or ARM)?

▲so-cal-schemer a day ago | parent | next [-]

This looks like a fun book (that my library so far won't order..):

Classic Game Programming on the NES: Make your own retro video game

by Tony Cruise -- published 2024.

https://www.manning.com/books/classic-game-programming-on-th...

Do you have an amazing idea for a NES game you’ve been itching to turn into reality? Classic Game Programming on the NES will show you how. This all-practical beginner's guide is full of step-by-step guidance on everything from graphics and music, to enemy AI, to the 6502 Assembler language you need to get the most out of the NES.

https://www.amazon.com/dp/1633438015

▲pan69 a day ago | parent | prev [-]

Oh, those are good choices. Some other recommendations that you might be interested in:

See MIPS Run: Second Edition by Dominic Sweetman

ARM System-on-Chip Architecture by Steve Furber

I love both of these books.

▲so-cal-schemer a day ago | parent | next [-]

I was thinking of See MIPS Run. Always wanted a copy, checked it out once or twice long ago.

Why not go straight to Patterson & Hennessey?

Computer Architecture: A Quantitative Approach

https://openlibrary.org/works/OL2664271W/Computer_architectu...

Computer Organization and Design: The Hardware/Software Interface

https://openlibrary.org/works/OL2956523W/Computer_organizati...

▲so-cal-schemer a day ago | parent | prev | next [-]

Another book on modern ARM:

Blue Fox: Arm Assembly Internals and Reverse Engineering

by Maria Markstedter

https://www.wiley.com/en-au/shop/general-introductory-comput...

▲so-cal-schemer 19 hours ago | parent | prev | next [-]

Wow. I need Furber's book too.

▲rramadass 16 hours ago | parent | prev [-]

The Sweetman book on MIPS is one of the best to learn OS internals from and how exactly it interfaces to the hardware.

Complementing that is the excellent Unix Systems for Modern Architectures: Symmetric Multiprocessing and Caching for Kernel Programmers by Curt Schimmel.

Complementing the Furber book is the excellent Computer System Design: System-on-Chip by Michael Flynn and Wayne Luk.

And of course the classic ARM System Developer's Guide: Designing and Optimizing System Software by Andrew Sloss et al. is also a must read.

▲so-cal-schemer 7 hours ago | parent [-]

Thanks. I'll seek these out next time I get to a university library. I'd like to read more good books on multiprocessing.

Two other OS texts in my collection that I really enjoyed were:

UNIX Internals: The New Frontiers

by Uresh Vahalia

https://openlibrary.org/works/OL2938389W/Unix_Internals

and,

The Design and Implementation of the 4.4 BSD Operating System

by McKusick, Bostic, Karels, and Quarterman

https://openlibrary.org/works/OL19501888W/The_design_and_imp...

▲chj a day ago | parent | prev | next [-]

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

This one is really good.

▲alfiedotwtf a day ago | parent | prev | next [-]

The Abrash books are these days just for nostalgia, and wouldn’t recommend them to a junior dev wanting to level up (except the chapter on using timers).. instead I’d recommend:

- Latency by Pekka Enberg

- Rust Atomics and Locks by Mara Bos

- Code Optimisation by Kris Kaspersky

▲agumonkey 20 hours ago | parent | prev [-]

abrash black book reads like a thriller

▲dang a day ago | parent | prev | next [-]

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 a day ago | parent [-]

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

▲so-cal-schemer a day ago | parent | prev | next [-]

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

▲so-cal-schemer 19 hours ago | parent | prev | next [-]

Does this count?

Learning the Vi Editor by Linda Lamb

https://openlibrary.org/books/OL36777015M/Learning_the_Vi_Ed...

btw, vi turned 50 last week:

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

▲bitfhacker a day ago | parent | prev | next [-]

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 a day ago | parent [-]

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.

▲srean a day ago | parent | prev | next [-]

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

▲bigfishrunning a day ago | parent | next [-]

After reading the little schemer, I bought two more copies just to lend out to people. It's that good.

▲so-cal-schemer a day ago | parent | prev | next [-]

With continuation(s) in this follow up:

The Seasoned Schemer

https://mitpress.mit.edu/9780262561006/the-seasoned-schemer/

▲alfiedotwtf 21 hours ago | parent [-]

And then The Reasoned Schema.. that one will blow your mind and wonder why sadly PROLOG didn’t take off

▲so-cal-schemer 20 hours ago | parent [-]

Not to forget The Little Prover, The Little Typer, and The Little Learner.

One happy Little family.

https://openlibrary.org/works/OL21569615W/Little_Prover

https://openlibrary.org/works/OL20186830W/The_Little_Typer

https://openlibrary.org/works/OL28874136W/Little_Learner

And Grandpa, The Little LISPer

https://openlibrary.org/works/OL2938932W/The_little_LISPer

and cousins, The Little MLer

https://openlibrary.org/works/OL2729083W/The_little_MLer

and A Little Java, a Few Patterns

https://openlibrary.org/works/OL2729082W/A_little_Java_a_few...

▲so-cal-schemer 19 hours ago | parent [-]

Now I wonder if the cover of The Little Learner is a reference to The Turing Omnibus..

The New Turing Omnibus: Sixty-Six Excursions in Computer Science

by A.K. Dewdney

https://openlibrary.org/works/OL1950479W/The_%28new%29_turin...

▲__rito__ 11 hours ago | parent | prev | next [-]

Had the same feeling after reading Little Schemer.

▲shmoil a day ago | parent | prev [-]

What a weird book.

▲vincent-manis a day ago | parent [-]

You don't like Japanese prints?

▲Flow a day ago | parent | prev | next [-]

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

▲so-cal-schemer a day ago | parent [-]

The intersection of these (illustrated-style ∩ Lisp) might be

Land of Lisp: Learn to Program in Lisp, One Game at a Time!

by Conrad Barski

https://openlibrary.org/works/OL16807102W/Land_of_Lisp

Though, I've seen some comments that some of the code isn't idiomatic or something; probably not a great book to learn Lisp from.

https://www.goodreads.com/en/book/show/6905041-land-of-lisp

-- Not an easy book to get ahold of these days (like most of these)

▲so-cal-schemer a day ago | parent [-]

Maybe not so hard to find! (worth a look and check out the music video):

http://landoflisp.com/

comment from pg: "Turns out the border between genius and insanity is a pretty cheery place"

▲so-cal-schemer 7 hours ago | parent [-]

I'm surprised nobody ever mentions pg's CL book. It has his characteristic easy reading style, is a nice compact size, and used copies are easy to come by.

ANSI Common Lisp by Paul Graham

https://openlibrary.org/works/OL7944696W/ANSI_Common_Lisp

▲JKCalhoun a day ago | parent | prev | next [-]

“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.”

▲lanthissa a day ago | parent | prev | next [-]

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

▲so-cal-schemer a day ago | parent [-]

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

Likewise, (take/TA?) HtDP at UBC.

▲so-cal-schemer a day ago | parent | prev | next [-]

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 a day ago | parent [-]

for Haskell there is also,

The Haskell School of Expression: Learning Functional Programming through Multimedia

by Paul Hudak

https://openlibrary.org/works/OL8325694W/The_Haskell_School_...

https://www.cs.yale.edu/homes/hudak/SOE/

and related,

The Haskell School of Music

https://www.cs.yale.edu/homes/hudak/Papers/HSoM.pdf

▲adityaathalye a day ago | parent | prev | next [-]

dadgum! It's been a while...

> but I'd like to highlight some of the more esoteric books which affected my thinking

In the same vein, James Hagues's whole blog is wonderful; well-informed, witty, funny, incisive, insightful, with personality... I learned much from avidly reading it, while he was actively publishing. Thanks, James!

Also, I am cracking up at the construction of the site subtitle... It's not just tongue-in-cheek. It's also funny and with the times. :p :)

▲Lum2 11 hours ago | parent [-]

Wonderful indeed (I didn't know him), a treasure-trove of (un)common sense and humanity, encouraging amid the AI extinction event.

▲pluc a day ago | parent | prev | next [-]

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

▲adamddev1 a day ago | parent | next [-]

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 a day ago | parent | next [-]

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 a day ago | parent | prev [-]

> 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 a day ago | parent | next [-]

That was a typo - I meant new ideas

▲perrygeo a day ago | parent [-]

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 a day ago | parent | prev [-]

Perhaps he was thinking of vibe coders.

s/ideas/understanding/

a glitch in the dialogue

▲so-cal-schemer a day ago | parent | prev | next [-]

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__ a day ago | parent [-]

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.)

▲kragen a day ago | parent | prev | next [-]

Over the last few weeks, I've been eliciting a compiler for an experimental programming language called 5emel from Claude Opus 5.5. To give you the flavor, here's a randomly selected function from its compiler:

    # The table of the program's own functions, by their descriptors, which
    # the runtime searches for --memo-every and --memo-all.
    def function_data(:defs) =
      :rows = loop :next(:r = defs, :acc = []) (
        | [] = r; acc
        | [Def { :fname, _, _, _ }, ...:more] = r;
          next(more, [acc, "  .quad d_", fname, "\n"])
      );
      ["  .balign 8\n  .globl rt_functions, rt_nfunctions\n",
       "rt_nfunctions: .quad ", show(length(defs)), "\n",
       "rt_functions:\n", rows]
There's a lot of code in 5emel I haven't read; there's something like 15000 lines of TypeScript and JavaScript and 3000 lines of C. I've read almost none of any of that. I haven't even read all of the compiler, which is only about 1600 lines of code.

Despite that, I think I've been putting my extensive past reading of programming books to pretty good use in this process. 5emel is directed at finding a workable, though not optimal, general solution to one of the famously most difficult problems in computer science, and if it is successful, I think it'll be a real advance — and one that LLM coders can use as well as human coders. Better, maybe.

Maybe, six months from now, AIs will be good enough to devise better programming languages on their own so they can program things more easily. They don't seem to be able to do that right now, though, so my skillset doesn't seem completely obsolete yet.

However, I play go recreationally, even though AlphaGo already plays go better than any human ever could, and possibly better than any human ever will. Often go players consult KataGo or a similar AI to improve their game. So I anticipate that, even if my programming skillset is completely surpassed by AIs, I'll probably still enjoy doing things like 5emel (if I have the chance), just like I enjoy playing Minetest and walking around my neighborhood at sunset.

By the way, there's probably enough information in the above snippet to recreate all of the important parts of 5emel. I fed it to an Incognito Claude session and asked it to explain it, and it explained basically all of the significant aspects of the language, although it wasn't sure about some of them. You could probably elicit the rest of the compiler and runtime system from it, although you'll probably have to fight your way through a lot of the same problems I have.

▲so-cal-schemer a day ago | parent [-]

I confess this is above my pay grade, but very intersting and I would like to probe the machine with this data.

I enjoy your choice of phrase: 'to elicit' code from Claude. Like wishes from the Djinn. I imagine a guiding light through the Library of Babel ..or a trail of bread crumbs.

Over several months I watched over a friend's shoulder, with heavy lifting from Cluade, as he designed and verified a PCB for an IoT SoC with custom drivers for components, even hacking a video encoder to be a partial GPU such that it can playably run Quake (and more planned). And another friend designing a RISC-V core in an FPGA with aid from AI. I feel like quoting Roy Batty in Bladerunner.

Anyway.. mate?

▲kragen a day ago | parent [-]

Totally.

I'm going to try to write 5emel up properly this weekend.

▲so-cal-schemer a day ago | parent | prev [-]

Also, this guy:

https://www.reddit.com/r/vintagecomputing/comments/1amon8p/d...

▲ludicrousdispla 21 hours ago | parent | prev | next [-]

Who can forget Carlton Egremont III's Mr. Bunny's Big Cup o' Java ?

▲WillAdams a day ago | parent | prev | next [-]

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...

▲so-cal-schemer a day ago | parent [-]

I was able to get my local college to buy a copy, but I have yet to read it all the way through.

Another I got them to purchase is

Exercises in Programming Style

by Cristina Videira Lopes

https://openlibrary.org/works/OL20754451W/Exercises_in_Progr...

▲cagz 21 hours ago | parent | prev | next [-]

May I add:

Uncle Bob's Clean Code and

Denis Ritchie's C programming language

▲jdw64 a day ago | parent | prev | next [-]

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.

▲so-cal-schemer a day ago | parent | next [-]

SDF is CC Attribution-ShareAlike. I like reading the epub available at IA:

https://archive.org/details/software-design-for-flexibility_...

https://en.wikipedia.org/wiki/Creative_Commons_license#BY-SA

▲so-cal-schemer a day ago | parent | prev [-]

My impression was the opinions on SDF aren't divided so much as most of the scant reviewers were unprepared to grok this book. As much as people like to cite SICP, "Advanced SICP" flew totally under the radar.

▲jdw64 a day ago | parent [-]

That could be the case! I found it a great help when working on programs that interface with PLCs.

▲so-cal-schemer a day ago | parent [-]

One day, maybe soon, I'd like to organize an online book club to go through it.

(and we can finish with our own review)

▲ankkalinna a day ago | parent [-]

Anywhere to stay updated in case you decide to organize this?

▲so-cal-schemer a day ago | parent [-]

I'll post a "Show HN" if I do.

I was in such a Discord for SICP (covering a section a week) with a few friends at codeandcoffee . dev last year, but it's been pretty quiet lately.

https://www.codeandcoffee.dev/

▲optimalsolver a day ago | parent | prev | next [-]

The Atari Programming Manual, just for the cover alone:

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

▲rramadass 21 hours ago | parent | prev | next [-]

There are a lot of classics which can be listed here, but the following two w.r.t. systems software come to mind;

1) Systems Programming by John Donovan. A classic from the 1970s, one of the first to really lay out the software interface to hardware in practical terms.

2) System Software: An Introduction to Systems Programming by Leland Beck. This is sort of a successor to the above but from the 1980s/1990s.

There are too few books on this subject and with the rise of Hypervisors/VMs, Managed Languages, Containers, Emulators etc. we need a practical survey book on this entire domain.

▲so-cal-schemer 19 hours ago | parent [-]

I love these. Thanks!

▲jbmchuck a day ago | parent | prev | next [-]

I'm a huge fan of Kernighan and Pike's 'The Practice of Programming'. An incredibly clearly written book that manages to show how to write great code without falling into any cargo cult acronym nonsense.

▲so-cal-schemer a day ago | parent [-]

^ another book I enjoyed very much. Underrated.

▲so-cal-schemer a day ago | parent | prev | next [-]

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 a day ago | parent | prev | next [-]

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.

▲so-cal-schemer a day ago | parent [-]

with a 2nd edition released this year:

https://www.oreilly.com/library/view/designing-data-intensiv...

and another memorable book with Martin Kleppmann:

Secret Colors: A Gentle Introduction to Cryptography

https://openlibrary.org/works/OL29241370W/Secret_Colors

▲riskd a day ago | parent | prev [-]

The only