Papers
32 articles · all categories
April 2026
Just Read the Paper
Read more papers. You can learn the latest and greatest in your field in one chill afternoon.
September 2024
The Laws of Software Evolution
Manny Lehman was one of the first to notice that software is never done. It just continues to evolve forever.
July 2024
Why SQL is Forever
Never underestimate the power of good marketing for bad products. NoSQL was fun but SQL is here to stay.
April 2024
43 years of the actor model
The actor model is now part of everyday tooling and ensures concurrency safety. Understanding the principles behind it helps you write less buggy code.
June 2023
Why taming architectural complexity is paramount
Unravel the hidden costs of architectural complexity in software engineering and learn practical strategies to tackle it. Boost productivity, reduce defects, and improve staff retention with insights from an MIT PhD thesis.
May 2023
Two types of complexity and their impact
Complicated code slows down junior devs, while complex systems impact senior devs more. Focus on managing system complexity & dependencies, not just simplifying code.
You can't fix the wrong abstraction
Unlock the secrets to combating architectural complexity in software development and learn to identify and fix the wrong abstraction. Boost productivity, reduce bugs, and retain more staff.
Eight things to know about LLMs
eightthings.pdf is the best paper I've read on what's going on in AI right now and why everyone is excited. Here's my summary.
September 2022
Notes on A Relational Model of Data for Large Shared Data Banks
In 1970 a paper came out that changed the world of business computing. It laid the ground work for modern databases.
July 2022
What makes a great software engineer?
In 2015 a group of researchers asked 59 experienced engineers at Microsoft "What makes a great software engineer?". Here's what they found.
April 2022
Code Review Practices for Refactoring Changes
Do you review refactoring pull requests differently than you do others? An empirical study of OpenStack, an open source cloud platform, says that you do and finds 6 common criteria.
November 2021
Finding unresolved promises in JavaScript
JavaScript is a fantastic server-side language because it's async. That also makes it tricky. 💩 What happens when you swallow errors? Forget to resolve promises? Or run into a number of other anti-patterns