Gene's Blog

Inane ramblings from a guy who grew up on the 90s internet



Gene’s Law: Any specification, no matter how detailed, can always be implemented in a way that is both conformant and useless.

This is my attempt to describe a phenomenon that I’ve seen in software. Some teams can run on tickets with just titles and everything kind of just works out. Other teams need to spend weeks defining everything in the ticket, they produce prodigious amounts of prose, and something still goes wrong. Tickets, ultimately, are specifications of features. Everything in the specification was followed, and yet the feature is not as requested. Teams often take this as a clue that they haven’t specified enough, but I’ve never actually seen them specify their way out of the problem.

My hypothesis, is that the former team has devs who care. They care enough to build an accurate mental model and, as a result, they build the feature that the stakeholder actually needs. If their mental model doesn’t properly include the feature, they care enough about the product to go figure out the “right thing” to be built.