[Blog by Chris Tredwell]
Cloud computing has seen huge growth since 2010, with global spend on cloud services currently at over $260bn and has exceeded initial expectations of technology industry analyst, Gartner.
As businesses around the world increase their spend to utilise the benefits of the cloud, many traditional software vendors, to remain competitive, have adopted a hosted approach to provisioning their traditional on-premise software in the cloud. The phrase “cloudwashing” has been coined to describe the practice of deploying legacy systems in the cloud, despite the technology not being designed for this deployment approach, and has been seen as a way for vendors to deceive potential customers.
In this article, we will aim to reduce some of the confusion regarding the differences between Cloud-Native and Cloud-Hosted solutions.
Let’s talk about Cloud-Hosted
We briefly mentioned “cloudwashing” earlier. Cloud-hosted software refers to an application that has traditionally been installed on-premise (on an end-users device or within the company’s IT infrastructure), that is then lifted and migrated onto cloud-based servers to make them accessible through a web browser.
The ability for employees to access the software/data/resource they need remotely — wherever they are in the world — is one of the key benefits of a cloud-enabled organisation. Additionally, the reduced reliance upon on-premise resources (servers, hardware) is a major plus point, especially for businesses with limited physical space.
However, pre-existing limitations still remain. Just because a legacy system has been migrated to the cloud, that doesn’t mean it has adapted to the more modern approaches customers are keen to benefit from. Additionally, this approach can require expensive improvement costs, difficulties with system updates due to the inflexible nature of older systems, and issues around compatibility and integration with newer systems.
Cloud-Native software is software that has been specifically designed, developed and deployed to utilise the benefits of the cloud. There are a host of benefits for both the user and the developer:
- Continuous development — Developers are able to constantly work on updates to their software, allowing them to address any possible problems early, with immediate feedback from the user.
- Instant deployment — Updates can be rolled out almost instantly, with no long downtime for the user, nor the need for on-site IT technicians.
- Multi-Tenancy — Allows for one instance of the software to serve numerous customers. Makes it a lot easier to analyse usage and make the software more efficient.
- Modularity — The software can be broken down into “microservices”, which can be worked on by the developer without affecting other parts of the software.
- Disposability — The ability to remove broken products quickly and easily ensuring that the legacy issues do not remain in the system.
- API Integration — Through the use of APIs, the software is able to integrate and communicate with a host of other applications, software and operating systems. This is a fundamental keystone in Post-Modern ERP solutions.
- Scalability — Cloud-native solutions are able to be scaled up or down with relative ease to match the needs of the user.
Cloud-Native vs Cloud-Hosted — A Comparison
The extensive additional abilities of cloud-native products over cloud-hosted products highlight the limitations of the latter, as problems are imported from legacy systems that are not built for purpose.
The cloud has been shown to offer not only new opportunities to developers and users, allowing them to drive technological development and keep pace with external drivers, but enables developers to remove old and broken elements of the software with minimal interruption to the end-user, ensuring that there are no legacy remnants within the software.
The Legacy Overhang
This is a key problem for legacy software, where the archaic issues are still not removed when the software is migrated to the cloud. Additionally, cloud-hosted software does not have the scalability that cloud-native software does, which is often reflected by the pricing model used by the vendor.
Cloud-native vendors are able to provide clear pricing structures, usually per user as a subscription model, whereas cloud-hosted retains the limitations of their legacy pricing model as their setup costs will still exist. Legacy software also presents a variety of modernising issues for developers, the implication being that updates to cloud-hosted software are significantly less-frequent than their cloud-native counterparts, reducing the value to the end-user.
The Cloud-Native Potential
Within cloud-native application development, developers are able to utilise key pillars of cloud-based development, including containerisation, microservices, automation and orchestration (see glossary box above for explanation). These tools enable developers to segregate problems within the software when they need to be fixed, as well as the ability to deploy singular containers of their product, thus allowing for greater levels of personalisation for the customer’s workflow.
Tailoring the Software
If a customer does not require all of the bells and whistles available in the software, cloud-native vendors are able to facilitate different types of access for a variety of different organisational needs, meaning that each customer is more likely to experience a tailored solution. Consequently, fewer resources are wasted on unwanted and unneeded aspects of the software, resulting in a more streamlined solution for the customer.
Furthermore, the use of API’s in cloud-native software enables the customer to integrate their software with other API-friendly software, thus subscribing to a “best-of-breed” philosophy at the heart of their ERP system and increasing the customer’s ability to tailor and streamline numerous of their business functions.
All Clouds aren’t Created Equal
The confusion around the cloud seems to be caused largely by its inevitable rise as one of the buzzwords of the past decade. Many of us were first introduced to the cloud when our new phones asked if we wanted to “back up our contacts and messages to the cloud”, which in itself loosely explained to us that the cloud is a place for information to be stored on the internet.
But really it is so much more than that.
The cloud goes beyond simply storing and hosting, and is at the forefront of a wave of new technological possibilities. Developers in the cloud-native world are keenly working together, sharing information through open-source mediums, creating new solutions to old problems and improving the experience for their customers. There is a growing community amongst developers, despite them often finding themselves as competitors within their commercial organisations, who are finding solutions to problems that most of us will never know existed. But it will be us, the end-users, who will reap the benefits of these developments as our cloud-native software grows with us. Those on cloud-hosted? Well, they won’t be going anywhere fast.