API – Just Draw Me a Picture

Everybody and their mother seems to have an API nowadays. What does that mean?

The application programming interface, or API, is a general and ubiquitous concept that tackles the problem of abstraction. Computers programs are, most fundamentally, chunks of binary code that correspond to a few simple instructions (e.g. add these values and put them in this memory location) that the computer steps through and executes. Programming at such a low level is generally long, boring and repetitive.

We would prefer to programmatically manipulate data structures in much the same way that we talk about the objects we're representing: I want to type ball = sphere (radius=1, color=color.red) (valid VPython code) and see a red ball without ever worrying about how the computer goes about creating it.

An API is a set of high-level behaviors that a programmer can use without programming the underlying operations. In scientific computing, for example, I often want to manipulate vectors, and instead of writing the code to do so by hand, I can use the linear algebra API BLAS. (An API is technically distinct from the API's implementation. The former is just the high-level behavior defined, while the latter is the code that actually runs when a programmer uses the API. BLAS is only one set of operations, but many codes implement it.)

How does an API work? Just draw me a picture.

Today's web APIs certainly make programming at a high level of abstraction easy (I can ask Facebook for a nicely-formatted, human-readable object representing a user's profile in one line of code), but they serve a second, crucial purpose: making the web more connected. Without APIs, apps are restricted to point-and-click interactions with real people using browsers (or programs that pretend to be people). APIs allow all parts of the modern ecosystem to talk to each other seamlessly.

***

Alex Edelman is Chief Technology Officer of Handshake Media, Incorporated.

Tech Showcase - NextThreeDays Widget Premiere
Who's in FRONT? Roland Lazenby

Speak Your Mind

*