# Optimize for deletion

Principle `optimize-for-deletion`. Build small programs you can replace when their model stops fitting reality.

Replacement is cheap only when a unit carries everything it needs and nothing else reaches into it. The one-week horizon is a pressure test. Small replaceable units can share one process and one repository; splitting services is a different decision.

Read the full section in the [uncomplect skill](/skills/uncomplect#young-optimize-for-deletion).

## Related
- [Separate what was braided](/principles/separate-what-was-braided)

## Skills
- [uncomplect](/skills/uncomplect)

## Sources
- Young, Greg. *The Art of Destroying Software*. [Link](https://www.youtube.com/watch?v=1FPsJ-if2RU). ([art-of-destroying-software](/bibliography#art-of-destroying-software))
