29 Sep 2026
Declaring a menu where every entry might be hidden by a permission, a config setting or a feature flag. A fluent builder, and the decision that matters more than the chaining: storing how to find out rather than what the answer was.
More …
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 …