Budget by value, not by guesswork
Overruns rarely come from hourly rates. They come from ambiguous requirements: every vague line in a proposal becomes a negotiation later, and you pay for it in change requests. Convert business goals into clear features, integrations, and acceptance criteria before comparing prices — otherwise you are comparing guesses.
“Price is what you pay. Value is what you get.”
Warren Buffett
Split commodity vs. differentiation modules
- Commodity: auth, profiles, base admin, environment setup
- Differentiation: specialized workflows, decision engines, AI orchestration
This separation protects your budget in both directions: you stop overpaying for standard modules that every provider builds roughly the same way, and you keep real investment for the capabilities that make your business different. If a quote prices login screens like decision engines, ask why.
Use a phased roadmap
Paying for everything upfront means paying for assumptions. A phased roadmap lets each phase validate the next investment:
- Phase 1: discovery + architecture
- Phase 2: MVP for critical flows
- Phase 3: performance and scalability
- Phase 4: growth modules with validated ROI
Each phase ends with something running that you can measure. If Phase 2 does not move a business number, you renegotiate Phase 3 — instead of discovering the problem at the end, with the full budget spent.
“There is only one boss. The customer.”
Sam Walton
Curious facts
- Brooks's law, from Fred Brooks's 1975 classic The Mythical Man-Month, states that adding people to a late software project makes it later — onboarding and coordination eat the extra capacity.
- The “cone of uncertainty” comes from Barry Boehm's estimation research in the early 1980s: estimates made before requirements are settled can be off severalfold in either direction, and only narrow as decisions get made.
- “Technical debt” was coined in 1992 by Ward Cunningham — also the inventor of the wiki — as a financial metaphor to explain to non-technical stakeholders why shortcuts get more expensive over time.
- The ninety-ninety rule, attributed to Bell Labs's Tom Cargill, jokes that the first 90% of the code takes 90% of the time — and the remaining 10% takes the other 90%.
- Hofstadter's law, from the 1979 book Gödel, Escher, Bach: “It always takes longer than you expect, even when you take into account Hofstadter's Law.”