By presenting developers with advanced, standardized, ecosystem-connected resources, both mobile and cloud platforms make development easier than ever.
In a previous article, I alluded to the fact that resources such as code libraries, SDKs, APIs, integration tools, and managed services make mobile and cloud development widely available and increasingly easy. These abstractions create a set of modular resources not unlike a box of LEGOs: a proven set of standardized and reusable pieces that enable creators to quickly choose the right pieces and skip past lower levels of development. Combined with the mature and growing ecosystems surrounding the cloud and mobile platforms, these abstractions have the power to multiply development gains.
By making these “LEGO pieces” widely available, mobile and cloud platform providers can attract ecosystem contributions from a variety of stakeholders. These resources lower the barriers to entry for novice developers while enabling advanced developers to multiply their contributions through more complex work. Ultimately, this allows organizations to spend more time, money, and energy on their core business instead of managing lower echelons of app development, infrastructure, and platform management.
Mobile Development in an Ecosystem
In the mobile space, smartphone makers provide a robust, ultra-portable platform that entices developers to contribute to the ecosystem. Thanks to the considerable free resources that are available, a novice student can take a beginner’s mobile app development course and, in a matter of weeks, produce a relatively high-functioning application. For instance, using documentation, online forums, and a few lines of code, one could rapidly leverage the Apple or Google map engine to build a map-based app and then dedicate more time on the functionality that sits on top of the map.
For an advanced illustration, consider a mobile phone use case where one plans a night at the movies using a movie theater app. To do so, a user would need only request a movie listing using a hands-free digital voice assistant, then let an app find local shows based on their current location, provide their payment information to a virtual pay kiosk, deposit the tickets into their digital wallet, and add the event to their calendar with a link for driving directions and a time-to-leave reminder based on real-time traffic. For such an app to work, a number of functions and services would interact and pass data to each other through the following sequence:
- Sensor-based continual listening
- Natural language processing (NLP)
- Web-hosted database search
- Geospatial referencing
- Secure payments
- Event data hand-offs
- Local storage of event tickets
- Time-driven notification messages utilizing real-time, crowdsourced traffic information
Development of such a movie theater app would focus primarily on coding how the app will interface with the web-hosted database (Step 4), as the other eight “LEGO piece” elements will be called upon in code or automatically provided by the platform system.
The relative ease of orchestrating these kinds of cross-functions/services interactions through the use of off-the-shelf “LEGOs” (libraries, API calls, etc.) has been a major driver of the massive expansion of the broader mobile ecosystem in recent years. In fact, forecasts suggest that the mobile content market will hit $312 billion this year — including $118 billion worth of apps.
Cloud Development in an Ecosystem
In the cloud computing space, cloud services debuted with infrastructure as a service (IaaS), which enabled IT shops to shrink their physical footprints and virtualize their servers and applications. Platform as a service (PaaS) then gave customers access to a platform equipped with a managed operating system and access to APIs, which enabled developers to focus on creating cloud-based applications without the trouble of managing the underlying environment.
To date, the most valuable contributions to the broader cloud ecosystem come from the rise of serverless offerings. Serverless, managed services sit atop highly-performant infrastructure and platform systems and maintain a high release rate of new, up-to-date capabilities. Popular offerings include big data analytics, AI/ML, AR/VR, NLP, blockchain, IoT, media, application development, robotics, satellite ground station service, and, of course, storage, database, and virtual machine hosting.
As an example, imagine an organization that wanted to analyze a call center conversation between a customer and a support representative through the use of managed cloud applications, data, and services. This process might involve the following sequence using out-of-the-box serverless offerings:
- Recording the call via a cloud service application
- Saving the data in cloud storage
- Sending the audio file to a transcription engine using either a time- or event-driven logic function
- Transcribing speech-to-text using the latest crowdsourced models
- Sending that text to an NLP application to produce insights and relationships found within the text
- Analyzing subsequent data produced in an interactive query service
- Feeding that data into a business intelligence tool or service for use by analysts and decision-makers
This development effort could be accomplished using primarily off-the-shelf “LEGOs” that are stitched together by pointing resources to each other and small scripts to capture desired system behaviors. As is the case with mobile, substantial training and resources exist to assist developers and organizations in learning and optimizing cloud development.
For Enterprises, Cloud Is the Present and the Future
The examples outlined above are just the tip of the iceberg. There is an ever-growing number of use cases in which everyone from individual developers to well-resourced enterprise development teams could leverage these “LEGOs” to rapidly deploy impressive solutions in less time than thought possible before.
Further, just as an iPhone user can use Google for email and Microsoft for productivity apps, enterprises can use cloud setups assembled from multiple public cloud providers — there is no need to make a commitment to a single cloud provider. Considering that cloud continues to lower barriers to development, doesn’t require vendor lock-in, and offers incredibly powerful (and always improving) functionalities, it should be no wonder why Gartner predicts that the total revenue generated by public cloud services will jump from $249.8 billion in 2020 to $331.2 billion by 2022.