Designing Good APIs - video

May 16th, 2007

I came across this Google TechTalk Advanced Programming Series video where Josh Bloch discusses elements of Good API Design.

This is a fantastic topic that transcends programming languages and computer science and can be applied to anything from designing a telephone to figuring out how to get your kids to do their chores.

Back to programming, Josh said something very critical — he said that every programmer is an API designer, whether they know it or not. So true. Every program is a collection of modules that communicate with each other (well, a good program anyway) by well defined interfaces… implemented by functions or classes/methods depending on the language. The overall direction of the discussion seems geared towards organizations developing public APIs that may ultimately be used by 10’s or 100’s of thousands of people. Smell google yet? So getting it right the first time is important. Furthermore, getting the published examples is 10x more important because they are the foundation for showing people how to use the API — with bits and pieces of the example finding its way into various production code around the globe.

On a related side note… if you’ve ever been part of an “architecture” team tasked with locking yourselves into a room for 6 months to finish the public API (we know who we are)…. you should watch this video. Josh has some great points… at 10m28s, to be specific. priceless, actually.

Here is the video.

One Response to “Designing Good APIs - video”

  1. jeff judge Says:

    yea, google does a kick ass job at this. a perfect example is the google maps api.

Leave a Reply