Step 20: Deploy Early and Often ~ Steve Berczuk

Birat Rai
2 min readOct 14, 2017

--

This is the Twentieth Step towards gaining the Programming Enlightenment series. If you didn’t learn the Nineteenth Step, read it.

“Continuous improvement is better than delayed perfection” ~ Mark Twain

Equally Good API isn’t built right the first time. Even more, it’s difficult to change it later. Don’t even put into the picture the pain to support for the API changes.

What is Continuous Delivery?

It is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time.

It aims at building, testing, and releasing software faster and more frequently.

Why do we Continuous Delivery?

  • The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production.

“Simply put, things always had to be in a production-ready state: if you wrote it, you darn well had to be there to get it running!” — Mike Miller

How to do Continuous Delivery?

Automation is our friend for Continuous Delivery.

Building, installing and deploying software is always repetitive. It’s DRUDGERY. If it’s done manually, it will have flaws and will take away productive time.

Whenever a piece of code is committed, we should be continuously building it and running our test cases against it. Doing so will give us enough assumption that for the particular environment our software is running fine provided we have a great Automated Tests.

Popular tools for Continuous Delivery

TL;DR Embrace automation. Use Continuous Delivery tools, it will make releases easier and development better

--

--

Birat Rai
Birat Rai

No responses yet