Software should be designed, written, and deployed in small batches.
This is the first line from a blog post by Eric Ries and is something that gets discussed with a guest in an upcoming episode of the Beyond Blocks podcast.
In the post, Eric continues by saying, “Of all of the insights I’ve contributed to the companies I’ve worked at over the years, the one I am most proud of is the importance of working in small batches”.
Small batches mean faster feedback, more localised problems as there are fewer changes, and reduced risk and overhead.
If you work in small batches and make smaller changes, merge them regularly into the mainline branch (ideally, at least once a day), and often deploy changes to production, the releases will be quicker and less stressful, and clients and customers will be happy as their changes will be available sooner.
I’ve worked this way, and with long-lived feature branches and large, infrequent deployments, I prefer to work in small batches and deploy often.