I’ve just finished reading an excellent article on Continuous Deployment. This is the way of the future. Now that Continuous Integration has become (almost) mainstream and as expectations for services to be “always on” becomes the norm, the interest and demand for practices such as Continuous Deployment (CD) will increase. With CD, the cost of rolling out an update is very nearly zero* because deployment and releasing is fully automated.
I first had a discussion about Continuous Deployment with Rupert Perry the CEO of Pirum Systems. Rupert is a first rate developer and wrote the first version of their systems with the CTO. While we were discussing some of the advantages of Continuous Deployment, Rupert told me a story. He was in a clients office trying to make a sale and was demonstrating the live system to the potential clients. The client wanted to sort by a particular column. Not having worked directly on that particular function, Rupert said “Let’s try it.”
The function failed … but here is where the story becomes interesting. The developers who were monitoring the system noticed the failed function. It wasn’t a lot of work on fix the problem, so they coded, tested and deployed a solution. Knowing that Rupert was seeing a client they gave him a call and asked him to demonstrate the function again, which he did successfully. The elapsed time for all this was in the order of 15 minutes to 20 minutes.
Oh, and Rupert made the sale!!
* It’s not quite zero because there’s a cost involved in initially building and configuring the CD system.