We are changing things up a bit for this podcast. In my T-Suite Podcast, I usually talk about the past, present, and future of technology with my guests. This time, I have a returning guest, Abhinav Asthana and we will talk about how companies should think about developing API-first applications.
APIs — or application programming interfaces — have been around for a long time and software companies offered them to partners or their customers. However, they were often closed systems, not well documented and required contracts or special agreements so someone could use them. Further, a lot of the business logic was locked into specialized code outside the APIs, making it very difficult to do things like creating extensions to an existing app, integrate other apps together, or create customizations.
A competitive alternative
Now, organizations are embracing APIs as a competitive alternative to those closed applications. If you look at AWS (Amazon Web Services), not only can you create an API-driven app, but AWS itself is a set of powerful APIs. When you need to create a database, you can go to AWS via a browser and use the user interface to do so. However, developers know they can just create the database, tables, structures, and manage the entire database with code. Those developers can do so because AWS provides a rich set of APIs to make that happen.
Microsoft has opened up their APIs for SharePoint and Exchange so you can write rich and powerful applications that use those technologies. As a matter of fact, Apple could not support Microsoft Exchange email on the iPhone if it weren’t for Microsoft’s rich set of Exchange APIs.
API-first development does not necessarily mean you create APIs before working on a user interface for an app. Rather it means, you need to think about the user profile of who you expect to use your app from a programming perspective. Think of it this way: When a UX designer creates the mockups for your application, they will create versions for a desktop computer, the app running on a phone, and the app running on an iPad. When you create the software application, you have to decide who will use the APIs. For example, will your APIs be public, available to select third-party developers, or will they need to integrate with other applications?
In today’s T-Suite Podcast, Abhinav and I discuss the importance of adopting this API-first mindset and how you can incorporate that into your software development philosophy. On a side note, I will be attending Postman’s Post/Con conference on Sept. 11-12. Please come meet me if you like and if you have an idea for the podcast, I would love to hear it!
You can reach Abhinav on Twitter @a85.
You can reach Postman on Twitter @postmanclient.
If you would like to join me at the Post/Con conference in San Francisco, sign up here.