How DevOps messes with your head
For an old man like me, some of the concepts sweeping our industry as part of the current IT Renaissance are quite challenging. They challenge our fundamental axioms or assumptions which underpin our whole approach to IT. I have been presenting on this topic recently, including at the "Pink16" conference.
In this post, I share with you that presentation, and my list of some of the fundamental concepts driven by modes of thought such as DevOps which really mess with my head. As we say down here, it does my head in.
It is very exciting to be challenged in this way. In fact this is the most exciting time in my 30 years in this industry. This truly is a Renaissance which is changing the way that we think and act in IT. Finally we are giving top prioritisation to people and culture. We are understanding that process and technology flow from those, instead of being the primary drivers of our industry. Without getting the people-aspects right, practices and technology are never going to successfully be transformed.
Most exciting of all, we are treating people like people, with respect and empowerment, instead of treating them as components in a machine. This is the IT Renaissance. I'm very happy to be challenged on the concepts that it throws up, in order to shift my own attitudes, behaviour, and culture.
So here is my list of some of the most challenging concepts, which undermine IT orthodoxy:
- Less process (and the whole Agile Manifesto)
- Fail fast (and embrace failure)
- Fail forward (rollback is a myth)
- If it hurts do it more (until it doesn't)
- Infrastructure as code (metal to money in one package)
- Get out of the way (don't control; facilitate)
- Let Dev build Prod (own it and be accountable for it)
- Toolsmiths (we down build prod; we build the tools to build prod)
- Commit to Prod (continuous deployment: checkin creates live code)
- 10,000 pushes to Prod a day (or every day at 3pm; why not?)
- Andon cord (when the production line breaks, stop everything)
- No forks (one version of code)
- Servers are cattle not pets (slaughter them at will)
- Be mean to your code (randomly break it)
- Test Driven Design (the tests are the design spec)
- ChatOps (running ops on social media)
- IT can be a normal job (go home to your family)
- Believe in goodness (expect the best from people)
What other mindf***s can you add to my list?
Here's some more:
Here is the presentation
If you want to know more about DevOps, best you read The Phoenix Project