04 Oct 2026
Every option in our menu declares its own permission rule. No category declares anything, and yet empty categories disappear on their own. That's the Composite pattern, and it's the reason nobody has to write the rule you'd expect to find.
More …
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 …