• Like

Succeed with a Developer-Centric API Strategy - Ronnie Mitra, Principal API Architect, Layer 7 @ Apps World

  • 588 views
Uploaded on

DX as the key to building a great API …

DX as the key to building a great API
Going beyond usability and simplicity in design
Considerations for the API lifecycle
Treating your API like a product

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
588
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
15
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
  • It’s tough when you are faced with that blank sheet of paper
  • Lots of methodologies and terminology
  • Coined in the 1980sBut rooted in the design ideas of industrial age products and how users interact with technology
  • Lots of methodologies and terminology
  • We are not simply producing products that perform a funciton, but we consider how people (or users) will interact with the product.
  • We are not simply producing products that perform a funciton, but we consider how people (or users) will interact with the product.
  • On our own we could create an API in 20 minutesPut us together and it would be much more difficult
  • What is this thing that we are exposing? What is the data or service that we are making available? What features or functions are we providing?
  • What is this thing that we are exposing? What is the data or service that we are making available? What features or functions are we providing?
  • What is this thing that we are exposing? What is the data or service that we are making available? What features or functions are we providing?
  • What is this thing that we are exposing? What is the data or service that we are making available? What features or functions are we providing?
  • What is this thing that we are exposing? What is the data or service that we are making available? What features or functions are we providing?
  • Think: greater than the sum of its parts
  • But we need to expand the focus to include our user, the developer
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • Different social conventions.Another form of this, is the question of RESTfulness.
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • [there was something else I realized after this pres. for Reason #4. – try to remember]Talk about when API dsigners don’t botyher with usability – selling to enterprises. (or do I leave this till later?)
  • APIs are all about connectivity.
  • APIs are all about connectivity.
  • Designer mental model vs. user mental model
  • Designer mental model vs. user mental model
  • APIs are all about connectivity.
  • Make bold choices
  • Make bold choicesGoals should correlate to bigger strategy

Transcript

  • 1. Succeed with a Developer-centric API Strategy Ronnie Mitra Principal API Architect – Europe
  • 2. API Management on-premise virtual cloud
  • 3. Strategy Identify goal(s) Define activities that support the goal
  • 4. Your API is not your strategy
  • 5. Your API enables your strategy
  • 6. Revenue Source Consumer Reach Marketing Innovation Integration Light Bulb designed by Jean-Philippe Cabaroc from The Noun Project
  • 7. API Strategy Identify goal Define activities that support the goal
  • 8. Priority: Lower Cost Priority: Increased Adoption
  • 9. Lots of Dials Developer Outreach Interface Design Marketing Support Visibility Control Registration Change Management
  • 10. Good strategy involves making decisions
  • 11. My API Strategy http://www.flickr.com/photos/nirufe/3469696707
  • 12. A developer-centric approach will help you make decisions.
  • 13. Product Design
  • 14. Bill Moggridge Interaction Design
  • 15. Usability Human-Computer-Interaction User Experience Design Goal Oriented Design
  • 16. http://www.flickr.com/photos/58754750@N08/5541472392/
  • 17. A user-centric view improves product design.
  • 18. A developer-centric view improves API design.
  • 19. three forms of design
  • 20. Experience Usability Functionality
  • 21. Experience Usability Functionality
  • 22. What does the API do? Where is it located?
  • 23. The stereotypical SOA approach Functionality focused Everything is a service Service catalog Make people use it
  • 24. Experience Usability Functionality
  • 25. How do I use the API? How easy is it for me to accomplish my own goals? How much of my time do I need to commit?
  • 26. The API Revolution Developer focused Deployed in competitive markets
  • 27. Don’t forget: Usefulness > Usability
  • 28. Experience Usability Functionality
  • 29. How does using the API make me feel?
  • 30. Developer Experience (DX): 1. the sum of interactions between the developer and an API owner
  • 31. Developer Experience (DX): 1. the sum of interactions between the developer and an API owner 2. the emotive impact of API usage on the developer
  • 32. sometimes experience can trump usability
  • 33. An API Scenario….
  • 34. I want to add weather forecast data to my mobile app. An API should help! http://www.southparkstudios.co.uk/avatar
  • 35. I’m having trouble finding an API that does what I want. http://www.southparkstudios.co.uk/avatar
  • 36. the registration process is a nightmare! http://www.southparkstudios.co.uk/avatar
  • 37. What is XML-RPC? I don’t even have an XML parser! http://www.southparkstudios.co.uk/avatar
  • 38. Why is everything in Fahrenheit!? http://www.southparkstudios.co.uk/avatar
  • 39. small annoyances add up to create a poor experience
  • 40. API Interactions
  • 41. Dev Portal API
  • 42. Dev Portal API
  • 43. is a developer-centric strategy obvious?
  • 44. why is it difficult to design usable APIs?
  • 45. We project our own perspective. We project our own biases. We make bad assumptions We lack the time, money or incentive.
  • 46. Reason #1 We project our own perspective.
  • 47. External Perspective Internal Perspective
  • 48. Reason #2 We project our own biases.
  • 49. Never use SOAP? Why?
  • 50. Consider keyboards…
  • 51. http://www.flickr.com/photos/yvettemn/139890573/
  • 52. http://www.flickr.com/photos/jonathanpberger/7126054997/
  • 53. http://www.flickr.com/photos/novemberborn/286773981/
  • 54. OR
  • 55. It doesn’t matter that you don’t like SOAP.
  • 56. What matters is what your developer base thinks! (and what the business objective is)
  • 57. Reason #3 We make bad assumptions.
  • 58. API publishers are also developers.
  • 59. “I built a mobile app once.” may not qualify you to understand your mobile developers
  • 60. Reason #4 We lack the time, money or incentive for good design
  • 61. “Best practices”, patterns and references become shortcuts
  • 62. We project our own perspective. We project our own biases. We make bad assumptions We lack the time, money or incentive.
  • 63. overcoming the usability challenge
  • 64. developer-centric design requires effort and diligence.
  • 65. Mental Models
  • 66. Mental Models
  • 67. Design with the developer in mind.
  • 68. who are our users?
  • 69. Josh I blog, I tweet, I code and I swear. Age: 25 Occupation: Web/Mobile Developer Technical Profile: 7 years experience, hackathon
  • 70. why are we always building APIs for Josh?
  • 71. Tony I’m never leaving this company. Age: 45 Occupation: Enterprise Developer Technical Profile: 27 years industry experience, skilled in Java, VB, COBOL.
  • 72. You can’t design for usability if you don’t know who is using your API
  • 73. Design the API Prototype Design Observe
  • 74. try using your API from a developer perspective
  • 75. + =
  • 76. API Usability Dev Portal API API Gateway API
  • 77. good API design is user-centric
  • 78. is good security user-centric?
  • 79. practical API design becomes a series of tradeoffs
  • 80. What keeps API owners up at night… Brand Control Data Security Threat Prevention Resource Protection Availability
  • 81. the API strategy challenge – balancing control and usability reduce usability impact (for our user) focus on experience (sum of interactions) use just as much security as we need
  • 82. API Security Dev Portal API API Gateway API
  • 83. API Management Dev Portal API API Gateway API
  • 84. API Management on-premise virtual cloud
  • 85. Establish Business Goals Establish API Goals Identify Target Users Design for your users
  • 86. Succeed with a Developer-centric API Strategy Ronnie Mitra Principal API Architect – Europe