The internet is brimming with curious content on just about everything. Here is some of my favourite pieces about software engineering, music, literature, and much more.
Notes on Distributed Systems for Young Bloods
Good collection of things to keep in mind when building/maintaining distributed systems. Case made for feature flags, extracting services, coordination and backpressure especially resonate.
The Lost Art of Structure Packing
Fascinating read about how individual fields of a struct are allocated memory and how we can optimise the same.
Home-Cooked Software and Barefoot Developers
If what this post describes is the outcome of accessibility to LLMs, our world will have changed for the better.
Beej's Guide to Network Programming
No nonsense, easy to approach guide to network concepts and socket programming.
Do Literally Anything
An articulate writeup about the feeling of being overwhelmed with the amount of tasks at hand. The solution? Do literally anything.
Four Kinds of Optimisation
Introduces different ways to approach optimisation, agnostic of the language. Complete with real world examples, this was a delight to read and ponder upon.
An interactive intro to CRDTs
Excellent introduction to how Conflict-free Replicated Data Types work. Stumbled across this while reading about how conflict resolution happens in multi leader replication.
Sample code of rate limiters at Stripe
Accompanying blogpost and the code snippets of all 4 kinds of rate limiters used in Stripe. Extremely simple and easy to follow.
An incomplete list of skills senior engineers need, beyond coding
Succinctly lists the qualities that any effective senior+ engineer should have.
Latency Numbers Every Programmer Should Know
Glanceable visual graphic to understand how long it takes to fetch data from different sources. Found this while reading System Design Interview.
Excellent guide on how to write professionally
How to write better error messages
Insightful post about how Wix improved their DX. Found this while working on a self initiated project internally to surface actionable error messages.
Don't call yourself a programmer, and other career advice
In the author’s own words, this is a README.txt for your career as a young engineer. Brimming with timeless advice and realities of our industry.
The Log: What every software engineer should know about real-time data's unifying abstraction
Excellent blog on log, how they are used in databases and distributed systems. One of my all time favourite pieces to re-read.