There’s a saying, “make haste slowly,” favored by Augustus more than 2,000 years ago.
The fact it survived to the present suggests people in any era often fail by rushing.
Japanese proverbs like “haste makes waste” carry a similar message, but “make haste slowly” adds that haste itself is also important—not just going slow. That nuance is why I like it.
In development it may be useful, too. Go too fast or too slow and you fail.
“Slow” in programming might mean:
- Writing readable code
- Writing unit tests
- Refactoring
- Maintaining documentation
- Introducing CI/CD
“Haste” might mean:
- Releasing early
- Getting user feedback early
- Implementing only what’s necessary
- Avoiding unnecessary abstraction
Both code quality and release speed matter—that’s “make haste slowly.”
Without some pressure I tend to lean “slow,” but under time pressure I sometimes go too fast and ignore quality.
When short on time, go “slow.” When time allows, “make haste.” I want to keep this balance in mind.