As software evolves our terminology of the development and mechanisms required to operate software has also changed. In client meetings, it is not uncommon to hear someone refer to mode one workloads or generation three applications. Usage of the words generation and mode are often used interchangeably. The good news is the grammar police never rear their ugly heads during these meetings, and even though the term may or may not be used correctly, everyone seems to get the picture.
The question is what is a generation or mode workload, application, or whatever and are we certain everyone in the room has the same understanding?
Enter Bimodal IT
When people are talking about generations of workloads they are likely referring to Gartner’s bimodal strategy for IT. Coined in 2014, Gartner defines bimodal as “the practice of managing two separate but coherent styles of work: one focused on predictability; the other on exploration.” Notice the “bi” in bimodal. If you are like me, then you have heard people talk about mode or generation three workloads. Is it supposed to be trimodal? More on that later. In practical terms what does Gartner mean by bimodal?
Mode one: Predictable and Understood. Mode one’s focus is on the evolution of existing software, hardware, processes, et cetera. I like to call mode one “Keeping the lights on.”
Mode two: Exploratory, emerging, or experimentation. Mode two focuses on revolution. Solving new problems with new approaches, processes, technology and everything else fringe. Mode two can be anything from a mobile app to converting customer service to dev-ops.
Gartner explains “Marrying a more predictable evolution of products and technologies (Mode 1) with the new and innovative (Mode 2) is the essence of an enterprise bimodal capability.”
The bimodal strategy makes sense when it comes to enterprise workloads. A business will have a mix of evolving and growing mode one applications while investing in mode two specific outcomes.
Ok, then what the heck is a generation 1 VM?
I suspect when most people say generation one or two VM they are applying the Gartner bimodal strategy to virtual machine workloads. Generation one means legacy applications are running on common virtual infrastructure. Generation two meaning applications optimised for running on cloud infrastructure. Microsoft has added to the confusion by basing Azure on, wait for it… Generation one virtual machines!
I believe this is the root of the confusion in the market. How can one of the worlds largest clouds operate on generation one virtual machines? It is pretty simple. Microsoft has two types of virtual machines and defines them as generation one and two. There are many differences between the two generations however the one that stands out is the switch from emulated to synthetic virtual hardware. Generation one virtual machine hardware essentially simulates physical hardware whereas generation two virtual hardware is purpose-built to interact directly with the hypervisor. Gen-1 and gen-2 sound an awful lot like mode one and mode two. If you are interested, you can read more about the differences here.
But… I hear people say generation three apps. What are they?
Generation three applications are “cloud-native applications.” Using an extension of Microsoft terminology gen-1 is emulated, gen-2 is synthetic, and gen-3 is cloud native. Gen-3 applications are a mode two strategy. I can understand where people mix and match the terminology. Is it correct? That is up to you to decide. I believe this is an example of an IT colloquialism.
The next question you may have is, “how do you define cloud-native?” Cloud native applications are microservice based portable and resilient applications. Think containers as the infrastructure. The base infrastructure is just the beginning. A true cloud-native application has 12 factors ranging from codebase to day two operations. You can read all about 12-factor apps here. There is even a Cloud Native computing foundation dedicated to the creation and adoption of cloud-native apps. They can be found here.
Hopefully, this blog will give you some talking points to help drive clarity when a partner, customer, or colleague refers to a gen-1, 2, or 3 workloads. The clarification is critical because most companies are beginning or on their path through digital transformation. Some workloads will need to be refactored while other are necessary for “keeping the lights on.” Today’s technologist must “peel the onion” of colloquialisms to develop solutions capable of moving the customer forward.
Here are some of the references from writing this blog: