Still deploying manually? What you're missing

Published on: 4 Apr 2013

When deciding whether to invest in automating a task, we often weigh up the time it takes to set up the automation versus the time the automation is expected to save. But automation brings another benefit: automation reduces pain, which makes you more likely to perform the task more often.

As a basic example, suppose you deploy manually to production, and on average it takes you about three hours. You currently deploy to production about once a month. If automating the deployment takes that down to 10 minutes, you're only saving 2 hours 50 minutes a month. If it will take you a couple of days to fully automate your deployments, it will take months to see a return on that investment. Is it worth it?

But there's more to the story. If your deployment now takes 10 minutes and a few clicks (rather than managing multiple remote desktop connections, etc.), and your deployments are reliable, you will be less reluctant to deploy to production. You might even start to deploy to production every week. Perhaps even multiple times a week. This means you can get features into the hands of users even sooner. By reducing the cycle time, you improve the feedback loop, and reduce your software inventory.

It's easy to look at an established project and say "automating this deployment would take longer than the time we'd save". But what is the opportunity cost of not automating?