There’s an old saying in software development circles:
The fastest code is no code.
By this, we mean that nothing will ever run faster or be more perfectly optimised than the feature you don’t include.
There are multiple reasons why some piece of functionality might not make the final cut.
For instance:
- You may have made the strategic choice to build lean.
- Maybe it’s a hard call demanded by outside pressures (like deadlines).
- Perhaps you’ve simply done a cost-benefit analysis and determined that it’s not worth the investment.
Whatever the case may be, the lesson is the same.
Every decision is a trade-off.
The lighter you travel, the faster you move. The more baggage you carry, the more energy it takes to reach your destination.
By choosing to omit something, you not only save the effort required to build it in the first place… but you also avoid the long-tail optimisation, maintenance, and extension costs that accrue over its lifetime.
Decisions about what should be included or excluded can’t just be made in a vacuum. Particularly when we’re talking about changes with potential for wide-reaching impact.
We might be okay with the price we pay today. But when the bill comes due tomorrow, next week, next month – is it still a good deal?
The choice to integrate something is made in a moment.
The requirement to maintain it is imposed for a lifetime.
Of course, this doesn’t just apply to software.
It also goes for processes, habits, commitments, hiring: any place where the deliberation of a moment can create long-lasting consequences.
Before we buy, it’s worth considering what the full cost will be.
Look beyond what’s required here & now.
Look further down the path.
If it doesn’t lead somewhere you like, think twice before moving forward.