For fast-paced, agile application development, all the momentum is behind cloud. IDG’s 2018 Cloud Computing Survey found that 83% of enterprises were moving to IaaS for application delivery and 73% to PaaS, while 77% already had at least one application or a portion of their enterprise computing infrastructure in the cloud. This year’s IDC Futurescape report predicts that 35% of all production apps will be cloud-native by 2022.
Together, the growth of PaaS, the development of open standards and the move to microservices are making it easier than ever to not just ‘lift and shift’ existing applications to the cloud but build new, innovative applications that are cloud-native.
Freeing up developers to focus on applications
This is good news for CIOs, developers and their businesses, because it’s accelerating the pace of app development, making it easier to iterate, scale up and scale out at speed. Partly, this comes down to the way that shifting to PaaS has reduced so many of the burdens of application development. The old methods of application development and deployment involved an incredible amount of friction, both in the process of building the underlying infrastructure, and in testing and rolling out software and updates.
With cloud, that infrastructure is already available with a minimal upfront cost, leaving developers free to focus on building applications. What’s more, the same benefits carry over once the application’s live; with no need to worry about the infrastructure, developers can focus on further iteration and improvement.
The result? Enterprises that move to cloud-based development are finding it much, much faster to develop, launch and iterate new applications. For instance, a study by IDC on building apps on the Salesforce platform found that application development life cycles took half as long in comparison to legacy or alternative platforms, and that organisations needed fewer days to release applications into production. Developers also found the speed of iteration increasing. This isn’t just good news for developers or even CIOs, but for the business as a whole when new apps and customer experiences can be so crucial to remaining competitive.
This isn’t just a question of infrastructure, however. Switching to a cloud-based development platform can further accelerate the pace of development when there are existing APIs, tools and application elements to work with. IDC estimates that, by 2022, 90% of all apps will feature microservices architectures that enhance the abilities to design, debug, update and leverage third-party code, meaning there’s no need to build everything from scratch.
Embracing continuous delivery and DevOps
The speed of iteration means that faults can be rectified faster, while applications that don’t 100% fulfil their brief can be improved rapidly, bringing in feedback from end users within the business. Cloud-based development is ideal for the continuous integration, continuous delivery cycles of a DevOps methodology and enterprises can innovate faster and – where failure happens – fail faster. One underwhelming release is never a catastrophe when you can learn, build something better and then scale out. Plus, with cloud there’s no need to worry about failure at the operations level, where scalability, redundancy and disaster recovery are built into the platform.
Most of all, cloud platforms enable enterprises to take advantage of other key trends in app development. Here, low-code and no-code development tools are thriving, allowing non-developers to build apps that focus in on specific customer or business needs – needs that developers not involved in business day-to-day might not even be aware of. Workflows and data are already moving to the cloud, and – as the data gravity theory has it – where data goes, applications and development will follow.
For CIOs and developers, the argument is becoming less about why develop in the cloud than why not? Where lift and shift might still make sense for some legacy applications, going cloud native now makes too much sense for enterprises to ignore.