Guest author Nolan Wright is the CTO of Appcelerator.
Water, water, every where, And all the boards did shrink; Water, water, every where, Nor any drop to drink. ~ The Rime of the Ancient Mariner, Samuel Taylor Coleridge, 1798.
If we replace the Coleridge Mariner’s “water” with “data,” you have the lament of today’s mobile apps. Our world may be swimming in data, but little of it is optimized for mobile consumption.
Mobile poses a unique challenge for developers to acquire and activate data. What worked in the era of Web 2.0 will not necessarily work for the new era of ubiquitous mobile computing, especially for enterprise-oriented business. Companies need to learn how to tap into this data and create flexible application programming interfaces (APIs) that ultimately give developers a platform to do something amazing.
Want Mobile Innovation? Unleash Your Data
As touched on earlier in an earlier piece for ReadWrite, the standards for middleware and backend data access that defined the Web era don’t work for mobile. There are a few reasons:
- Mobile has seen an explosion in data sources. Previous generations of middleware were concerned with orchestrating data from a subset of enterprise systems that lived behind the firewall; good mobile apps need access to those systems as well as corporate software-as-a-service data (Salesforce, for example), public data (eFacebook, Twitter), and whatever may come next from the Internet of Things.
- Mobile apps consume data in a different size and format than Web application predecessors. Where SOAP and XML are the principal API formats of the web, mobile apps lean primarily on JSON. Because mobile apps must operate within smaller confines of screen real estate, bandwidth and battery life, their data sets must be boiled down to an essential payload size. For instance, if a traditional Web API returns 20 fields, the mobile variant might want only five.
- Mobile users expect full data access from almost anywhere—the grocery line, airport terminal, the in-laws’ Thanksgiving table and so on. This changes usage profiles dramatically, in both transaction volumes and time of access, which means the elastically scalable architectures that have been important to Web become mandatory for mobile.
- Mobile devices can’t count on an uninterrupted connection. This requires apps to function offline and a data exchange intelligent enough to synchronize to the backend when the connection is restored.
Given these differences, consider the plight of the mobile developer: they want to focus on building the best possible client experience, but instead find themselves bogged down in server-side “plumbing” to get the data they need in the right size, the right format, with the right resiliency, piped into the app.
Forrester Research argues, credibly, that the scalability and data integration requirements of mobile are different enough from Web that enterprises will need a new tier to their architectures. If so, consider the benefits awaiting the companies to get their first.
Your Developers Want to Innovate: Let Them
Companies that will win the mobile race are those that make it as simple as possible for developers to access the data needed for transformative apps. This is where mobile-optimized APIs come in.
APIs are the lifeblood of mobility. Good mobile APIs act as a spur to innovation. Think of them as Lego blocks: the better and more varied the collection of blocks you make available, the better and more creative the objects people build. An enterprise that makes mobile-optimized APIs widely accessible to developers is positioned to make terrific innovation leaps, at a pace that would never be achievable by top-down planning alone.
What are examples of the kinds of APIs developers need? For starters, there are the commonly required capabilities of most mobile apps, such as the ability to manage push notifications and geo-location services, or readily access a NoSQL database for on-demand storage of app data, or seamlessly integrate with social media services.
Beyond these, companies would also publish new, mobile-optimized APIs built to interact with corporate data stores—Oracle, SAP, Microsoft, Salesforce etc. Again, “mobile-optimized” is the key word here: these APIs would orchestrate data from multiple sources, convert it to the right mobile format (JSON) where necessary and boil down the payload to its essential size.
Seeding an App Ecosystem
A good mobile API inventory will appeal to more than just internal developers. With it, companies can designate APIs that are appropriate and relevant to third parties, encouraging external developers to create innovative apps around a company’s business.
NPR has been famously successful with their API strategy, but a commitment to mobile APIs isn’t restricted to social or media companies. Walgreens recently published a prescription scanning API to encourage developers of health apps; Alaska Airlines has been pushing APIs for traveler check-in, flight status, seat assignments and the like. Aetna and Kaiser Permanente have entered into the API equivalent of an arms race, to see which company can attract more third party developers.
Developers anticipate even more in the coming year. In a survey conducted jointly with IDC, we at Appcelerator found that nearly 90% of developers felt it was “likely” or “very likely” that in 2014, enterprises would invest in building mobile-optimized APIs for external builders and third parties. These developers are betting that more IT departments will embrace the role as innovation enabler—to the point of opening up new markets for the business.