There is no best option.
WHAT EVERY DECISION INVOLVES
Gaining something and giving up something else.
WHAT THE COMMON TRADE-OFFS ARE
Speed of delivery against long-term maintainability Flexibility against simplicity Performance against readability Consistency against availability, in distributed systems Building against buying
WHY NAMING THEM MATTERS
Unstated trade-offs become disputes about preference.
WHAT TO DO WHEN DECIDING
State the options State what each gains and costs State the assumptions Choose, and record why
WHY RECORD THE REASONING
So whoever questions it later can evaluate whether the reasoning still holds.
WHAT CHANGES A CORRECT DECISION INTO A WRONG ONE
Circumstances changing, not the decision being poor.
WHAT TO REVISIT
Decisions whose assumptions have changed.
WHAT TO AVOID
Deciding by who argues most persistently Deciding by what is fashionable Refusing to decide
WHY THAT LAST ONE
Undecided questions block work, and are usually decided badly by default.
WHAT TO ACCEPT
Most decisions are reversible, and can be made quickly.