Lessons from the Workshop

    Complexity is a decision you postponed.

    Systems don't get complicated on their own. Every branch in the logic is a choice somebody declined to make.

    By Michael O'Callaghan ·

    When I open a product that has become hard to reason about, I don't find bad engineering. I find preserved indecision — two ways of doing the same thing, kept because choosing one meant telling someone no.

    Configuration flags, parallel flows, the setting nobody changes: each one is a small deferral that the codebase is now carrying interest on.

    This is why simplification work is rarely technical. It's the retroactive making of decisions that should have been made once, cheaply, in a room.

    The good news is that the reverse compounds too. A founder who decides promptly, in public, and in writing produces systems that stay legible for years without anybody working on legibility.

    If the complexity has crept up on you, it can be traced back — usually in one sitting.

    Book a Product Clarity Session

    Not ready? Take the two-minute Founder Clarity Score or read the guide to product strategy for founders.