Found in 4 comments on Hacker News
The cover of the second edition of Stevens’ “Advanced Programming in the Unix Environment” has that strip on its cover. [0]. Love it.


garren · 2022-07-04 · Original thread
If your goal is to become a "better" coder, doubling down on understanding the fundamentals rather than the specifics of a given language seems like an approach to consider.

That said, others here have recommended C instead or in addition to Rust or Go; this makes sense to me.

C is actively used and remains the lingua franca of low/system level programs (for the time being.) I'd also say that its relatively simple syntax and closeness to the underlying representation have a lot going for it (at least what you'd imagine the underlying assembly representation to be - hardware and clever compilers are doing a lot.)

The C language is simple, more than either Rust or Go, and can be picked up quickly, in my view. But actually understanding and using it competently is an altogether different matter.

Additionally, an absolute wealth of books introducing OS, drivers, and system and network programming topics using C exist. Projects like Xv6, Minix, and even Linux provide for code bases to run through and explore

- Computer Systems: A Programmer's Perspective [0]

- The Linux Programming Interface [1]

- Advanced Programming in the UNIX Environment [2]

- Dive into Systems [3]

And the list goes on and on.

You'll likely never write production code or push production projects in C (one hopes), but it seems to me that it remains a very useful language to be able to work with and to understand.





yongjik · 2016-08-25 · Original thread
Immortalized on the cover of APUE 2nd Ed.:

unwind · 2010-02-10 · Original thread
I imagine this as a big soft-bound book, kind of like

Then, when you open it, the first non-blank page just says, centered on the page in a large, bold, type:


Fresh book recommendations delivered straight to your inbox every Thursday.