Thought I’d make a quick comment on this story in TechCrunch. Basically, the take home message is that Facebook’s API is worse than Google’s (it wasn’t clear from the article whether this was one of their APIs or all; I’d assume all), Twitter’s, PayPal’s and a number of others.
Personally I think this is an unfair reflection. Now, I’m by no means saying I disagree with the fact that Facebook has a cluttered, ever changing and confusing API (on the contrary – the Facebook API is all these things and more); what I am saying is the comparison is unfair.
For example, the PayPal API is unnecessarily convoluted, difficult and poorly documented. Most developers actually don’t use the API directly, they use what’s called a “client library”; a small program which implements the nuts and bolts of an API and allows developers to make calls to it and receive data back from it. Effectively, developers almost never have to actually call the API itself. Therefore they are shielded from most of its problems. Facebook integration usually requires direct access to the API. This means developers have to get their hands dirty and are opened up to all the flaws, undocumented changes and bugs inherent in the API.
In summary I’d say PayPal’s API is actually worse than Facebook’s; it’s just that we don’t have to deal with it.