Your SlideShare is downloading. ×
Harmony in API Design
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

Harmony in API Design

1,272
views

Published on

My talk at API Strategy & Practice in San Francisco

My talk at API Strategy & Practice in San Francisco

Published in: Technology, Education

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,272
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
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. Harmony in API Design jakub@apiary.io
  • 2. What is an API?
  • 3. API is UI to Data
  • 4. API is UI to Data
  • 5. API is UI to Data User Experience
  • 6. API is UI to Data Design User Experience
  • 7. API is UI to Data Emotions Design User Experience
  • 8. API is UI to Data Emotions Design User Experience Subjective
  • 9. API is UI to Data Emotions Design User Experience Subjective Culturally Dependent
  • 10. API is UI to Data Emotions Simplicity Design User Experience Subjective Culturally Dependent
  • 11. API is UI to Data Emotions Simplicity Design Productivity User Experience Subjective Culturally Dependent
  • 12. API is UI to Data Emotions Conversion Rates Simplicity Design Productivity User Experience Subjective Culturally Dependent
  • 13. API is UI to Data Emotions Conversion Rates Simplicity Design Productivity User Experience Usability Studies Subjective Culturally Dependent
  • 14. API is UI to Data Emotions Conversion Rates Simplicity Design Productivity User Experience Hackathons Subjective Culturally Dependent
  • 15. Nobody thinks THEIR design sucks
  • 16. Provider Consumer
  • 17. Java Provider Rails Scala Erlang Consumer
  • 18. Java jQuery Provider Consumer Rails ObjC PHP Scala Erlang
  • 19. Validation Uptime Java Maintenance Provider Caching Rails Scala Security jQuery Consumer ObjC Versioning Erlang PHP
  • 20. Latency Validation Uptime Java Maintenance Provider Caching Rails Scala Security Versioning Erlang Can It Be Done? TTFHW jQuery Consumer Debugging ObjC PHP Example Support
  • 21. So?
  • 22. 1. Start With a Wireframe • a design intent • usually an API description language • at Apiary we use API Blueprint
  • 23. 2. Involve Your Customers • find your early-adopters before you code • create an API mock that they can use • fork/pull-request
  • 24. 3. Have Great Documentation • generated automatically • must be exhaustive and up-to-date • your code is automatically tested; so must your documentation
  • 25. 4. Separate Contract from Implementation
  • 26. Summary • API is UI for Data & Interface between cultures • Involve your customers early • Automate
  • 27. Thank You @apiaryio http://apiary.io/ ! @jakubnesetril