Yeda AI Tips · #141

Español

Plan the Funeral Before You Build

Plan the funeral before you write the code. Most teams are great at building and terrible at removing — so every "temporary" flag, every one-off endpoint, every clever abstraction accretes until nobody dares touch it. The fix is a single design-time question: how would we delete this in three years? Ask it before you commit, and the answer reshapes what you build.

Why removal starts at design time

Deletion is decided long before anyone opens a delete PR. As the Google engineering team puts it in Software Engineering at Google, "choices of programming language, software architecture, team composition, and even company policy and culture all impact how easy it will be to eventually remove a system." You cannot retrofit deletability — you either designed for it or you didn't.

Two forces make removal hard, and both are cheapest to fight up front:

The design-time questions

Before you write anything new, answer these on paper:

QuestionWhat a good answer looks like
How do I turn this off?One flag, one config line — not a redeploy across five services.
Who will depend on it?A named, documented interface; internals stay private so no one couples to them.
How do consumers migrate off?A replacement path exists before launch, not after the deprecation email.
Can I remove it in pieces?Yes — the system is decomposable, so deletion is incremental, not big-bang.

If any answer is "I'm not sure," you've found the part that will be expensive to kill.

Flags are inventory, not free

Feature flags are the classic example of build-cheap, remove-expensive. Martin Fowler's team frames them as inventory with a carrying cost: "It's very important to retire release flags once the pending features have bedded down in production. This involves removing the definitions on the configuration file and all the code that uses them. Otherwise you will get a pile of toggles that nobody can remember how to use." Every flag is a fork in your control flow that someone has to remember to collapse. Add the removal ticket in the same PR that adds the flag.

Power moves

Systems that leak implementation everywhere are painful to kill. Ones designed to be removed stay cheap. Ask how you would delete it — and let that answer drive the build.

Resources

Building something new? Yeda AI designs, audits, and ships production LLM systems that stay cheap to change and cheap to remove.

Talk to us · Read the blog