ra2 studio - Fotolia

Get started Bring yourself up to speed with our introductory content.

Connecting the 'DevOps, Agile and Java cloud native applications' dots

Listen to this podcast

A concise definition of both DevOps and cloud native computing is elusive, but Cisco's Ken Owens presents a unified theory that pulls together the Java cloud, Agile, microservices and containers.

The software development industry is replete with its own lingo and buzzwords, and if you're a Java cloud developer, you would agree that 'cloud native' is one of 2017's most repeated catchphrases.

DevOps, microservices, containers and the Java cloud

This site has published a number of articles on the topic of microservices, containers and cloud native development for the Java cloud, and there are plenty more in the pipeline. Taking our ongoing interest of the topic into account, as a form of due diligence in exploring how cloud native philosophies impact Java cloud developers, an ongoing effort has been put forth to nail down a concise and universally acceptable definition of what cloud native means. It's a seemingly simple task, but the task's execution has become incredibly hard.

To the purist, cloud native computing is simply the deployment of a microservice into a managed and orchestrated container.

To the purist, cloud native computing is simply the deployment of a microservice into a managed and orchestrated container. Others say it's just a matter of writing Twelve-Factor Apps that deploy nicely into any cloud service, such as Amazon S3. To others experienced in the art of software development and the Java cloud, you're not cloud native if you're not using an Agile methodology. Others demand that cloud native development requires assimilation into a DevOps culture collective, which evokes the equally difficult task of trying to figure out what experts mean when they throw around the term DevOps.

A unified theory of cloud native computing

There are plenty of DevOps experts talking about microservices, automation, continuous delivery and cloud native computing, but there is a vacuum when it comes to expert consensus on the cloud native term. Having said that, in a recent interview, Ken Owens, Cisco Systems' chief technology officer of Cloud Platforms and Services Group, delivered the best definition of cloud native computing heard to date.

In his eloquent summation of what cloud native means, he pulls together the idea of cloud native with the use of microservices and software containers like Docker, after which he rounds all of that back upon itself to incorporate things like testing, automation, developer independence and DevOps, all while explaining how Agile concepts and practices play into the mix as well. It's like he's provided a unified theory of cloud native computing. And what's even more amazing, he does it in less than four minutes.

So here's Ken's response, provided as an accompanying audio file, when asked to define the term cloud native. I think you'll find it's the best definition of the term available.

Tweet this article!

You can follow Ken Owens on Twitter: @kenowens12
You can follow Cameron McKenzie too: @cameronmcnz

Interested in more articles and opinion pieces from Cameron McKenzie? Check these out:

Next Steps

What is a 12-Factor app? It's nothign more than unactionable drivel.

Here's an awesome, unified theory of cloud native computing, from Cisco's Ken Owens 

Don't believe them when they say cloud computing will one day compete with bare metal JVM performancel

App Architecture
Software Quality
Cloud Computing