At Mashery's Business of API's Conference we shared data from our survey of developer pain to let API providers know where they could do better, and to sound a call to action for all the providers out there to start working together
Injustice - Developers Among Us (SciFiDevCon 2024)
Why Your API Sucks - #BAPI SF
1. Why Your API Sucks
Business of APIs Conference, SF, 10/4/2011
An API developer survey opens Pandora’s Box
http://bit.ly/trove-survey-results
Seth Blank, Founder
www.yourtrove.com
s@yourtrove.com
@AntiFreeze
10/4/2011
1
2. We did a survey on API Pain
It made some waves
You can view it here:
http://bit.ly/trove-survey-results
10/4/2011
2
3. “Facebook Wins ‘Worst API’ in Developer Survey”
- TechCrunch
“Developers relate a tale of woe with Facebook's
API”
- The Inquirer
“Developer survey finds Facebook has the worst
API”
- ZD Net
10/4/2011
3
4. Booooring
It’s no real secret that Facebook’s API is widely loathed
10/4/2011
4
5. Developers Hate Your API
“Every integration is its own
[expletive-deleted] adventure.”
10/4/2011
5
7. “different idiosyncrasies, ie rate limiting, terms
of service, data format, old documentation etc.”
“REST vs. XML-RPC vs. SOAP,
JSON vs. XML vs. Random POST data.
Every API seems to be different”
“REST uses the HTTP spec, but few API providers
actually follow the spec properly.”
10/4/2011
7
8. “Guarantee me that any API you
support will exist in its current form
(bugs and all!) for at least 12
months, and I will give you so much
fucking money.”
10/4/2011
8
9. “Guarantee me that any API you
support will exist in its current form
(bugs and all!) for at least 12 months,
and I will give you
so much fucking
10/4/2011
9
10. Where else are you losing
Developer’s $$$?!
10/4/2011
10
11. Your Documentation Sucks
“poor documentation” mentioned 41 times
“lack of good examples + sandboxes”
“Documentation and examples. Give me those,
keep them up to date and I’m happy.”
10/4/2011
11
12. Your Error Handling and
Test Environments Suck
“error handling” a frequent complaint
“Complete lack of test environments.”
“The ones that you can’t test from a localhost
suck”
10/4/2011
12
13. We suck more together
Inconsistent standards, libraries, and
documentation
“REST vs. XML-RPC vs. SOAP,
JSON vs. XML vs. Random POST data.
Every API seems to be different”
“Change is good, but change when it breaks
existing 3rd party API’s is a nightmare.”
10/4/2011
13
14. We suck more together
“Random 3rd party outages that take you out as
well”
Error Codes differ between services.
On bad Auth, Some 404, others 401.
And some 500. This is hell on devs.
“Different data formats from different services
for essentially the same data.”
10/4/2011
14
15. And there’s so much other
confusion
Authentication vs. Authorization
Oh do developers hate OAuth
(users, too!)
Actually getting through to stakeholders (that’s
YOU)
Rate limiting and billing
10/4/2011
15
16. “Paypal. Sweet god, fuck paypal.” “OMFG Salesforce
“Digg is basically a giant API sucks. That is
example of ‘this is how to not all”
do it’.”
“Affiliate + API —
“Netsuite SOAPs almost no one does it
documentation is, umm… right.”
completely fucking incorrect”
“We’re still working on
“Too many to relate.”
it.”
10/4/2011
16
23. Recap
We’re not in this alone
We need to start thinking like team players
Cooperation amongst ourselves makes developers’ lives easier
Which means better adoption, retention, and revenue
We all get to win
10/4/2011
23
24. Your Business is NOT your API. It is
what that API provides access to.
So fix your API and the ecosystem around it!
10/4/2011
24
- Cofounder of YourTrove, the last content API you’ll ever need\n- Here to tell you why your API sucks.\n- But first, a little background\n
- Wanted to prove the value in Trove with data\n- No data except ranty blog posts\n- Reached out to dev community\n- 3 simple multiple choice questions, several long form answers, all anonymous\n- The reaction to our survey surprised us\n- And wow, did developers use the outlet to vent\n- So much so, that the Press picked up on the responses\n\n
- Started from a post on Programmable Web.\n- Facebook, facebook, facebook!\n- Even made the top technology article on Google News.\n- But I’m not here to toot my horn\n- The truth is...\n
- All this Facebook crap was the least interesting thing to come out of this survey\n- And you all know about FB’s issues\n- That’s not why we’re here.\n- What’s the real take away from the survey?\nRaise your hand if you’re from Twilio, Apigee, or Mashery: GTFO, this isn’t for you.\n- It’s not just Facebook\n\n
- No matter how awesome you think your API is\n- No matter how much your developers tell you they love it\n- Your API Sucks\n- For one simple reason:\n
- Devs aren’t just using your API\n- You’re part of a suite\n\n
- We asked where developer headaches came from\n- They weren’t shy in telling us\n- We’re not playing nice as an ecosystem\n- We’re creating more pain for developers\n- Your interpretation doesn’t matter if no one else builds things the same way!\n\n
- This response really stands out.\n- So much so that it begs reading off the slide\n- You know what? This begs reading a second time...\n
Show of hands...\n\nWho wants this guy’s money?\n
-We’re all leaving money and happy developers on the table\n- because we’re all doing things differently\n\n- Let’s start with how we’re individually sucking\n
- Apigee, Mashery, Twilio, and Foursquare all get honorable mentions here.\n- YOU didn’t.\n- Documentation is key and we all need to do a lot better\n
- These are all frequent complaints\n- Lots of ranty blog posts about each\n- Everyone rolls their own solution\n\n
- Together, we make things even worse\n\n- One of these quotes is so important I had to repeat it from a previous slide.\n
- Not only don’t we play well with each other\n- We assume everyone else’ll be perfect\n- Which leads to cascading problems\n\n- FB photo != Flickr photo != Picasa photo, etc\n\n
- We asked where developer headaches came from\n- They weren’t shy in telling us\n- We’re not playing nice as an ecosystem\n- We’re creating more pain for developers\n- Your interpretation doesn’t matter if no one else builds things the same way!\n\n
- And horror stories\n- And yes, *lots* of Facebook. And twitter.\n\n- (shout) ARE YOU ON THIS SLIDE?\n- Raise your hands if you are!\n- HOPE YOU’RE LISTENING!\n- This is why you’re losing business!\n
- That all feels daunting\n- But we don’t have that far to go\n
- It’s as simple as getting a dialogue going\n- Amongst not just “the right people”\n- But everyone who cares\n- Our developer communities and each other!\n
- And we need to understand we all only play\n- one of many roles in the community\n- We can’t all dictate everything\n
- If we have this talk\n- Standards can evolve\n- Not that we’ll all adopt them\n- But devs can clearly know who the outliers are\n- As opposed to everyone being an outlier\n
- Talk of its own\n- But worthwhile and important\n- A contract with each other\n- So everyone knows what to expect\n
- This doesn’t work if we let people commit and then not follow through\n
- By approaching this as an ecosystem\n- With all the right stakeholders in the conversation\n- We can all turbocharge our businesses and API consumption\n- While leaving developers happier and more engaged\n- We can all win!\n- One final thought:\n
Remember, for 98% of you, your business is what is BEHIND your API, not the API.\n- So let’s clean up all these API disparities so devs can get to through to your business without friction or frustration\n
- Cofounder of YourTrove, the last content API you’ll ever need\n- Here to tell you why your API sucks.\n- But first, a little background\n