This guest post comes from Steven Willmott. Steven is the CEO of 3scale networks, a company that provides infrastructure services for a wide variety of APIs.
Although these articles focused on “technical” transformation, in reality these trends are a driven by a combination of technical and business factors:
- On the business side, companies are now increasingly under pressure to operate a multi-channel model and offer access to their customers on a wide variety of devices and operating systems, as well as via a range of distribution partners.
SPA makes Web Applications function in a manner which is much closer to that of native mobile application than to the structured tree of content typical for a Web page driven model. This change not only makes it easier to share code and interfaces across Web and mobile clients, it also means that the underlying API driving both mobile and Web application can become more uniform.
At a business level, conversations can also be recast from "how is our Android App doing? How is our iOS App doing?" to "How much volume is being driven to our API - and where is it coming from?". The individual Apps remain very important, but they are also acting more as transient interfaces to the underlying service. A good example of this is Evernote, which has excellent mobile applications but the real sale is plugging a customer into the Evernote underlying platform and being accessible on every device.
Accelerating API Adoption
The utility of a powerful API is that enables a company to separate its core service offering from the various interfaces and channels through which users can experience it. The concept of an API feeding multiple usage channels is simple to conceive, but very hard to accomplish in practice. SPA architectures however bring them one step closer to realization. They potentially represent a missing piece in unifying usage experience and service delivery between the Web and Mobile.
As the frameworks mature it seems likely that we'll be able to get a lot closer to running unified APIs across all interfaces than was possible before. A further change is that while APIs today are typically launched as stand-alone separate initiatives from platform clients, API launches may become part of Web Site rollout and hence become a much more frequent sight than they are today.
It's not all Good
As commenters pointed out on the 3scale blog articles and Twitter, particularly if SPA architectures become more widely adopted for the content Web, there is a risk of creating locked down silos of content that cannot be accessed or rendered except via bespoke interfaces. In essence, the exact opposite to what APIs are supposed to enable and a radical step back from today's open Web.
So What now?
While this is an interesting trend, the real questions are really "how does this affect implementation choices today?" and "does this mean we need to go SPA right away?". It is hard to know where to come down on this, and in many cases it probably makes sense to hold off moving to Single Page Applications for a while – at least until tool sets and conventions begin to standardize. This is particularly true for content oriented sites since SEO issues remain largely unresolved.
However, the overall trends seems strong enough to begin planning for. There are some things that can be done to prepare:
- Re-assess your API strategy: evolve the API to become a common root for as many of the interfaces you have out in the field, including your Web site.
- Take a close look at authentication and security in particular: migrate to solutions such as openAuth sooner rather than later, in order to have a uniform approach in place once Web interfaces become more App like.
- Plan out your API business model: it's often the case that different interfaces are "attached" to different business models: Web to final transactions, mobile for enhanced experiences or distribution, API for "wholesale" work with partners. However, it is potentially the case that API can be structured so as to become the default transaction layer underpinning all of these business models.
No doubt, these items are already on the agenda for many companies, but Single Page Applications might be yet another reason to accelerate this thinking!