When developing software, there is always more you can do, more features you can add, more bugs you can fix, more improvements to existing tools.
This can quickly spiral into a situation where you want to do “just one more thing..” before you release.
This is a slippery slope and one the requires discipline to avoid.
Don’t get me wrong, no one wants to release low-quality bug-filled software, but it comes down to focus and prioritisation as with everything.
There is always an endless supply of ideas when it comes to new features and improvements, but again you can fall in the trap of releasing features customers don’t want.
This is what “shipping” is a critical part of the development process. Regularly releasing software is a habit and forces you to push features out to users sometimes earlier then you want.
Shipping regularly is hard but worthwhile.
The pay-back though through the user feedback loop is a critical part of the development process. User feedback is a key input for prioritisation.
Shipping regularly forces you to bite of small pieces of functionality and gain insights – pulling you back on track where necessary and avoiding wasted effort.
Shipping is a very rewarding activity. While things aren’t always perfect – and someone crashed your app within hours of release – the great thing about regularly shipping is your ability to make the required fixes and get them out into the market quickly with the next release.
While we always strive for perfection and to be better, it is refreshing to know the next release is only a matter of weeks, not months, away, which also reduces pressure on testing.