This is a personal collection of things I keep coming back to when I build software or work with others. It’s not meant to be complete or authoritative - just the stuff that has consistently helped me avoid confusion and unnecessary complexity. I add things here when they prove useful in practice, not just in theory.
Standards I default to
These are conventions I assume unless there’s a good reason not to.
-
RFC 2119 - https://datatracker.ietf.org/doc/html/rfc2119
Words like MUST and SHOULD are actually useful when used properly. They remove a lot of guessing from specs.
-
Semantic Versioning - https://semver.org
Version numbers should tell you what kind of change you’re dealing with, not just that something changed.
-
UTF-8 Everywhere - https://utf8everywhere.org
Text encoding shouldn’t be something you think about. UTF-8 as default avoids a lot of pain.
-
The Twelve-Factor App - https://12factor.net
It is an open, and pragmatic standard.
Ways I try to keep systems simple
Things I return to when complexity starts creeping in.
-
https://grugbrain.dev
A good reminder that most systems don’t need to be clever - they need to be understandable later.
Light read, but the point sticks: simple systems age better than smart ones.
-
Yegor Bugayenko’s books
Strong opinions on structure and object design. I don’t agree with everything, but it forces clarity.
-
Randall Munroe’s Books: What if + What if 2 + How To.
Masterclasses in reductionism.
Communication & behavioral efficiency
This is mostly about saving time and avoiding back-and-forth.
-
https://nohello.net Saying just “hello” doesn’t help much. I prefer messages that include the actual question or context right away.
-
Thomas Erikson: Surrounded by Idiots
-
Thomas Erikson: Surrounded by Liars
Future reads
Books I’ve got my eye on:
-
Chris Voss, Tahl Raz: Never Split the Difference: Negotiating As If Your Life Depended On It
-
Frederick Brooks: The Mythical Man-Month
-
Rob Fitzpatrick: The Mom Test
Closing note
This list isn’t fixed. Some things will stay here for years, others will probably disappear once I find better replacements. What matters to me is whether something still helps me make better decisions in real work.