This piece on The Future Of APIs is an interesting read. The gist of it is that we should use standards alignment, registries, and similar tools to describe APIs in more programmatic ways, thereby promoting machine-to-machine discovery. We’re also treated to a lovely history lesson about the original Mechanical Turk - a clever, chess-playing pseudo-automaton.

There are some fine ideas here. Common-sense proposals for providing a little more structure and cohesion to the rapidly-changing API marketplace are very welcome. Indeed, some industries are already seeing fledgling efforts towards standardization and alignment. That’s especially true when outside forces are behind the push, as is the case in curriculum standards alignment in K-12 education.

It’s worth noting that these ideas are costly and complex. I’ve participated in my share of standards committees over the years, and I’ve found that standards alignment is never easy. Defining the standards can be an extremely difficult political task, as it tends to bring out fault lines in an industry: depending on how they are written, standards can promote the interests of incumbents over entrants, or they can facilitate the needs of high-end producers over those of low-end producers, and so forth. Furthermore, as real-world conditions change, maintaining and adapting standards can be very tricky: for example, witness the evolution of OpenID as the need for authentication in mobile apps grew increasingly urgent. Finally, standards implementation is an entirely separate, and expensive, headache.

At the end of the day, though, a good and well-implemented standard can be well worth the cost. After all, standards are what built the web, and machine-to-machine discovery is in fact an important part of why the web works so well.

That is not to say that we should hold our breath for a brave new future in which machine-to-machine discovery solves all of our integration headaches. Such an ideal is clearly a long way off, and moreover, it’s not even clear that it makes sense in many cases. There may be quite a few APIs which are fungible - weather, currency conversion, and natural language processing come to mind - but there are surely many others which are not. Even if we were to compare APIs from two providers which are in direct competition - let’s say MailChimp and Constant Contact - we’d find that consumers have very strong opinions about which provider they want to use, because of differences in the price structure, user interface, or unique features of the one provider or the other.

Instead, what really excites me about this movement towards standardization is that it encourages us to talk about APIs with a more refined and richer language. Standards alignment and registry creation is really just the latest fad in the very old art of making dictionaries. And a good dictionary is the key to really excellent communication.

Image courtesy of Maarten van den Heuvel