For me it's: The degree to which a company is willing to adopt cloud technologies.
... I see it much like the political spectrum of right and left. Sometimes useful, sometimes a bit confusing. And generally used for sweeping statements. Which means any (and every) company can be plotted on the following scale...
Cloud Native —> Cloud Agnostic
Which is where I think there's confusion..
For instance one of the CNCF's biggest projects is Kubernetes. But Kubernetes is used by many companies to achieve cloud agnosticism, rather than cloud native. Very confusing to me.
I also often see definitions around "containers" and "serverless" but I fail to see how that's a sufficient definition. These are just arbitrary technologies. These technologies may change in future, but the concept of deliberately and willingly handing over large portions of your operations to a third party will not change, and that, for me, is the definition of Cloud Native.
Hi Lou, thank you for sharing your thoughts on that. I agree with you, technology-specific definitions for such a broad term feel short-lived. In my opinion, that applies to the CNCF definition shared by Jeremy as it calls out containers, service meshes, et al. I believe these are stepping stones towards something more abstract. While the technologies change, the definition of cloud-native ideally does not.
My current working version of what I understand cloud-native to be is:
"Cloud-native is a way of developing, deploying, running and monitoring modern applications that rely, as much as possible, on managed services provided by cloud providers, so that developers can maximize their time to focus on delivering value to customers rather than dealing with infrastructure."
A very nice definition :)
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.