What are developers looking for in multicloud programming? Simplicity.
Applications live everywhere in the multicloud but nowhere in particular.
For developers, this means they need tools and frameworks that help them spread data and business logic across many public, private, edge and other environments. More than that, they need abstractions that can help them nimbly build and maintain the virtual machines, containers, serverless functions and even graph models within which this logic lives.
None of this is simple, but developers can’t be productive if their tooling doesn’t present them with a simple enough abstraction for doing powerful things. As the multicloud becomes a dominant environment for enterprise applications, developers will have to weed through some seriously complex tooling in order to get their work done.
Where will the simplicity that multicloud app developers need come from? Wikibon sees several technologies growing in importance to deliver on this promise.
Augmented programming drives multicode low-code development
Simplicity means a development abstraction that frees you from having to worry about how your code will be compiled, deployed and executed across the multicloud.
The key to this is augmented programming, aka “code generation” tools. The common thread in all augmented programming tools is use of an abstraction layer that allows developers to write declarative business logic that is then translated by tools into procedural programming code. Increasingly, robotic process automation and other augmented programming tools use machine learning as an abstraction layer for automatically inferring program code from screenshots and other existing application elements.
By reverse-engineering program code from existing applications, machine learning can boost developer productivity to an extent that traditional code-generation tools – with their reliance on manual techniques for declarative specification — have been unable to deliver. In other words, augmented programming is the cutting edge of what some called “low-code” development.
Intent-based networking ensures that distributed multicloud apps behave predictably
Simplicity also means being able to specify your programmatic intentions for an application and then let the tooling and infrastructure find the best way to realize it.
Intent-based networking uses AI to do just that. It automatically captures developer intent regarding the business and technology outcomes to be achieved, then translating this intent into policies — including application service levels, security policies, regulatory compliance and operational processes — that the network can act on, while monitoring and verifying that the desired intent has been applied and the business outcomes are being achieved.
Infrastructure as code auto-provisions the underlying multicloud clusters and platforms
Furthermore, simplicity means developing and deploying application and infrastructure code in one fell swoop. Infrastructure as code is the key paradigm for doing that.
Infrastructure as code allows developers to write templates that declaratively describe the desired state of a new infrastructure component, such as a server instance, virtual machine, container, orchestrated cluster or serverless functional app. Within information technology management tooling that leverages underlying DevOps source control, the infrastructure-as-code template drives the creation of graphs of what the cloud infrastructure codebase should look like.
The tooling then looks for deficiencies in deployed code and fixes them by deploying the end-to-end code, so that the end-to-end deployed infrastructure converges on the correct state.
Curated code repositories provide a single source of sanctioned programmatic artifacts
Finally, simplicity means giving developers a single source of sanctioned, curated code. Curated code repositories are the key to this, and, of course, the heart of continuous integration and continuous deployment, aka DevOps.
Code repositories — alongside data lakes and big-data clusters — are the foundation of team productivity in multicloud application development. They enable developers to build applications using prevalidated containerized code, serverless functions, machine learning models, APIs, metadata and other artifacts.
Within a continuous integration/continuous deployment work, they can accelerate discovery of code that has been created, vetted and constantly maintained within a development organization’s centers of excellence. To boost developer productivity, code repositories usually enable fast search for code by technology and programming language, sorting search results by those most recommended by developers in various specialties.
Recommendations for multicloud application developers
Let’s be brutally honest: None of these technologies alone delivers programming simplicity in strictest sense.
For starters, none of these approaches — augmented programming, intent-based networking, intent-based networking, DevOps code repositories — are so automated that all a developer need do is snap her fingers to generate and deploy powerful, distributed and thoroughly optimized clouds apps.
Also, the need to converge these approaches in multicloud tooling introduces a significant amount of complexity into whatever overarching framework your enterprise development shop uses. If nothing else, your entire end-to-end DevOps toolchain will need to have sophisticated AIops capabilities to automate every step in the creation, deployment and management of containerized, serverless and other cloud apps.
For developers, the key recommendation is to investigate whether your multicloud solution providers has robust support for each of these capabilities within their toolsets and infrastructure solutions. If they offer strong visual development features, AI-driven code generation and team-based collaborative DevOps capabilities, you’re well on the road to simplification in your multicloud development shop.
Check out these recent SiliconANGLE articles that provide a high-level look at the multicloud tooling currently provided by Cisco Systems Inc., IBM Corp. and Google LLC.
If you’re in the San Francisco Bay Area this week, you may also want to check out Cisco DevNet Create 2019 to learn more about all of these development methodologies and the enabling tools and technologies. On Wednesday and Thursday, April 24 and 25, theCUBE will be there interviewing movers, shakers and innovators live from the show floor at the Computer History Museum in Mountain View.
Photo: bbpc/Pixabay
A message from John Furrier, co-founder of SiliconANGLE:
Your vote of support is important to us and it helps us keep the content FREE.
One click below supports our mission to provide free, deep, and relevant content.
Join our community on YouTube
Join the community that includes more than 15,000 #CubeAlumni experts, including Amazon.com CEO Andy Jassy, Dell Technologies founder and CEO Michael Dell, Intel CEO Pat Gelsinger, and many more luminaries and experts.
THANK YOU