An API Culture

December 03, 2009

Posted in Higher Ed, Technology, and Web Industry.

In software, an API is a way to get data into or out of a system. It stands for “Applicant Programming Interface” and basically allows outsiders to access or manipulate the information in the software.

The Twitter API lets you access tweets, search users, post tweets, and so on. The API enables apps like TweetDeck, Twitterrific, and all those Twitter-related web apps to exist. The Google Maps API is the engine behind thousands of maps mashups.

APIs Everywhere

One of the most frustrating things to a software developer is reinventing the wheel. They even have an acronym – DRY: don’t repeat yourself. So when you’re building software that needs to pull in campus events, you should hit the API for the campus calendar and grab what you need. Want to show YouTube videos in the search results? Use the API.

Just as frustrating is finding the substandard add-ons that often come with large software packages. Just because a web content management system has a CRM (constituent relationship management) doesn’t mean it’s a good CRM. So it sends HTML emails? Is it as good as the standalone systems? You pour all of your wisdom into selecting a great software package and you often end up with poor add-ons that don’t meet your needs.

This is where APIs can come in handy. If you can get the systems to integrate via their respective APIs, you can get the best of both worlds. And if they’re popular systems, they may even build such integrations right in (like LinkedIn showing your latest Slideshare presentations).

Human APIs

Higher education institutions are notorious for being collections of silos. But some brilliant folks recognize the value in networking across their institutions, serving as connectors, and sharing information. These are Human APIs. Sometimes they’re called Connectors or Trust Agents Zero. They build make themselves available, build relationships, and share information freely. In exchange, they are able to create more value through collaborations.

Meetups and User Groups

One way to start is to form a user group of professionals around a particular topic. Our team has spawned several groups, including the South Bend Ruby Group. This group led to new relationships and I eventually hired one of the members to our team.

We’ve also formed a number of internal groups on LinkedIn around various industries and topics. The outreach doesn’t take much, but it’s absolutely worth it for the chance to interface with other teams and departments, share knowledge, and build on each others’ efforts.