Microsoft’s acquisition of GitHub is a landmark acquisition that signals CEO Satya Nadella really means what he says when commenting on Microsoft’s strategy: “Our business strategy is to have an open platform and an open community . . . ”. It should also send a clear message to any businesses and IT organizations that are holding out on embracing new ways of working, open source development, and infrastructure as code (e.g. use of containers). The acquisition is just one of many issues on my mind as a I prepare to attend the annual DockerCon2018 event June 11-15.
At DockerCon, practitioners will discuss the state of the art in containerization, a term that has achieved more currency as businesses adopt more ways to develop lovable products in nimbler, more flexible ways.
Containers are a standalone unit of software that makes it possible for businesses to deploy software solutions without complex technical requirements. Companies such as Amazon and Google offer containerization services through their cloud-based infrastructures. As Amazon puts it, “Containers allow you to easily package an application’s code, configurations, and dependencies into easy to use building blocks that deliver environmental consistency, operational efficiency, developer productivity, and version control.”
From a business standpoint, containers make it possible for organizations to deploy software solutions in a more flexible way, shorn of the technical requirements that all too often are elusive and not well understood by the business stakeholders responsible for approving (and paying for) them. With containers, developers just need to know the functional requirements to develop the product.
This approach is HUGE, since it accelerates the velocity at which developers can work and contribute to the quality and scalability of the product. For example, containerization eliminates weeks of time needed to try to capture said technical requirements. Containerization also eliminates hundreds of hours of time for specialists to procure the appropriate network and hardware environment; and to install a plethora of software (e.g. operating systems, applications, and all of the recommended updates). Additionally, containerization contributes to improved quality and scalability by decoupling the application code from a rigid set of technical requirements (which have historically often been vendor specific).
These considerations are important. Business stakeholders in modern companies simply want to know if the solution is delivering a feature they want. But having to accommodate multiple technical requirements has been confusing – and that confusion has caused business stakeholders heartburn when they’ve overseen the development of apps and sites that fail to deliver what the owner wanted in the first place, or the solution can’t scale up effectively.
Because containers break code development down into independent processes, businesses can also update functions rapidly, continuously, and without disrupting the enterprise. These benefits are possible because containers break down applications into smaller parts that communicate with each other instead of forcing a business to operate a function based on one monolithic code base.
Containers also simplify development and bring about more confidence that a solution will work effectively under different environments and conditions.
At DockerCon, I want to get a glimpse at the next evolution of containers will be. For example,
- The process of containerization is becoming even more abstracted and automated.
- Containerization is becoming more open sourced in nature – which is why Microsoft’s acquisition of GitHub is significant because Microsoft is making an all-in bet on open-source containerization.
DockerCon will be about validating how other businesses are achieving business value with containers, too. Please reach out to me at DockerCon2018.