It's been more than 10 years since a Forrester analyst, imagining a world in which application development and deployment became so automated that they no longer required human oversight, coined the term "NoOps." However, no one today needs a spoiler alert to learn that NoOps hasn't materialized. IT teams still perform a lot of tasks, and NoOps remains a pipe dream that we will someday realize fully automated IT operations management.
But it's arguably a pipe dream that is slowly edging closer to reality.
While I don't think we'll be proclaiming the age of NoOps anytime soon, I do think we've come a long way on the NoOps front since 2011. Here's why.
DevOps a 'Step Backward'
NoOps is the total removal of manual IT operations from the way a business manages its IT assets. It's short, of course, for "no operations."
When Forrester analyst Mike Gualtieri coined the term in 2011, he was making a roundabout criticism of DevOps, which at the time was a pretty new concept. Instead of focusing on collaboration between developers and IT engineers, as DevOps encouraged, Gualtieri suggested that IT teams invest in automations for IT operations.
"I think DevOps is a step backward," he wrote. "NoOps means that application developers will never have to speak with an operations professional again."
Progressing Toward Fully Automated IT Operations
Since the concept's emergence, analysts and IT teams have tended to think of NoOps in the same way that they think of, say, time travel: something that would be amazing if it were real but that will probably never fully materialize.
That viewpoint is certainly fair. However, it's worth noting on balance the extent to which many core IT workflows have been automated over the past decade, in ways that they were not circa 2011. Consider the following ways in which IT operations have been streamlined over the past decade:
- Infrastructure provisioning: IT teams can now use infrastructure-as-code (IaC) to automate the provisioning of large-scale environments. IaC existed in 2011, but in a much more primitive form. Only large companies tended to use it. Today, anyone can deploy IaC with ease.
- Application deployment: Remember when deploying applications required manually moving binaries from a dev/test environment to a production environment? If your IT career doesn't stretch back more than a decade, you probably don't. Circa 2011, manual application deployment remained the norm, except maybe for large companies with elite engineering teams. Today, thanks to the widespread adoption of DevOps principles, virtually every business can continuously release software to any environment.
- Application management: Adding application instances and managing resource allocations were also once tasks that IT operations engineers performed mostly by hand. No longer. These duties are automated today by platforms such as Kubernetes.
- Monitoring and observability: Keeping track of what was happening in application environments, then using that data to improve performance, once entailed poring over log files and drowning in alert streams. That may still sometimes be the case today, but the modern breed of observability tools has done much to automate not just the collection of monitoring data, but also its interrelation in ways that drive meaningful insights. This automation in the realm of observability means that some of today's IT engineers never look at a raw log file; they just look at their observability tools.
- Incident response: When things break, IT teams no longer necessarily need to respond manually. Simple incidents can sometimes be auto-remediated, depending on the tools at the team's disposal. Complex incidents may always require human intervention, but not every incident requires manual response these days.
The NoOps Asymptote
The other side of the coin, of course, is that while many facets of IT operations have been automated, new challenges have emerged.
For instance, today's IT engineers have to help deal with a massive volume of security attacks that few folks foresaw in 2011. They also have to manage complex hybrid cloud and multicloud environments. In contrast, 10 years ago, most stuff still operated on-premises, and VMs running atop a hypervisor counted as a complex technology stack. The idea that VMs could be the most complicated thing for IT teams to manage feels quaint today.
The never-ending stream of new IT challenges is why I suspect NoOps will always be something of an asymptote. As IT teams build automations that help them do some parts of their job better, they'll face new challenges that they can't automate away.
Conclusion: Why NoOps Is Always Approaching but Never Arriving
That doesn't necessarily mean that IT teams won't come closer and closer to the dream of fully automated IT operations. The amount of work that IT engineers have to perform manually will, I think, shrink steadily over time – and that's worth appreciating. NoOps is something that is getting closer and closer.
But it's also, I think, something that will never fully arrive. Manual operations will always be a necessity, no matter how many automation tools the IT industry invents.