The "Third Way of DevOps"

Author: Oliver Hankeln

Date:

Treat your decisions as experiments. You don’t know in advance what is going to work and what isn’t, therefore mistakes must not be punished. The most important thing is the learning that is facilitated. In order to work in this way, you have to create an environment in which a failed experiment doesn’t have catastrophic consequences.

Introduction

After the first and the second way we will now talk about the third and last way of DevOps according to Gene Kim.

The Third Way

This way is called “Culture of continual experimentation and learning”. The other two ways try to improve something specific (the flow of work in the First and the flow of feedback in the Second Way), but the Third Way describes a culture that enables and supports learning.

Experiments

The name … continual experimentation … already points to experimentation. But what is an experiment exactly? Let’s say, it is not about mixing colorful ingredients in a lab as we know from the movies. We are talking about an empirical approach following the three pillars Transparency - Inspection - Adaptation

Example

The first step is to create transparency about a certain aspect of our work. This is not limited to technological topics like reaction times of our website. It can also include, but is not limited to, topics on collaboration such as team structure or any other aspect you would like to focus on in order to improve.

With this data we can start to think about what we are going to change in order to achieve a certain improvement. We could, for example, currently have the problem that colleagues from our operations teams have a hard time running our software because they were not aware of their inner mechanics. We share the data we have on the problem and make them transparent.

We can then create a hypothesis - in this case perhaps: “If the colleagues from operations were part of our refinements, they would be able to learn about user needs faster and would face fewer problems in production.” During this phase, we inspect the issue at hand and formulate a hypothesis.

Then we start the real experiment. We invite our colleagues to our refinement sessions and so adapt our way of working.

And now comes the most important piece: we close the circle. We are creating transparency again to find out whether our hypothesis was met or not. Starting from our now improved knowledge we can start to create the next hypothesis and start a continual circle of hypothesis-driven, experimental work, where one cycle of transparency-inspection-adaptation follows another.

Culture

We don’t expect all our experiments to meet our expectation and validate our hypothesis. This is an important cultural aspect in this way of working. A valid hypothesis does not merit a bonus and an invalid one will not be punished. Otherwise we would lose the calmness to objectively judge the results of our experiments. No matter the outcome, every experiment will extend our knowledge. And it is this learning we have to value.

Learning

With the Third Way we learn in the same way a child learns to walk. Not by walking one step at a time, but by falling over, learning from this and getting up and trying again.

Safety

In the same way we wouldn’t allow a toddler to learn to walk at a high cliff, we also have to create an environment in which it is not a big deal for us to stumble and fall. The creation of an environment where we can run experiments without fear is part of the Third Way.

For example, automated tests in the CI/CD-pipeline will stop bugs from going to production. Another measure would be the introduction of failover mechanisms in the infrastructure. They make sure that a server crash doesn’t have negative effects on the whole system. A very important factor in creating this culture is how leadership in your organization deals with failure. They must not punish failure but see errors and mistakes for what they are: raw material from which we can create new knowledge.

Only in such an environment it is possible for errors and mistakes to no longer be hidden, but made transparent to enable learning.

Conclusion

Just as with the other two ways, you will never finish the Third Way. We follow the eternal cycle of Transparency - Inspection - Adaptation. Once we get used to this approach we will always find new ideas for new experiments - and we will know how to learn from the results. While our environment becomes more fault tolerant - both when it comes to culture and to technology - we become more courageous with our experiments and make ever bigger leaps in knowledge.