Skip to content

Principles

Software exists to help people. That sounds simple, but keeping it true over time takes discipline. Code rots, complexity creeps in, and teams slow down without always noticing why. These pages focus on principles over recipes. The goal is to understand why something matters so you can apply it to your own context, not to follow rules blindly.

I wrote about these topics first because they were top of mind. More will follow. As I learn, read or discover more, existing pages will be updated too.

Quality covers the big picture: why software should be simple, what poor quality actually costs, and how to protect the developer experience that keeps teams productive.

Testing covers how to test well, from what makes a good test through to structuring code so it is easy to test in the first place.