InstructureCon Keynote: [Kin spoke here about the history of APIs and what APIs do.]
I had several important things happen over the last week. One of them was sharing the stage for the first time with my partner in crime, Audrey Watters (@audreywatters).
Although I spent most of the week in Washington DC, Tuesday night I flew out to Park City, UT and shared the stage Wednesday morning for a keynote with Audrey at InstructureCon, put on by the LMS platform Instructure.
Audrey and I delivered a talk on education, the LMS and data portability. Audrey opened up and closed out the talk, you can read her perspective on Hack Education, but I wanted to make sure and provide the overview of my section, as described by Audrey as [Kin spoke here about the history of APIs and what APIs do.]
To help understand how mainstream Internet technology has influenced the LMS and education portal history Audrey has laid out, I wanted to bring the history of the web API to the table, helping people understand what APIs do:
- APIs allow computers to talk to each other, and applications to inter-operate
- Websites deliver HTML for humans to read, and APIs deliver JSON for other applications to use
The earliest approaches to APIs on the Internet, can be seen from providers starting in 2000, as Roy Fielding publishes his dissertation on REST.
The early API pioneers were looking to enable commerce around their products, sales efforts and auctions using early web enabled APIs:
- 2000 - Salesforce - The CRM and sales management provider Salesforce was the first pioneer to begin using web APIs to start developing an ecosystem of integration providers, planting the seeds of what we'd later call Platform as a Service (PaaS)
- 2000 - Ebay - Ebay identified early on, the role web APIs could play in expanding its auction marketplace, allowing business and individual to manage their online auctions via a programmatic interface
- 2002 - Amazon - Early on the fast growing bookseller identified the potential of APIs in expanding its ecosystem of e-commerce storefronts, delivering on the commerce vision of early API pioneers
After this wave of commerce APIs, a new approach to interacting, collaborating and building relationships on the web emerged, introducing a new flavor of API driven platforms:
- 2004 - Flickr - The founders of Flickr identified APIs a potential new approach to handling business development. Allowing partners a self-service way to integrate with the photo sharing platforms, allowing Flickr to use the API as a filter to help establish which companies they should partner with
- 2004 - Delicious - The social bookmarking platform Delicious introduced the world to a simpler way to bookmark documents on the web, social sharing, tagging, a new way to organize your online world. Delicious was the the first to introduce an approach to APIs that used HTTP to deliver XML responses alongside common HTML pages
- 2006 - Facebook - Following the lead of social API pioneers like Flickr and Delicious, Facebook deployed its developer platform, providing programmatic access to the social network, setting off a wave of social application development across sectors from events to online gaming
- 2006 - Twitter - The social API evolution continued with the launch of an API by fast growing micro-blogging platform Twitter. The social microblogging network relied on its API and developer community to deliver every aspect of the platform from mobile applications to analytics, as well as embeddable buttons and widgets
As the social API phase continue to evolve with the introduction of platforms from Facebook and Twitter, an earlier API pioneer Amazon put APIs to use in a way that would change the way would develop software forever.
- 2006 - Amazon Web Services - After Amazon found success with its e-commerce APIs, the company adopted APIs internally, an approach that would eventually evolve into a new type of API driven service we now know as cloud computing. AWS started with basic resources like storage and compute, but would rapidly to evolve and deliver a suite of API resources for companies to use in building all types of applications
There was one more ingredient necessary, before APIs would open up web portals that were established in the early days of the world wide web. A new type of phone was being developed, one that was smarter than earlier feature phones. The new generation of smart phones, led by Apple and its iPhone would legitimize APIs as the preferred channel for delivering the distributed resources that developers of web and mobile apps would need.
- 2009 - Foursquare - The location-based social networking website for mobile devices emerged on the landscape providing developers with a set of APIs that they would need to build the localized apps for smart phones. Foursquare has made applications locally aware, and allowing mobile users to discover and checking to the local world around them
- 2011 - Instagram - After a rogue API was deployed on top of the fast growing photo platform, Instagram responded with an official API launch, providing read and write access to the rich media content, which soon would attract the attention of earlier social API pioneer, Facebook
While APIs provided essential ingredients for web and mobile applications development like commerce, social and cloud it is also providing some other essential elements that deliver value to end-users.
- Integration - APIs allow for integration between the multiple platforms and services we have adopted as part of our online, digital worlds. Integration in an online world is critical aspect of user adoption and the future growth of any online platform
- Reciprocity - Beyond integration, APIs allow for reciprocity, not just delivering bits and bytes between platforms and services, it protects the interests of the companies behind these systems as well as acting on behalf of the end-users of applications built on top of these API driven systems
- Real-Time - Web and mobile phones have connected us, and users now desire more and more of our information, data and relationships in real-time. APIs provide the ability to be the real-time channel developers need allowing self-service, instant access to resources, but also open up a two street that pushes information back to web and mobile applications via API technologies like Web Hooks and Websockets
As this new approach to developing platforms has evovled, one that challenges earlier portals and platforms like AOL, other patterns emerge that are identified as successful ingredients of all next generation platforms. These are elements that aren't necessarily technical, but are critical components that allow often very technical resources to be accessed and used in a safe and secure way.
- Visibility - APIs provide partners, developers and end-users who are key stakeholders in a platform or portal the visibility they need to be educated and informed, providing a healthy base for any online community
- Transparency - APIs let the sunlight in to companies, organizations, government agencies or even individuals who expose their resources via the web. Embracing transparency is an essential aspect of any successful API strategy
- Security - As with any website, security is an important part of planning, deploying and managing API resources. Security is primary concern for any API effort and its community
- Privacy - Privacy of any platform and service is defined via the availability of an API. Opening up access to a companies, platform or services resources via an API must consider privacy of its users. Privacy is not an after thought in education, it mandatory
APIs will provide the essential access, transparency and data portability that will be necessary for the platforms and services we are depending on across the education space. Every company listed above has affected how the world works, and provide blueprints for platforms and services that are targeting just about any business sector, including education.
APIs are necessary to enable 3-legged conversations in the education space, elminating the education walled garden.