Cloud First — Cloud Ready — Cloud Native — Cloud Enabled ….

Shankhabrata Chowdhury
6 min readJan 23, 2023

--

So many terms & jargon !! Struggling to differentiate ?

Introduction/Context :

In many discussions either we hear or we use different terms related to cloud, e.g. “Cloud First”, “Cloud Native”, “‘Cloud Optimized”, “Cloud Ready”, and many many more. And sometimes we struggle either to differentiate those or finding correct terms to use.

This article will try to explain the different terms in my way, how I define them.

This understanding is totally of mine and some may disagree or interpret differently, but after talking with some experts, I can assure that the variance in understanding will not be much.

Note : This article will not explain the different Cloud deployment model terms, e.g. “Hybrid-Cloud”, “Multi-Cloud”, “Heterogeneous-Cloud”, “Distributed-Cloud”, etc.

Cloud Ready:

Mostly used during operation and future readiness perspective. But sometimes also refer for an application perspective. So based on the context sometimes we use the “Cloud-Ready” term for a team/organization to be cloud ready, and sometimes we refer an application to be cloud ready.

Does Imply:

  • How an organization, or a division or an application/project team, or the support team will be ready to handle, build, operate any application migration to cloud or creating new application on cloud. Strategy to follow the path towards the cloud.
  • Operational/execution guidelines how cloud migration at a broader level will work.
  • How a team will be trained/skilled to be ready for cloud technology, cloud operation, etc.
  • Cloud-Ready implies being prepared for the impact on the customer facing users or even the impact to the customers who are going to use the new application running on cloud.
  • Any planning for migration, or process selecting a new vendor for any specific enterprise wide used application to be running on cloud. e.g On-Prem NFS, On-prem Active directory how those will be cloud ready for future.
  • A safe and progressive cloud-ready approach is most of the times a hybrid cloud solution that combines cloud environments with onsite hardware.
  • When used with an application (“Cloud Ready” Application), then it has the same meaning as “Cloud Optimized/Cloud aware/ Cloud compatible”, which is described in the subsequent section of this document.

Doesn’t Imply :

  • Cloud-Ready term generally does not imply on how the architecture, design or build of system architecture would be.
  • Cloud-Ready does not mean your app is already in the cloud. For example, a Cloud-Ready App still can be running on On-Prem, a cloud-ready strategy can still be executed next year.

Cloud First / Cloud Centric:

It is an approach or strategy to cloud computing for adoption of cloud technologies for all new applications, platforms, infra and also how to move/migrate existing applications to cloud.

“Cloud-First” approach suggests you design system components to be running on cloud as the first option, running on-prem is the last option. For example, if you need directory domain service then think of using Azure AD , if not possible then on-prem AD, another example if you need file storage system, then try to use AWS S3 ( or similar in another cloud platform), if not possible then On-Prem NFS system.

Does Imply:

  • Used with organization’s strategy/direction, e.g. Cloud First Organization, Cloud First approach, cloud first strategy, we never say cloud first application, cloud first platform.
  • This cloud-first approach is a difficult path to follow. Often, companies will utilize cloud-first strategies only after they have been cloud-ready or cloud-enabled for quite some time.

Doesn’t Imply :

  • “Cloud First” isn’t in reference to a service or product, but rather to a business strategy that aligns with cloud-native initiatives.
  • Not always cheap, at least in the short terms.

Cloud Optimized / Cloud aware/ Cloud compatible/ Cloud Enabled/ Cloud Based / Cloud Ready

Those terms are used to describe an application’s transition state between on-prem and being fully cloud native. In this transitional state applications run on hybrid architecture pattern using a mix of legacy VM’s and PaaS services.

Does Imply:

  • Application/platform not built for cloud. but can run/support on cloud with workaround, bandage, gauze. They were once typically deployed in traditional data center environments but have been retrofitted/optimized for cloud compatibility.
  • Good and wise intermediate path to achieve full cloud native app/platform, instead of jumping directly to be cloud-native taking high risk.
  • In this pattern, Existing systems can be applied to a cloud environment. But, while it can work, it doesn’t mean it necessarily should.
  • Cloud-compatible or cloud-enabled software/applications mean they are tested to be run on cloud though they were not designed/built initially keeping cloud in mind. Though it doesn’t mean the software/application is taking full advantage of the benefits of Cloud.
  • Having a mix of some components running fully on serverless cloud, some running on VMs/Managed instances on cloud and some components on-prem, of the same application/system.

Doesn’t Imply :

  • Does not follow all the factors of “The Twelve-Factor app” principles (https://12factor.net/), but follows some.
  • While “cloud compatible/optimizes/aware” applications/platforms do provide access to the cloud, the true benefits of cloud technology aren’t usually realized.

Cloud Native:

The term “cloud-native” is mostly used for applications on how to be built and implementation techniques. Cloud-Native application/platform born and brought up in the cloud, built in and for the cloud.

Does Imply :

  • Refer to the actual implementation level, not at strategy level.
  • Cloud vendor agonistics. can run on any cloud platform ( with very very little changes). [at least that is the desire]
  • Mostly running on cloud vendor managed PaaS services/platform, preferably platform is widely supported.
  • Follow all factors of “The Twelve-Factor app” principles (https://12factor.net/).
  • Can also run on-prem cloud PaaS platform (e.g. OpenShift, Pivotal running on-prem).
  • End and ultimate desire outcome of solid Cloud First/Cloud Centric strategy, kind of end goal to envy of.
  • Balanced scale-speed-spend.
  • Easy, if you are building the app from scratch, though for existing application modernization.
  • Cloud-native applications can consume services natively over the public internet.
  • Mostly Cloud vendor agonists.
  • Some people suggest Serverless “Function as a Service” based architectures/application falls under Cloud Native, but I don’t believe so, because FaaS is not cloud vendor neutral, but Serverless Container PaaS hosted applications are cloud native.
  • Cloud-native apps offer optimal containerization, portability, faster deployment times, and vastly improved scalability. According to a 2022 report by Tigera, 75% of companies are now focusing on developing cloud-native applications.

Doesn’t Imply :

  • Don’t refer to strategy level or org direction level discussion. Though this may be the outcome of Cloud-First strategy.
  • Not easy for an existing application to modernized as cloud native
  • Not necessarily always the perfect fit architecture for your needs. Cloud-Native application/architecture is not the solution of every need/problem.
  • We don’t use “Cloud-Native” with organization, strategy. “cloud-native” term used for application/pattern/architecture. For example, we don’t say cloud-native organization or cloud-native strategy, Rather we say cloud-native application, cloud-native architecture.

Cloud adoption maturity graph :

Below is a pictorial representation of how the type of an application/system changes along with the maturity of an organization’s cloud adoption model/strategy.

Cloud Adoption maturity map
Cloud Adoption maturity map

Note: Opinions and approaches expressed in this article are solely my own and do not express the views or opinions of my employer, any cloud vendors or any other organization.

Some of the product names, logos, brands, diagrams are property of their respective owners.

Please: Post your comments to express your view where you agree or disagree, and to provide suggestions.

--

--

Shankhabrata Chowdhury
Shankhabrata Chowdhury

Written by Shankhabrata Chowdhury

Sr. Architect — Cloud, Security, Digital Systems & Technology

Responses (1)