Automated Deployments & Self-Driving Cars: An Unlikely Parallel
11 Jan 2019 | Staff Writer
Valerie Gurka and Haley Akchurin interviewed Principal Solution Architect Colin Pear from Clear Measure. During their discussion about automated deployments they realized that their passion for the possibility of self-driving cars could become the perfect metaphor.
Colin has a breadth of experience with Azure DevOps, Octopus Deploy and other useful tools. If a company is currently doing manual deployments, he can help them.
V&H: Why would someone want to automate their deployments, Colin?
CP: That’s a question we get asked a lot. And one of the big reasons is that many clients are looking to reduce the time it takes to do deployments. Everybody who has suffered through deployments knows that deployments are the bane of programming. Nobody wants to be staying late on Friday night. Everybody is always afraid. Something is going to go wrong, and things are going to blow up, and they almost inevitably do. Automating this process takes away all the guesswork. It helps to make sure all the little details are captured, and it is reduced to a click of a button. It’s that simple. Then you can move away from these late night deployments and start doing them even during the day and multiple times.
V&H: How many times a day can you deploy?
CP: You can deploy as many times a day as you’d like. You can get to the point where you don’t even have to click the button anymore. Any new code you write or enter into the system just automatically gets pushed out to production. You can rest assured that it’s gone through a rigorous set of tests and then checked out thoroughly before it actually gets out there. So there’s very little chance that it will cause some havoc. Also, if something does go wrong than it is usually really easy to revert it back. That’s the other benefit of having an automated system. You can roll back and get out of something that you just pushed out rather quickly.
V&H: Nice. That sounds like a very valuable system to use. How many deployments would you say you’ve done in a day? What’s your highest number of deployments?
CP: That’s a great question. I’ve done two or three, I think, on, on average. We don’t typically do a whole lot ourselves because not all clients are at that point where they’re mature enough to have automated deployments happening constantly and it still takes a little bit of time to get your team up to speed to do multiple per day. So usually, our clients are at a lower level in the beginning, so they like to feel there still is this need to feel confident. It’s always a scary thing to think, “Hey, I’m pushing stuff out to production.”
V&H: Do you think it’s because perhaps the client has been conditioned to have some kind of PTSD around their deployments and they automatically get nervous around it? How do we inspire a cultural shift to have people feel a little bit more comfortable and not have that expectation of a traumatic experience?
CP: Oh, absolutely. Everybody’s got PTSD from doing deployments. That is for sure. And that’s where a lot of the uncertainty comes from when you start moving to these automated systems. It is scary because that is YOUR production system. You know when things go down, and you’ve seen them go down. It’s very terrifying. The best way to move beyond that is to start building up trust in your automated pipeline and actually begin deploying. It’s going to take some time, little by little.
V&H: So what do you think about self-driving cars?
CP: Oh man, I’m totally down for self-driving cars. I think that’s really awesome and it falls in line with thinking about automated deployments. You’re thinking “Wow! I’m jumping into a car, and it’s going to drive itself. No way.” But as soon as you realize that the system has been designed and thoroughly engineered to drive itself. Then you get really confident, then you realize, “Man, I can be reading the paper right now. Or I can be doing a million other things.” That is again, the benefit with automated deployments. You’re not thinking about just going to blow up. You’re thinking about, okay, it’s going it’s going now. What else can I do? I can write more code.
V&H: How does the self-driving car know when some other manual person is cutting in front of you and presenting you with a potentially dangerous situation? Is there a parallel to automated deployments?
CP: That’s a great question. So yes, there is some parallel. There’s a lot of technology that those automated cars are taking advantage of, and we’re using a lot more sensors on these cars. So there’s the detection of risk, a car near me. This car is going faster. You know something’s happening. Something’s getting close to me. And then you can react to those things. The same thing happens in your automated deployment pipelines. As things are deploying, we have things like unit tests that we write in our code. And so one of the steps in your automated deployment is running the unit tests that you’ve written and so if one fails, then the build fails, and then things stop and get rolled back if they need to, or you just prevent that code from being deployed in the first place. You have all these little sensors in place to make sure everything’s right, and you feel confident that it’s good. Then you proceed forward.
V&H: That’s amazing. I would never have imagined a self-driving car now and being fully autonomous on the road.
CP: And most people wouldn’t believe there are self-deploying automation systems that you can have as well.
V&H: So it’s amazing the benefits of technology today.
CP: It is, but you wouldn’t go as a novice trying to build your own self-driving car because there are too many factors. There are a lot of things to consider and lessons learned along the way. It’s wise to go with somebody who knows how to set these things up, such as Clear Measure. You can be confident that you’re going to get something that’s done right and built right from the get-go. There are a lot of devils in the details, so you have to be careful and thorough. Clear Measure is really good at this.
V&H: Thank you for joining us, Colin. That concludes our interview about automated deployments and self-driving cars.
CP: Thanks for having me.