Your SlideShare is downloading. ×
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Avoiding API Waterfalls
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Avoiding API Waterfalls

2,960

Published on

Published in: Technology
0 Comments
8 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,960
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
31
Comments
0
Likes
8
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. AVOIDING WATERFALLS Jakub Nesetril founder & CEO of ApiaryTuesday, December 4, 12
  • 2. apiary.io GitHub for APIsTuesday, December 4, 12
  • 3. WHY WE DO THINGS • documentation and tooling, not architecture • man-years of API infrastructure work • companies & teams re-inventing the wheelTuesday, December 4, 12
  • 4. 3 PROBLEMSTuesday, December 4, 12
  • 5. API DESIGNTuesday, December 4, 12
  • 6. WE START WITH WHITEBOARDTuesday, December 4, 12
  • 7. THEN CODE THE DESIGNTuesday, December 4, 12
  • 8. OFFER IT TO CUSTOMERSTuesday, December 4, 12
  • 9. AND ALL FAILS, BADLYTuesday, December 4, 12
  • 10. WHERE DID WE GO WRONG?Tuesday, December 4, 12
  • 11. WATERFALL PROCESSTuesday, December 4, 12
  • 12. API DESIGN REIMAGINED HOW CAN WE GO AGILE?Tuesday, December 4, 12
  • 13. MAKE A DESIGN FIRSTTuesday, December 4, 12
  • 14. BUT WRITE IT DOWN FOR ALL TO USE HOST: http://api.twitter.com/ --- Twitter API 3.0 --- --- Welcome to our API. Comments support Markdown syntax --- -- Retrieve Tweets -- GET /tweets > Accept: application/json < 200 < Content-Type: application/json { "items": [ { "url": "/feed", "range":"2ZY48XPZ", "quantity": 1, "name": "New socks", "price": 1.25 } ] }Tuesday, December 4, 12
  • 15. OFFER A MOCK SERVERTuesday, December 4, 12
  • 16. INVOLVE THE CUSTOMERTuesday, December 4, 12
  • 17. CODE WITH SPEC TESTSTuesday, December 4, 12
  • 18. Mock > Use > Implement apiary.ioTuesday, December 4, 12
  • 19. DOCUMENTATIONTuesday, December 4, 12
  • 20. #2: DOCUMENTATION • how do I make an HTTP call? • try to follow documentation but API behaves differently • is it invalid? is it outdated? am I doing it wrong?Tuesday, December 4, 12
  • 21. DOCUMENTATION REIMAGINEDTuesday, December 4, 12
  • 22. DOCUMENTATION • includes runnable code examples (NOT API console) • is backed up by automated tests (never out of date)Tuesday, December 4, 12
  • 23. Tuesday, December 4, 12
  • 24. SUPPORTTuesday, December 4, 12
  • 25. #3: SUPPORT • my API calls are failing, no idea why • contacting customer support (that caters to shoe customers) • bumping my head against first-tier support for days until I get connected to developers • by that time, debug information is lost, logs are rotated, new product version is deployed…Tuesday, December 4, 12
  • 26. SUPPORT REIMAGINEDTuesday, December 4, 12
  • 27. SUPPORT • includes self-service debugger • API support requests routed directly to devs with debugging information includedTuesday, December 4, 12
  • 28. Tuesday, December 4, 12
  • 29. Mock > Use > Implement Automated Documentation Testing apiary.ioTuesday, December 4, 12
  • 30. COME HELP US http://github.com/apiaryio http://support.apiary.io/Tuesday, December 4, 12
  • 31. Q&A E-MAIL jakub@apiary.io TWITTER @apiaryioTuesday, December 4, 12
  • 32. PHOTO CREDITS http://www.flickr.com/photos/ironrodart/4308675209/sizes/o/ http://www.flickr.com/photos/schlosi/6153707178/sizes/l/ http://www.flickr.com/photos/72153088@N08/6510934443/sizes/l/ http://www.flickr.com/photos/psd/3470234703/sizes/l/ http://www.flickr.com/photos/code_martial/2501920341/sizes/l/ http://www.flickr.com/photos/weesen/3589267112/sizes/l/ http://www.flickr.com/photos/weesen/3588454913/sizes/l/ http://www.flickr.com/photos/weesen/3589258380/sizes/l/ http://www.flickr.com/photos/polishsausagequeen/2178265710/ http://www.flickr.com/photos/stupidmommy/2649444581/sizes/z/Tuesday, December 4, 12

×