The absence of APIs from a lot of education applications, I’d argue, is a good indication that we’re still dealing in many cases with pre-Web era technologies (or at least a pre-Web era mindframe). Student information systems. Learning management systems. Educational software for your desktop computer. All pre-Web. And even newer versions of these older systems often carry forward this legacy of a world without Web (or hell, even Internet) connectivity.
APIs played a crucial part in the explosion of Web technologies. E-commerce. Social networking. Cloud computing. Now mobile computing. All facilitated by APIs. APIs have enabled companies like Facebook, Google, Amazon, and Twitter to become platforms, allowing other developers to build on top of them.
“Platforms” aren’t necessarily something we talk about in education, although they do exist and are being developed with increasing frequency. Google Apps for Education is certainly an example of one. Edmodo is attempting to carve a similar path, and with the release its API last month, I described the startup as making the move “from social network to education platform.” Edmodo’s and Google’s APIs allows other companies – Mathalicious, Desmos, Aviary, for example – to connect their apps to these platforms, tapping into rosters, roles, feeds, assignments, calendars, documents and so on.
The LMS could be a platform too, I suppose – and with APIs, that’s the direction it could go. But what’s interesting to me is that, with their origins in a pre Web 2.0 world, LMSes have devised a separate standard to offer connections to external modules – “LTI,” not API. Is there widespread interest among third-party developers to integrate with LMSes via LTI? (To make the process simpler, Instructure co-founder Brian Whitmer has created a site with examples and code samples.) Or will the pervasiveness of Web APIs mean that developers' interest goes elsewhere?
I’m veering dangerously back into the technical realm here – the type of discussions that, as I started this post, tend to make “normals” not read and not care about APIs.
But here’s why they’re incredibly important, why we should pay attention to them in education, and why I recommend having an API is something you should look for in the tools you adopt: APIs make data accessible. APIs foster interoperability. APIs extend functionality. And APIs create an ecosystem -- of technology, of developers, of users.
We want that for ed-tech, don't we?
Disclosure: My boyfriend Kin Lane is the “API Evangelist,” helping companies think through their API strategies, build their APIs, and support their developers – both internally and externally. So when I talk about the importance of APIs, I should note not just what they afford education but what they afford me. (As in, being an API evangelist than being an ed-tech writer). Thanks APIs!
Image credits: via Darcy Norman's post on "the role of the LMS in higher ed." I added the arrows, I admit, to demonstrate that all these systems need to talk to each other by means other than their Venn Diagram positionality.