Links
A collection of links I find myself repeatedly sharing or referencing.
Programming, Software Engineering & System Design
- John Carmack on Inlined Code
- The Error Model
- Invariants: a Better Debugger?
- Talks That Changed How I Think About Programming
- A Philosophy of Software Design vs Clean Code
- API Simplicity
- Programming Languages Personified
- What Every C Programmer Should Know About Undefined Behavior
- Binary Search Isn't About Search
- Code Only Says What it Does
- The Architecture of Open Source Applications
- 12 Steps to Better Code
- Simple Testing Can Prevent Most Critical Failures
- How I build a feature
- A Quiet Defense of Patterns
- One machine can go pretty far if you build things properly
- Your Code Doesn't Have to Be a Mess
- The simplest thing that could possibly work
- Attractive nuisances in software design
- In the Long Run
- Look for technological sharks
- My Approach to Building Large Technical Projects
- 42 things I learned from building a production database
- Notes on Gitlabs Postgres Schema
- Software Recommendations
- Have you tried the exact opposite?
- End Users over All Else
- Design Pressure
- Git branching strategy diagrams
- The Outside View
- The Success and Failure of Ninja
Resources
Team Culture
- Managing Conflict
- Remote work requires communicating more, less frequently
- I Don't Believe in Sprints
- The Demo Loop
- "The Only Difference Between Screwing Around and Science Is Writing It Down"
- Checklists are hard (but still a good thing)
- Documenting what you're willing to support (and not)
- Meetings are a point of escalation, not the starting point of a conversation
- Personality Test and Nazis
Reflection
- Trying
- A Lesson in Humility
- Getting Tied Up
- Community Safety and Ignoring the World
- Blogging and the heat death of the universe
- Dieter Rams: Ten Principles for Good Design
- Chesterton's Fence
- Thai food diplomacy
- On success
- Finding Your Own Way