THANK YOU FOR SUBSCRIBING
The API Feedback Loop
David Biesack, Vice-President, API Platforms and Lead API Architect, Apiture
“To keep pace with changing customer demands, a business needs …the ability to connect data, applications, and systems to create new digital experiences and products. How do companies do this? They use application programming interfaces (APIs).” – Michael Endler, Google
The Application Programming Interfaces (APIs) which Endler cites have been the key to innovation. APIs are software contracts which enable one application to make a remote request over the internet to another software service, from making a dinner reservation to using advance machine learning to perform facial recognition. For decades, the software industry tried to make software reuse work. APIs solve that problem, and startups are capitalizing on APIs in two salient ways:
• Using APIs to deliver in internet time without having to build everything from scratch
• Creating APIs to make their products and services available to others
To help understand exactly what an API is and why they are valuable, let’s take a step outside of technology. A couple weeks ago, while cleaning house Marie Kondo style, my wife found a $50 U.S. Savings bond from 2000. I took it to my local bank branch, gave it to the teller along with my identification, and asked using a language that we both understood: “Please cash this savings bond”. This information exchange represents an agreed upon interface between the client and the service provider. The teller executed my request (using processes of which I am gladly oblivious) and returned a response to me: a receipt and some cash. This is what APIs do:
1. APIs use an agreed upon request (“Please cash this savings bond”) and response protocol (“here is your cash and a receipt”) between a client application and a software service running somewhere on the web. In this scenario, I play the role of the client application, and the teller plays the role of the API.
2. Like a bank branch, API services run at known, branded (web server) locations.
A good DX is key to an API’s success: the best DX engages developers and builds loyalty. Simply put, a great DX makes it a joy to work with the APIs
4. The teller acted as an agent to process bank services on my behalf.
This is what makes APIs so powerful – they perform a service but hide the client applications from internal details, such other API calls or database access.
If my bank branch purchases a new imaging tool that scans deposit slips and checks to perform highly accurate optical character recognition, I can still hand over my deposits to the teller as I’ve always done. APIs isolate the client apps from software changes because most client apps (like this old dog author, or the process of a bank customer cashing a check) are much harder to change... especially when an API has many client applications, which is the norm.
In his famous (well, famous in tech circles) essay, The Cathedral and the Bazaar, Eric Raymond, wrote
“Every good work of software starts by scratching a developer’s personal itch.”
Developers have an eye for saving themselves work by writing software that simplifies their job, automates a repetitive process, or simply does something new and cool. The key to innovation is scratching an itch that no one else can reach. The best APIs are those which are built with flexibility in mind and accommodate uses that the API designer never anticipated. This adaptability is the cornerstone of good, reusable software. By supporting small, discrete operations, APIs can be composed in any way any innovator envisions.
“Building APIs and apps requires “standing on the shoulders of giants”. A good API must be easier to use than starting from scratch, and its abstractions must age well. Sounds easy, but it’s hard to do well.”– Michael K Johnson, Director of Engineering, pendo.io
The best APIs are accompanied by active developer communities and a robust developer web site that features documentation, tutorials, and examples which help developers use the APIs effectively. The goal of the developer experience (DX) is to equip developers with all the tools they need to succeed with an API. A good DX is key to an API’s success: the best DX engages developers and builds loyalty. Simply put, a great DX makes it a joy to work with the APIs. This attracts more developers to the API; the API gains traction in the market and garners essential feedback which improves the API.
This symbiosis of reuse enabled by APIs coupled with a rich Developer Experience spurs API advances in all areas, offering startups the opportunity to build a better back scratcher – to solve that itch that no one else can solve. APIs may not directly lead to innovation. However, by using and reusing APIs, app developers can stand on the shoulders of giants. APIs enable innovation by letting app developers concentrate on solving problems for their app users without having to implement everything. The most significant contribution APIs make to innovation is being the fuel that enables and empowers entrepreneurs to execute on their innovative ideas.
As VP of API Platforms at Apiture, David Biesack is responsible for the design and architecture of Apiture’s banking APIs and their Developer Experience.
See Also: Top API Solution Companies