24 Sep 2026
Two checks that every event handler had to do before it did anything, written out by hand in each one, until somebody wrote a handler and missed them. The Template Method pattern, and why it isn't the same as putting shared code in a base class.
More …
20 Sep 2026
I needed new things to happen when old things happened, without editing the old things. Domain events and the Observer pattern, in code that had been running for ten years before I turned up with an idea.
More …
19 Sep 2026
Replacing a dead dimmer on a UK 2-way circuit with only two cores between the switches, and the manufacturer-specific Zigbee attribute you need to write because no Hubitat driver exposes it.
More …
16 Sep 2026
One screen, a drop-down, and eighteen different ways of analysing the data behind it. The Factory pattern in real code, and why the thing everyone calls a factory isn't in the famous book at all.
More …
14 Sep 2026
A single search screen that works for customers, invoices, orders and every other entity in the app. One interface, many behaviours, and the keyed dependency injection that picks the right one. The Strategy pattern, in real code.
More …