Chapter 11. The Future of DevOps and Software Delivery
It’s difficult to make predictions, especially about the future.
Niels Bohr
In all the previous parts of this book, you learned about the current state of DevOps and software delivery. In this chapter, I’m sharing my thoughts on what the future might look like. Trying to predict the future is usually a bad idea. If you get it wrong—and you almost always get it wrong—you look like a fool. If you get it right, everyone says that any fool could’ve seen it coming. That said, I thought it would be fun to conclude this book by exploring the following emerging trends:
-
Infrastructureless
-
Generative AI
-
Secure by default
-
Platform engineering
-
The future of infrastructure code
Let’s start with infrastructureless.
Infrastructureless
Much of the history of software is one of gradually moving to higher and higher levels of abstraction. For example, here’s a brief, very incomplete, and mostly wrong glimpse at how programming languages have evolved (with a hat tip to James Iry):
Machine code → Assembly → FORTRAN → C → C++ → Java → Scala → Flix → ???
At each step in this evolutionary process, programming languages have generally gotten further and further away from the details of the underlying computer architecture, which has meant giving up some control in exchange for not having to worry about entire classes of problems at all. For every C programmer complaining that Java doesn’t let them do memory management the way they ...