SlideShare una empresa de Scribd logo
1 de 34
Why Your API Sucks
                         Business of APIs Conference, NY, 10/19/2011

                         An API developer survey opens Pandora’s Box
                              http://bit.ly/trove-survey-results


                                                       Jesse Emery, Co-Founder
                                                               www.yourtrove.com
                                                                 j@yourtrove.com
                                                                         @ejesse
             #apisuck
10/19/2011
                                                                                   1
We did a survey on API Pain
                It made some waves

                           You can view it here:


                  http://bit.ly/trove-survey-results



10/19/2011
                                                       2
“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/19/2011
                                                              3
Booooring




             It’s no real secret that Facebook’s API is widely loathed

10/19/2011
                                                                         4
10/19/2011
             5
Developers Hate Your API

               “Every integration is its own
             [expletive-deleted] adventure.”


10/19/2011
                                               6
APIs don’t live in a vacuum




10/19/2011
                                           7
APIs don’t live in a vacuum




10/19/2011
                                           8
“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/19/2011
                                                             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 money.”


10/19/2011
                                         10
“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/19/2011
                                          11
10/19/2011
             12
Where else are you losing
                Developers’ $$$?!




10/19/2011
                                         13
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/19/2011
                                                   14
Y U No Update Documentation?????




10/19/2011
                                        15
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/19/2011
                                                         16
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/19/2011
                                                      17
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 or 403.
                     And some 500. This is hell on devs.

   “Different data formats from different services
   for essentially the same data.”
 10/19/2011
                                                     18
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/19/2011
                                                            19
10/19/2011
             20
“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/19/2011
                                                         21
10/19/2011
             22
So let’s solve this. Together.




10/19/2011
                                              23
10/19/2011
             24
More frequent and open
                communications
                   We’re not in a vacuum!




10/19/2011
                                            25
Humbleness
             You might be awesome, but together we make a shitty team




10/19/2011
                                                                        26
Documentation-Driven Design
                Simply: Write and review documentation first, then write code




10/19/2011
                                                                               27
Standards and best practices




10/19/2011
                                            28
Developer Bill of Rights
                 What can they expect from ALL of us?




10/19/2011
                                                        29
Hold our own accountable




10/19/2011
                                        30
Better APIs = Happier Developers =
      Happier Customers = more $$$




10/19/2011
                                         31
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


10/19/2011
                                                                     32
Your Business is NOT your API. It is
     what that API provides access to.
             So fix your API and the ecosystem around it!




10/19/2011
                                                           33
Thank you #BAPI!




               http://bit.ly/trove-survey-results


                                       Jesse Emery, Co-Founder
                                                    www.yourtrove.com
                                                      j@yourtrove.com
                                                              @ejesse

10/19/2011
                                                                        34

Más contenido relacionado

Similar a Why Your API Sucks

What's New on The Facebook Platform, October 2011
What's New on The Facebook Platform, October 2011What's New on The Facebook Platform, October 2011
What's New on The Facebook Platform, October 2011Iskandar Najmuddin
 
BSGO - next generation browser game development with unity3 d 1.5
BSGO - next generation browser game development with unity3 d 1.5BSGO - next generation browser game development with unity3 d 1.5
BSGO - next generation browser game development with unity3 d 1.5Nick Porsche
 
Peter Paul Koch - mobile convention amsterdam
Peter Paul Koch - mobile convention amsterdamPeter Paul Koch - mobile convention amsterdam
Peter Paul Koch - mobile convention amsterdamMobileConventionAmsterdam
 
Mwrc2011 cookbook design patterns
Mwrc2011 cookbook design patternsMwrc2011 cookbook design patterns
Mwrc2011 cookbook design patternsjtimberman
 
Apps vs Browser
Apps vs BrowserApps vs Browser
Apps vs BrowserWunderman
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyTechWell
 
Saying no to native apps - UX Masterclass Copenhagen
Saying no to native apps - UX Masterclass CopenhagenSaying no to native apps - UX Masterclass Copenhagen
Saying no to native apps - UX Masterclass CopenhagenBrian Donohue
 
Building Scalable Systems: an asynchronous approach
Building Scalable Systems: an asynchronous approachBuilding Scalable Systems: an asynchronous approach
Building Scalable Systems: an asynchronous approachTheo Schlossnagle
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)3scale
 
Landmines for Open Source in the Mobile Space
Landmines for Open Source in the Mobile SpaceLandmines for Open Source in the Mobile Space
Landmines for Open Source in the Mobile SpaceRobert Sutor
 
NoTube: Using the Synergy of Broadcast, Internet and Social TV
NoTube: Using the Synergy of Broadcast, Internet and Social TVNoTube: Using the Synergy of Broadcast, Internet and Social TV
NoTube: Using the Synergy of Broadcast, Internet and Social TVLora Aroyo
 
Webinar Mobile ECM Apps with Nuxeo EP
Webinar Mobile ECM Apps with Nuxeo EPWebinar Mobile ECM Apps with Nuxeo EP
Webinar Mobile ECM Apps with Nuxeo EPNuxeo
 
I broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsI broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsBert JW Regeer
 
I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...T. Kim Nguyen
 
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWhat lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWooga
 
Your API is So 2006 - Dreamforce 2011
Your API is So 2006 - Dreamforce 2011Your API is So 2006 - Dreamforce 2011
Your API is So 2006 - Dreamforce 2011Delyn Simons
 
Semantic Annotation and Search for Resources in the Next Generation Web
Semantic Annotation and Search for Resources in the Next Generation WebSemantic Annotation and Search for Resources in the Next Generation Web
Semantic Annotation and Search for Resources in the Next Generation Webajithranabahu
 
Usability: what's hot what's not
Usability: what's hot what's notUsability: what's hot what's not
Usability: what's hot what's notBen Showers
 
Native, Web App, or Hybrid: Which Should You Choose?
Native, Web App, or Hybrid: Which Should You Choose?Native, Web App, or Hybrid: Which Should You Choose?
Native, Web App, or Hybrid: Which Should You Choose?Softweb Solutions
 

Similar a Why Your API Sucks (20)

What's New on The Facebook Platform, October 2011
What's New on The Facebook Platform, October 2011What's New on The Facebook Platform, October 2011
What's New on The Facebook Platform, October 2011
 
BSGO - next generation browser game development with unity3 d 1.5
BSGO - next generation browser game development with unity3 d 1.5BSGO - next generation browser game development with unity3 d 1.5
BSGO - next generation browser game development with unity3 d 1.5
 
Peter Paul Koch - mobile convention amsterdam
Peter Paul Koch - mobile convention amsterdamPeter Paul Koch - mobile convention amsterdam
Peter Paul Koch - mobile convention amsterdam
 
Mwrc2011 cookbook design patterns
Mwrc2011 cookbook design patternsMwrc2011 cookbook design patterns
Mwrc2011 cookbook design patterns
 
Apps vs Browser
Apps vs BrowserApps vs Browser
Apps vs Browser
 
Build Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test StrategyBuild Your Mobile App Quality and Test Strategy
Build Your Mobile App Quality and Test Strategy
 
Saying no to native apps - UX Masterclass Copenhagen
Saying no to native apps - UX Masterclass CopenhagenSaying no to native apps - UX Masterclass Copenhagen
Saying no to native apps - UX Masterclass Copenhagen
 
Building Scalable Systems: an asynchronous approach
Building Scalable Systems: an asynchronous approachBuilding Scalable Systems: an asynchronous approach
Building Scalable Systems: an asynchronous approach
 
Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)Copyright, Open Source and APIs (towards an Interface Commons)
Copyright, Open Source and APIs (towards an Interface Commons)
 
Landmines for Open Source in the Mobile Space
Landmines for Open Source in the Mobile SpaceLandmines for Open Source in the Mobile Space
Landmines for Open Source in the Mobile Space
 
NoTube: Using the Synergy of Broadcast, Internet and Social TV
NoTube: Using the Synergy of Broadcast, Internet and Social TVNoTube: Using the Synergy of Broadcast, Internet and Social TV
NoTube: Using the Synergy of Broadcast, Internet and Social TV
 
Webinar Mobile ECM Apps with Nuxeo EP
Webinar Mobile ECM Apps with Nuxeo EPWebinar Mobile ECM Apps with Nuxeo EP
Webinar Mobile ECM Apps with Nuxeo EP
 
I broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projectsI broke what?!??!? Taking over maintenance on well loved projects
I broke what?!??!? Taking over maintenance on well loved projects
 
I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...I broke what? Taking over maintenance on existing (well loved) projects, by B...
I broke what? Taking over maintenance on existing (well loved) projects, by B...
 
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof SzafranekWhat lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
What lies ahead of HTML5_Ooop Munich 2013_Krzysztof Szafranek
 
What Lies Ahead for HTML5
What Lies Ahead for HTML5What Lies Ahead for HTML5
What Lies Ahead for HTML5
 
Your API is So 2006 - Dreamforce 2011
Your API is So 2006 - Dreamforce 2011Your API is So 2006 - Dreamforce 2011
Your API is So 2006 - Dreamforce 2011
 
Semantic Annotation and Search for Resources in the Next Generation Web
Semantic Annotation and Search for Resources in the Next Generation WebSemantic Annotation and Search for Resources in the Next Generation Web
Semantic Annotation and Search for Resources in the Next Generation Web
 
Usability: what's hot what's not
Usability: what's hot what's notUsability: what's hot what's not
Usability: what's hot what's not
 
Native, Web App, or Hybrid: Which Should You Choose?
Native, Web App, or Hybrid: Which Should You Choose?Native, Web App, or Hybrid: Which Should You Choose?
Native, Web App, or Hybrid: Which Should You Choose?
 

Último

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Último (20)

Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Why Your API Sucks

  • 1. Why Your API Sucks Business of APIs Conference, NY, 10/19/2011 An API developer survey opens Pandora’s Box http://bit.ly/trove-survey-results Jesse Emery, Co-Founder www.yourtrove.com j@yourtrove.com @ejesse #apisuck 10/19/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/19/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/19/2011 3
  • 4. Booooring It’s no real secret that Facebook’s API is widely loathed 10/19/2011 4
  • 6. Developers Hate Your API “Every integration is its own [expletive-deleted] adventure.” 10/19/2011 6
  • 7. APIs don’t live in a vacuum 10/19/2011 7
  • 8. APIs don’t live in a vacuum 10/19/2011 8
  • 9. “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/19/2011 9
  • 10. “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/19/2011 10
  • 11. “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/19/2011 11
  • 13. Where else are you losing Developers’ $$$?! 10/19/2011 13
  • 14. 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/19/2011 14
  • 15. Y U No Update Documentation????? 10/19/2011 15
  • 16. 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/19/2011 16
  • 17. 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/19/2011 17
  • 18. 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 or 403. And some 500. This is hell on devs. “Different data formats from different services for essentially the same data.” 10/19/2011 18
  • 19. 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/19/2011 19
  • 21. “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/19/2011 21
  • 23. So let’s solve this. Together. 10/19/2011 23
  • 25. More frequent and open communications We’re not in a vacuum! 10/19/2011 25
  • 26. Humbleness You might be awesome, but together we make a shitty team 10/19/2011 26
  • 27. Documentation-Driven Design Simply: Write and review documentation first, then write code 10/19/2011 27
  • 28. Standards and best practices 10/19/2011 28
  • 29. Developer Bill of Rights What can they expect from ALL of us? 10/19/2011 29
  • 30. Hold our own accountable 10/19/2011 30
  • 31. Better APIs = Happier Developers = Happier Customers = more $$$ 10/19/2011 31
  • 32. 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 10/19/2011 32
  • 33. Your Business is NOT your API. It is what that API provides access to. So fix your API and the ecosystem around it! 10/19/2011 33
  • 34. Thank you #BAPI! http://bit.ly/trove-survey-results Jesse Emery, Co-Founder www.yourtrove.com j@yourtrove.com @ejesse 10/19/2011 34

Notas del editor

  1. - 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
  2. - 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
  3. - 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
  4. - 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
  5. \n
  6. - 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
  7. - Devs aren’t just using your API\n- You’re part of a suite\n\n
  8. - Devs aren’t just using your API\n- You’re part of a suite\n\n
  9. - 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
  10. - 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
  11. Show of hands...\n\nWho wants this guy’s money?\n
  12. \n
  13. - We’re all leaving money and happy developers on the table through inconsistency\n- and because we’re all doing things differently\n\n- Let’s start with how else we’re individually sucking\n
  14. - 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\n
  15. - Check out “Documentation Driven Design”\n\n
  16. - These are all frequent complaints\n- Lots of ranty blog posts about each\n- Everyone rolls their own solution\n\n
  17. - 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
  18. - 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
  19. - 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
  20. \n
  21. - 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
  22. \n
  23. - That all feels daunting\n- But we don’t have that far to go\n
  24. \n
  25. - 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
  26. - And we need to understand we all only play one of many roles in the community\n- We can’t all dictate everything\n
  27. - Important for APIs in particular\n- More and more people advocating, Django, Twilio\n
  28. - 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
  29. - Talk of its own\n- But worthwhile and important\n- A contract with each other\n- So everyone knows what to expect\n
  30. - This doesn’t work if we let people commit and then not follow through\n
  31. \n\n
  32. - 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
  33. 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
  34. - Thank you!\n