The development cycle time is your God | 🗖 nosplit | ↑ parent "Ciro Santilli's software engineering wisdom" | 178
A slow development test cycle will kill your software.
New developers won't want to learn your project, because they would rather shoot themselves.
This means that build time, and the time to run tests, must be short.
5 seconds to rebuild is the maximum upper limit.
You also have to spend some time profiling execution and build from scratch times.
A slow build from scratch will mean that your CI costs a lot, money that could be invested in a new developer!
It also means that people won't bother to reproduce bugs on given commits, or bisect stuff.
One anecdote comes to mind. Ciro Santilli was trying to debug something, and more experience colleague came over.
Ciro was running one command, wait 5 seconds, run a second command, wait 5 seconds, run a third command:
cmd1
# wait
cmd2
# wait
cmd3
The first thing the colleague said: join those three commands into one:
cmd1;cmd2;cmd3
And so, Ciro was enlightened.