Startup Atomist hopes to revolutionize development automation throughout the application lifecycle, before traditional...
application release automation vendors catch on.
Development automation has been the fleeting goal of a generation of tools, particularly DevOps tools, that promise continuous integration and continuous delivery. The latest is Atomist and its development automation platform, which aims to automate as many of the mundane tasks as possible in the DevOps toolchain.
Atomist ingests information about an organization's software projects and processes to build a comprehensive understanding of those projects. Then it creates automations for the environment, which use programming tools such as parser generators and microgrammars to parse and contextualize code.
The system also correlates event streams pulled from various stages of development and represents them as code in a graph database known as the Cortex. Because Atomist's founders said they believe the CI pipeline model falls short, Atomist takes an event-based approach to model everything in an organization's software delivery process as a stream of events. The event-driven model also enables development teams to compose development flows based on events.
In addition, Atomist automatically creates Git repositories and configures systems for issue tracking and continuous integration, and creates chat channels to consolidate notifications on the project and delivered information to the right people.
"Atomist is an interesting and logical progression of DevOps toolchains, in that it can traverse events across a wide variety of platforms but present them in a fashion such that developers don't need to context switch," said Stephen O'Grady, principal analyst at RedMonk in Portland, Maine. "Given how many moving parts are involved in DevOps toolchains, the integrations are welcome."
Mik Kersten, a leading DevOps guru and CEO at Tasktop Technologies, has tried Atomist firsthand and calls it a fundamentally new approach to manage delivery. As these become increasingly complex, the sources of waste move well beyond the code and into the tools spread across the delivery pipeline, Kersten noted.
The rise of microservices, and tens or hundreds of services in their environments, introduce trouble spots as developers collaborate, deploy and monitor the lifecycle of these hundreds of services, Johnson said.
This is particularly important for security, where keeping services consistent is paramount. In last year's Equifax breach, hackers gained access through an unpatched version of Apache Struts -- but with Atomist, an organization can identify and upgrade old software automatically across potentially hundreds of repositories, Johnson said.
The Angry Man of Java
Rod Johnson came on the scene in the early 2000s, bucking Java creator Sun Microsystems and the established thinking on how to best build enterprise applications with Java. Rather than use the prescribed platform of the time -- Java 2 Platform, Enterprise Edition (J2EE), which he viewed as cumbersome -- Johnson sought a better way and developed the Spring Framework. More than three million developers adopted Spring, and Johnson sold his company, SpringSource, to VMware in 2009 for $420 million.
"I'm not angry with any entity or company anymore, but it makes me angry when things are really hard to do to develop and deliver software," Johnson said. "That gets me fired up."
That's what brought him back into the software development fray. Johnson said he felt the fire to create something people care about and that changes software development for the better.
"Frankly, it's more about solving problems and trying to do something useful when it isn't about the money," he said.
"Rod has always been on a mission of helping developers create meaningful code contributions instead of wasting time on configuration and wiring," said Mik Kersten, DevOps guru and CEO of Tasktop Technologies, an early user of Johnson's Atomist development automation platform.
Atomist represents a new class of DevOps product that goes beyond CI, which is "necessary, but not sufficient," said Rod Johnson, Atomist CEO and creator of the Spring Framework.
Tasktop's Kersten agreed that approach to developer-centric automation "goes way beyond what we got with CI." The company created a Slack bot that incorporates Atomist's automation facilities, driven by a development automation engine that is reminiscent of model-driven development or aspect-oriented programming, but provides generative facilities not only of code but across projects resources and other tools, Kersten said. A notification system informs users what the automations are doing.
Most importantly, Atomist is fully extensible, and its entire internal data model can be exposed in GraphQL.
Tasktop has already explored ways to connect Atomist to Tasktop's Integration Hub and the 58 Agile and DevOps tools it currently supports, Kersten said.
Automation built into development
As DevOps becomes more widely adopted, integrating automation into the entire DevOps toolchain is critical to help streamline the development process so programmers can develop faster, said Edwin Yuen, an analyst at Enterprise Strategy Group in Milford, Mass.
Edwin Yuenanalyst, Enterprise Strategy Group
"The market to integrate automation and development will grow, as both the companies that use DevOps and the number of applications they develop increase," he said. Atomist's integration in the code creation and deployment process, through release and update management processes, "enables automation not just in the development process but also in day two and beyond application management," he said."
Atomist joins other approaches such as GitOps and Bitbucket Pipelines that target the developer who chooses the tools used across the complete lifecycle, said Robert Stroud, an analyst at Forrester Research in Cambridge, Mass.
"Selection of tooling such as Atomist will drive developer productivity allowing them to focus on code, not pipeline development -- this is good for DevOps adoption and acceleration," he said. "The challenge for these tools is although new code fits well, deployment solutions are selected within enterprises by Ops teams, and also need to support on-premises deployment environments."
For that reason, look for traditional application release automation vendors, such as IBM, XebiaLabs and CA Technologies, to deliver features similar to Atomist's capabilities in 2018, Stroud said.