Software Development

Twenty-odd years of writing line-of-business software in .NET, and this is where I write up the bits worth passing on: the patterns I use every day and what they’re actually called, the performance problems I keep finding in code reviews, and the occasional gotcha that ruined a Friday.

No toy examples. Everything here comes from code that shipped.

Design patterns in real code

Most developers are already using half the Gang of Four catalogue without knowing the names. This series takes the patterns one at a time, each explained with an everyday comparison and a real example out of an application I work on.

  1. You're Already Using Design Patterns, You Just Don't Know Their Names
  2. One Screen, Many Searches: Strategy and Keyed DI
  3. I Called It a Factory Without Knowing If It Was One

.NET performance in plain English

Why the code feels instant on your machine and falls over on real data, explained without the computer science.

Gotchas

The ones that look right, run clean, and quietly give you the wrong answer.

Building this site

Jekyll and GitHub Pages bits, mostly written up because I’d forget them otherwise.