Atomist, the company that provides tooling for automating the delivery of cloud native software, is at the front lines of a problem plaguing the enterprise — software drift. Earlier this year, the company released an open source tool to visualize the various software versions in a given code base, and now the company has taken the next step, with the release of Atomist Drift Management, “a single tool to expose, manage and fix drift in their code.”
Whereas automation relies on standardization and uniformity, many enterprises today are watching as their codebases become increasingly varied and non-standardized, Atomist CEO and co-founder Rod Johnson explained in an interview with The New Stack. It’s a problem that has grown more acute with the move to cloud native architectures
“Organizations have gone from a small number of very large repositories to a very large number of relatively small repositories. We all know the benefits around that — the fact that you can do fine grade deployments without stopping the world — but as with every step forward, it creates some new classes of problems that existing tooling doesn’t address,” said Johnson. Drift Management “is built on our software delivery machine platform — on that core automation platform — and directly focuses on understanding and bringing consistency to large numbers of repositories. It enables comprehending what you’ve got and beginning to get into a better state, and it enables us to manage and fix what we call drift. Drift is entropy. Drift is what happens when you have hundreds or thousands of developers contributing to hundreds or thousands of repositories.”
To measure drift, the company has the Org Visualizer tool, which is used to examine the code base for Microsoft Azure, which provided found a perfect example of drift, with 19 different versions of TypeScript spanning 23 different repositories, and some language versions actually nearing end-of-life.
Noting, however, that Azure was not unique in this way, Johnson said the problem is happening across the industry, with the problem being reflected in the number of delivery pipelines needed to push out cloud native applications.
“Fundamentally, the problem that we see is the inconsistency across many repositories reflects itself in delivery inconsistencies with many pipelines but also manifests itself in the code and configuration problem,” said Johnson. “We discovered a customer need, in terms of visualizing and driving consistency in code and configuration, as a result of working with customers in delivery and we have built on our core automation platform an app that is focused on that.”
With this release, Atomist Drift Management can be used with any of the Atomist features or open source projects and is available to all users and pricing plans. The Drift Management feature consists of three core components. First, the Org Visualizer that Atomist released earlier this year is an open source tool for visualizing technology usage and drift across an organization. Second, Drift Report “provides a visual representation of what’s going on within an organization’s codebase” and “insight into each aspect of code, allowing users to drill down and set custom policies.” Third, Policy Manager gives users the ability to set policies that automatically apply updates and drive automated actions, as well as monitor their codebase, including characteristics such as npm dependencies, Docker configurations, Maven dependencies, and Git best practices.
According to Atomist Chief Operating Officer and co-founder Ryan Day, the goals of Atomist and its new drift management feature are really the same as those of the basic DevOps principles.
“Ultimately we’re aiming at helping teams and organizations improve their maturity toward higher degrees of automation. We clearly saw that reducing pipeline proliferation, reducing drift, normalizing your technology stack, and standardizing and reducing variability are core DevOps principles that customers really drew us to. It’s not coincidental that some of these stages of DevOps maturity are things that we’re tackling with our platform,” said Day. “In the same way that none of us would consider trying to do software without having centralized, aggregated logging, we think that none of us should be trying to manage the building and delivering software without having visibility into how consistent we are and frankly, knowing what we’ve got. We see this as a key piece that’s missing. That’s really what this is — a drift detection and convergence engine.”
Atomist is a sponsor of The New Stack.