I am visiting the DevOps Enterprise Summit in London and the halls are buzzing. People are having discussions on DevOps, the challenges people experience and the opportunities for the future. Being Agile is also a big theme still although the Agile in it self is 15 years of age and still being regarded as a challenge.
However as much as I like technology, DevOps and Agile I am concerned by the whole notion of the concept… because… why is there even a need for a concept around this stuff?
DevOps is about bringing classical IT operations together with the engineers producing the code in order to create a cross functional team in order to improve efficiency and avoid the “them and us” situation.
What is so hard about this?
My take on the subject
I tend to categorize software necessity on par with tools like a hammer for a carpenter and a shovel for an entrepreneur. So the most often comment I get in relation to IT and why there are challenges is, that IT is dangerous. This leads to the need for controlling and managing the use of IT.
The typical consequence is that the IT becomes a challenge for the user, because now there are human restrictions that impairs their efficiency. Common examples are excessive waiting times for systems to work, unintended downtime, a need for updates and a host of policies intended to govern peoples behaviour.
But let me put this straight; People are not evil (most of them at least) and secondly they are not stupid.
Most individuals just simply wants to achieve their goals at work, and now a days most of our work requires use of IT Systems. But when they find them selves in a bind, then they start taking short cuts and find ways of delivering their results.
Secondly IT (programs and infrastructure) should be enablers of great performance and I think we often have quite some way to go to deliver on that promise.
The tie in with the DevOps and Agile movements
DevOps puts it self in the middle of the fray between classical IT and IT Operations. The whole paradox is that classical IT operations run strict change control and DevOps wants to challenge that because no changes also implies no added value creation.
The differences are sharply drawn out in the survey report https://puppet.com delivers annually. The major conclusions shows that productivity is linked to this paradox quite closely.
You can find the full report here https://puppet.com/resources/white-paper/2016-state-of-devops-report
Personally I find it mind boggling that a statement like “And they spend 22 percent less time on unplanned work and rework.” is backed by evidence in the Puppet Labs report and yet we are as a community having a hard time transitioning.
In my own experience when having discussions on the topic I often run into statements like;
“If you release into production you may mess up the whole system” or “Operations are not supporting my work and it’s a challenge to deliver our services”
And who doesn’t remember this one…
While DevOps is in the middel of Operations and development, Agil is in the middle of budgetting and requirement management. The core challenge is the transition from “waterfall” projects to small incremental value deliveries.
In Denmark we have had a stream of government IT projects going bad, where one can’t stop wondering why they keep repeating the same failures. Why do these projects run over budget and fail to deliver the expected product?
Where lies the problem?
Quite honestly I don’t know… Sorry!
But I do find that as an engineering community we need to change the game. We need to turn software and IT more productive than ever, and my quest for contributing in this space starts today.