Jonathan Vanian: Yeah, I'm sure. I want to ask you a real basic question on what is DevOps? I like asking that because people have so many definitions. What is your definition of DevOps?
Mike Baukes: It's just collaboration with a shared goal. Really about being able to collectively learn as an organization. I think foundationally for me if you're going to distill anything in a really simple format, it's really about being able to fail, but at the same time being able to learn about failure and being able to move very fast and very iteratively.
Jonathan Vanian: Right, do you see it as a means of connecting the old-school waterfall development with agile now that people have to be connected with each other.
Mike Baukes: I think, in general, waterfall has its place. it's just like outsourcing has its place. I think there's arguments for it and there's arguments against it. Just as you can say agile has succeeded a great deal in being able to get people collectively to deliver software faster, I think there's also a certain level of comfort and robustness that sometimes, under certain circumstances, very regularly, waterfall can also benefit. I think to some degree we at this weird intersection at the moment where I think the genuine knowledge around how IT systems are constructed, developed, and supported are coming into this weird confluence of organizations' ability to be able to execute on this stuff to a world-class standards increasing and at the same time the quality of software in general, over-archingly, is becoming a little bit more robust.
At the same time, accessibility to this knowledge, be it code or knowledge in stack exchange, all of this stuff is forming now so that you can get to market faster, you can stay safe, and you can go very fast doing it. A lot of organizations are trying to work out how to do that, trying to understand how they can move forward on that journey, once it works.
Jonathan Vanian: Sure. It's a subject that you could just talk endlessly about. Let's just talk a little bit about why is it hard for organizations to get DevOps right.
Mike Baukes: I think more often than not, it's there's a loss of knowledge typically that exists in any organization. People say that there's lots of silos in an organization, segregation of duties, and specialization. In particular is something that naturally happens is businesses get bigger and bigger. You can't expect that everyone in an organization will be a generalist.
Jonathan Vanian: Right.
Mike Baukes: I couldn't imagine. It just doesn't work that way. I think what is need though is very much a view of visibility across the organization. Whereas before, because a lot of systems, a lot of applications were within a data center typically and there was traditional cycles to get that software developed for the customers, I think now with increasing security threats, like Heartbleed for example, there is fewer multiple services or service oriented web architecture to some degree, all of this stuff now means that organizations aren't just looking at their own data center. They're looking at a myriad of different services that they can plug into their business for speed and for enhanced customer satisfaction.
Being able to tap those, being able to do those consistently, and then at the same time track the state of them I think is the biggest challenge that people are faced with at the moment. If you don't know what you've got then it's really hard to move any direction really.
Jonathan Vanian: That's the modern world now is that you have so many different tools, so many different things plugging into each other. You didn't see that in the past generally, you maybe had to use one tool, but now you can use two tools and each tool has several other components. Is that why you feel the need of DevOps? It's like a site map essentially of all your tools.
Mike Baukes: Yeah, the taxonomy of your business.
Jonathan Vanian: Right.
Mike Baukes: It's just so easy now to be able to plug different systems in for different particular portions of business processes. How do you even track that? How do make sure that a change isn't going to create a problem down the line for a customer? All of these things have resulted in organizations now needing better visibility, better control mechanisms, and at the same time the ability to be able to share knowledge collectively about how the systems are compromised across their IT staff.
Jonathan Vanian: This is actual configuration management, right?
Mike Baukes: I think there's a configuration management aspect, I think there's a configuration monitoring aspect, I think there's a knowledge management aspect, I think there's a process aspect, and I think there's plugs that you've got into all the aspects of an organization. From me, I always look at the value chain of an IT organization as how much waste to they create, how much duplication do they, be it in a a simple form, be it in a data field, be it in the system, and then how well often, how well aware, and how well versed is everyone in the composite state of the applicational service and how often do they try and improve the reduction of duplication throughout each of those life cycle steps to production.
I think that quite often a lot of organizations lose that visibility and they don't really strive to remove the duplication in an effective way and I think that's ultimately where a lot of the problem historically have popped up, but now are more so important because you can't spawn 1,000,000 servers for one app, you could have thousands of apps and thousands of servers and they could be here, they could be in Romania, they could be in New York, they could be anywhere.
Jonathan Vanian: It's like waste management, except it's spread across the world; you're dumping your garbage out in Romania.
Mike Baukes: It's great. The utility effect, it's great, but it's just hard to control. I think quite often companies struggle with that.