Reading this post when it came out was absolutely mind-blowing. Now that more and more compute is being done on GPUs, it doesn't feel quite as revolutionary now, but what a crazy idea it was at the time.
How to ask questions the smart way - this is a classic, and can still be helpful if you run into a lot of people who ask a lot of XY Problems or ask for help without giving the information needed to properly diagnose a problem
Writing Well - a guide on how to iteratively write good documents - this was helpful for me when I wanted to move beyond "just" coding
Don't Fix It Just Because It's Technical Debt - this got me to re-think pushing management to schedule engineering time for tech debt and got me to start bundling it in with features
I'm sure if I dig through my disorganized obsidian vault I could find more, but those are the ones which were the most helpful for me. Interestingly they seem to be more on the social side rather than purely technical.
However if you're open to pure snark, I've got a few more (there are others, but I'm trying to keep them substantial, and at least fairly evergreen):
The best book I've read - Data-Oriented Design. It's becoming more mainstream now but I don't always know if the right things have been taken away from it... a lot of the focus is on throughput, not just data layout.
C Isn't A Programming Language Anymore I just find this a really interesting read, and find it astounding how much stuff is built off of assumptions about the C linking model.
An app can be a home-cooked meal Even though Im in a vastly different field, a reminder that not everything we do with code has to be commercially viable.
Complexity Has to Live Somewhere This is my go to article for sending whenever somone wants to split something up into 5 different parts for 'simplicity', even when it makes the whole more complex.
I am not a supplier Another one on the theme of commercial viability and open source, just because I put code out there doesnt mean I owe any users of that code anything.
A lot of Alexis' writing is my favorite as it changed how I think about programming. I really like the personality that comes through in the writing and the presentation of the site.
NLP (almost) From Scratch. it does a great job of describing the "why should I care?" and the "what" (for something that was a completely new paradigm to most of the paper's audience).
In particular the CLU language was very forward looking. I find it ironic that Liskov is so well known for Inheritence, which she did work on, but her work before that eschewed inheritance entirely and focused on other abstractions. After her work on sub-typing she shifted to distributed systems (I think) so that represents only a small part of her career.
Not only do I wholeheartedly agree with you, these three books have persisted in my collection and are sitting on a shelf behind me to this day. Have I cracked them open in the past decade? Likely not, but just looking at them reminds me of pivotal times in my life and education and I can't bear to part with them.
The first I also got from my father (basement bookshelf in my case, not desk). The second I bought myself. The third, IIRC, was a hand-me-down from @pushxcx cleaning out his bookshelves and taking pity on a young college student.
Good memories all around and absolutely solid writing.
LesleyLai | 18 hours ago
Just writing down what popped into my head.
Everything Bob Nystrom: Game Programming Patterns, Crafting Interpreters, and blog.
Other blog posts:
Books:
stargirl | 2 hours ago
Second Bob's books. Love that guy, incredible writer. 🙂
[OP] dubiouslittlecreature | 21 hours ago
My personal favorite: The Dolphin blog post on Ubershaders
jrandomhacker | 3 hours ago
Reading this post when it came out was absolutely mind-blowing. Now that more and more compute is being done on GPUs, it doesn't feel quite as revolutionary now, but what a crazy idea it was at the time.
kmicklas | 19 hours ago
Rust Atomics and Locks is definitely the best technical book I have read in a long while.
Halkcyon | 4 hours ago
ref: https://marabos.nl/atomics/
hyPiRion | 6 hours ago
I really enjoy Amir Patel's blog Red Blob Games, which contains a lot of good interactive visual blog posts on algorithms for game development.
Tef is also good at writing, I particularly like the post How do you cut a monolith in half?.
belak | 12 hours ago
In terms of actually useful articles:
I'm sure if I dig through my disorganized obsidian vault I could find more, but those are the ones which were the most helpful for me. Interestingly they seem to be more on the social side rather than purely technical.
However if you're open to pure snark, I've got a few more (there are others, but I'm trying to keep them substantial, and at least fairly evergreen):
matklad | 9 hours ago
https://matklad.github.io/links.html
WilhelmVonWeiner | 13 hours ago
The best book I've read - Data-Oriented Design. It's becoming more mainstream now but I don't always know if the right things have been taken away from it... a lot of the focus is on throughput, not just data layout.
BinaryIgor | 13 hours ago
Code: The Hidden Language of Computer Hardware and Software
bones | an hour ago
My favorite book to gift! And just behind, is the "other" amazing "Code" book:
Simon Singh- The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography
claytonwramsey | 13 hours ago
I went through my bookmarks and ran into these:
Toric | 2 hours ago
jamesw | 11 hours ago
Big fan of matklad’s Simple but Powerful Pratt Parsing and Resilient LL Parsing Tutorial and go back to them a lot when writing parsers.
Halkcyon | 4 hours ago
https://lexi-lambda.github.io/blog/2019/11/05/parse-don-t-validate/
A lot of Alexis' writing is my favorite as it changed how I think about programming. I really like the personality that comes through in the writing and the presentation of the site.
[OP] dubiouslittlecreature | 2 hours ago
Oh yeah, that one's a favorite too
bobpoekert | 2 hours ago
NLP (almost) From Scratch. it does a great job of describing the "why should I care?" and the "what" (for something that was a completely new paradigm to most of the paper's audience).
justinhj | an hour ago
Sharing some of the older classics. I find it refreshing to see how people were thinking when the frontier of our craft was unexplored:
Program Development by Stepwise Refinement - Niklaus Wirth
Notes on structured programming - Dijkstra
Abstraction Mechanisms in CLU - Barbara Liskov
In particular the CLU language was very forward looking. I find it ironic that Liskov is so well known for Inheritence, which she did work on, but her work before that eschewed inheritance entirely and focused on other abstractions. After her work on sub-typing she shifted to distributed systems (I think) so that represents only a small part of her career.
amoroso | 9 hours ago
The manual of the Coherent Unix clone which made me grok Unix in the early 1990s.
sjsadowski | 7 hours ago
Showing my age, maybe:
thesnarky1 | 7 hours ago
Not only do I wholeheartedly agree with you, these three books have persisted in my collection and are sitting on a shelf behind me to this day. Have I cracked them open in the past decade? Likely not, but just looking at them reminds me of pivotal times in my life and education and I can't bear to part with them.
The first I also got from my father (basement bookshelf in my case, not desk). The second I bought myself. The third, IIRC, was a hand-me-down from @pushxcx cleaning out his bookshelves and taking pity on a young college student.
Good memories all around and absolutely solid writing.