JAX DevOps: Some people call DevOps a cultural movement, others consider it a magic bullet. In your view, what is the essence of DevOps?
As I’ve been really trying to distill the power of DevOps into its essential concepts, my own understanding of it has evolved considerably. While there are many things, from principles relating to culture through engineering principles, in my opinion, DevOps could be considered three things.
- A culture of empowerment and collaboration
- A problem-solving methodology
- Lean software delivery
There is a lot to unpack there, I know, and hopefully my subsequent answers will help do that a little.
JAX DevOps: What are the latest trends in DevOps? Could you describe one important trend that you are particularly interested in?
DevSecOps, Rugged DevOps, or any of the other names that people use to distinguish that security has to be included in your collaboration and automation, is still gaining steam. There is more awareness now, and we are starting to see standardized solutions emerge. The next trend after increasing the width of our collaboration will be to start to understand that the primary place we are really seeing the benefit of DevOps isn’t in tools, it isn’t in process or organization, but in cultural revolution overturning established and entrenched ideas about management not just of IT but of business in general. As we empower the individual, we move toward more and more “flatocratic” models that understand the value is at the ground level where the work is actually being delivered, and good management consists of enabling those that produce that value to try more ideas at lower cost.
You’ve got to bring in cross-disciplinary ideas as well, like the ideas from “Immunity to Change” which is research on why people don’t do the important things they know they should do, even when the consequences of neglect can be devastating, like an early death.
JAX DevOps: What are the most suitable tools that should be part of a ready-to-use “DevOps kit”?
The best tools are ideas. Everyone should be paying attention to the thought leadership that is helping define the movement going forward, and should have already read all the books that provide seminal work and best practices – everything from Extreme Programming from the late 1990’s through Lean Enterprise, and of course, all the ones with DevOps in the title! I’m not aware of a bad book on DevOps yet! Maybe I’ll even contribute something to try and help move the ball down the field myself in the next year or so, and hopefully, it won’t be the first bad one! You’ve got to bring in cross-disciplinary ideas as well, like the ideas from “Immunity to Change” which is research on why people don’t do the important things they know they should do, even when the consequences of neglect can be devastating, like an early death.
In terms of the technical tools, there are platform-as-a-service-tools that can provide a jump-start and accelerators to your DevOps journey by allowing you to quickly experiment with a wider variety of tools, platforms, and technology stacks. This experimentation is far more important than particular tools, and there is a number to choose from. Everything from Kubernetes, to Mesosphere, to Accenture’s own adaptable open source platform, ADOP. If you aren’t aware of it, ADOP is a quick way to swap components in and out while creating platforms on demand. It deserves a look!
JAX DevOps: What is the role of cloud in a DevOps context? What benefits does it bring?
The idea of Cloud, or virtualizing hardware into resources that can be provisioned on demand, is an essential one to really getting the most out of lean and DevOps methodologies. Smartly executing the right combination of public, private, and hybrid cloud is a key component to a successful infrastructure that enables next-gen IT management.
The next trend after increasing the width of our collaboration will be to start to understand that the primary place we are really seeing the benefit of DevOps isn’t in tools, it isn’t in process or organization, but in cultural revolution overturning established and entrenched ideas about management not just of IT but of business in general.
JAX DevOps: If containers are revolutionizing IT infrastructure and DevOps is transforming the modern IT landscape, would you say that they go well together?
I don’t think containers would exist without DevOps creating demand for the continuing virtualization of infrastructure and the rapid movement of code through environments. What is fascinating to me is that containers are an extension of ideas we old grey-bearded sysadmins have been doing for a long time with chroot and remapping of uids so root inside a chroot isn’t real root on the host. Then someone had the genius idea to systematize the ability to take these sorts of jailed environments and move them quickly around in a predictably immutable way and abstract out the details of the network and environment. I always know an idea is genius when I immediately know I should have already thought of that! Needless to say, I’m a huge fan of containerization and think it is a big part of the future of DevOps, though DevOps won’t stop here. We’re going to see serverless architecture go mainstream, and unikernels become something we’re talking about in the next couple of years.
JAX DevOps: What are the anti-patterns of DevOps?
My good friend and co-worker Keith Pleas is putting a lot of time into identifying DevOps design patterns and anti-patterns. The main ones I’m seeing out there in the real world are to have people with DevOps in their job title, or a DevOps team separate from the rest of the pre-existing teams. When you do this you are operating under the misunderstanding that DevOps isn’t for everyone in the org, which cancels out the collaborative culture development and creates just one more silo everyone has to throw things over the wall to and wait for something to come in return – this is pretty much the opposite of DevOps and just creates one more wasteful silo to go along with the others.
Needless to say, I’m a huge fan of containerization and think it is a big part of the future of DevOps, though DevOps won’t stop here.
JAX DevOps: Do you have a tip on how we can eliminate obstacles to DevOps adoption?
Persistence and Positivity can move mountains over time. The ideas are viral. Share books and talks, point out the easy ways you could gain efficiencies with the ideas, “What if instead of reporting back and forth through org structure, we just walked down the hall and worked on it together? What if we just got in the same room and didn’t leave until it was solved?” In most orgs there are innumerable situations where these kinds of simple questions are extremely powerful and illuminating. Most of all, don’t give up. Keep making the case and over time you move the bar.