Mashup Camp IV Day 1: Why DIY when APIs are available?

This was really Chris Radcliff’s bitch session on why don’t people just use the Eventful API instead of writing their own event functionality over and over again 🙂 but we discussed a number of interesting points that have analogies in any development environment:

Why people write their own functions even if something exists:

  • Discoverability, that is, they don’t know that the function exists externally
  • Lack of functionality (or perceived lack)
  • Lack of control over functionality, which is a sort of subset of the previous point
  • Lack of service level agreement
  • “Not invented here” syndrome
  • Complexity of external APIs

Why people shouldn’t write their own functions, but use one that already exists:

  • Someone else maintains the code
  • That particular function is not a core competency and not a competitive differentiator
  • It takes longer to get up and running if you write it yourself than if you use an existing API

There was an extended discussion of event APIs and functionality in general, which was not really the point of this session, but it’s an interesting case study for looking at the issues. There’s a ton of other examples here: spam filtering, address lookups, geocoding; all of these are readily available from a couple of competing sources. Of course, it’s all a matter of timing: I can recall when we wrote TIFF decompression and display algorithms in the late 1980’s because nothing else existed, something that would never be considered now.

There’s obvious differences in APIs that deliver content versus those that manipulate content with respect to both copyright issues and currency: if an API is maintaining an up-to-date database of information behind the API (like Eventful, which has about 4 million future events in their database at any given time), then it may be much better positioned to deliver the right content than something that you build yourself.

2 thoughts on “Mashup Camp IV Day 1: Why DIY when APIs are available?

  1. Thanks for posting this summary Sandy.. as I couldn’t make it to that session because there were too many interesting sessions happening at mashup camp at the same time 🙂

    there is of course.. the other extreme.. where, for-sure, there is no API yet, and one is simply trying to see the possibilities.. my grocieries/map mashup I did for this year’s camp is such an example:

    http://www.japaninyourpalm.com/maps/groceries/

    maybe see you on Wed.

  2. Al, thanks for your comment. The title of the post is “…when APIs are available”, so the case where the there isn’t yet an API, the reason for DIY is obvious 😉

    I didn’t see you in speed geeking yesterday, but if you’re there today I’ll probably get through the rest of the list.

Leave a Reply