O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Principal API Architect, Layer 7

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Próximos SlideShares
What Makes a Great Open API?
What Makes a Great Open API?
Carregando em…3
×

Confira estes a seguir

1 de 75 Anúncio

Mais Conteúdo rRelacionado

Diapositivos para si (18)

Anúncio

Semelhante a Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Principal API Architect, Layer 7 (20)

Mais de CA API Management (20)

Anúncio

Mais recentes (20)

Developers are People Too! Building a DX-Based API Strategy Ronnie Mitra, Principal API Architect, Layer 7

  1. 1. Developers are People Too! Ronnie Mitra @mitraman rmitra@layer7tech.com
  2. 2. Developers are People Too User Experience  We continually have experiences as we use products in our day to day lives. Theese experiences can be both positive or negative and they shape the way we percieve the products that we that we use.  User Experience or UX based design invovles creating experiences that are positive for the user. We can apply this idea to the world of APIs and gain a positive outcome.  Of course in our world developers are our users, so we can be more specific and describe… slide 12 of 142
  3. 3. Developers are People Too Developer Experience! slide 13 of 142
  4. 4. Developers are People Too Ronnie Mitra  I work for Layer 7 - A CA technologies company - I am an API Architect in Layer 7’s API Academy - I was born in Toronto, Canada (remove this line)  I now live in London, England slide 2 of 142
  5. 5. Was that uncomfortable? Why?
  6. 6. Aesthetics
  7. 7. Interaction
  8. 8. Structure
  9. 9. a poor experience overall
  10. 10. regardless of the content
  11. 11. An API Scenario….
  12. 12. I want to add weather forecast data to my mobile app. An API should help! http://www.southparkstudios.co.uk/avatar
  13. 13. I’m having trouble finding an API that does what I want. http://www.southparkstudios.co.uk/avatar
  14. 14. the registration process is a nightmare! http://www.southparkstudios.co.uk/avatar
  15. 15. What is XML-RPC? I don’t even have an XML parser! http://www.southparkstudios.co.uk/avatar
  16. 16. http://www.southparkstudios.co.uk/avatar Why is everything in fahrenheit!?
  17. 17. small annoyances add up to create a poor experience
  18. 18. designing an API is easy effective API design is difficult
  19. 19. effective == meeting our design and business goals
  20. 20. Priority: Lower Cost Priority: Increased Adoption
  21. 21. http://www.flickr.com/photos/nirufe/3469696707 My API Style? XML? JSON? Representations? Resources? Security? Streaming?
  22. 22. A user experience based approach can help
  23. 23. Functionality Usability Experience
  24. 24. Experience Usability Functionality
  25. 25. What does the API do? Where is it located? How reliable is the implementation?
  26. 26. The stereotypical SOA approach Functionality focused Everything is a service Service catalog Make people use it
  27. 27. Experience Functionality Usability
  28. 28. 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?
  29. 29. The API Revolution Developer focused Deployed in competitive markets
  30. 30. Don’t forget: Usefulness > Usability
  31. 31. Functionality Usability Experience
  32. 32. How does using the API make me feel?
  33. 33. Developer Experience (DX): 1. the sum of interactions between the developer and an API owner
  34. 34. 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
  35. 35. Understanding API Interactions
  36. 36. API functionality
  37. 37. Portal API usability
  38. 38. API experience Portal
  39. 39. API
  40. 40. API
  41. 41. who are our users?
  42. 42. Josh I blog, I tweet, I code and I swear. Age: 25 Occupation: Web/Mobile Developer Technical Profile: 7 years experience, hackathon champion, JavaScript and objective-c expert. Hates XML.
  43. 43. why are we always building APIs for Josh?
  44. 44. Tony I’m never leaving this company. Age: 45 Occupation: Enterprise Developer Technical Profile: 27 years industry experience, skilled in Java, VB, COBOL. Knows the backend system better than you do.
  45. 45. You can’t design for usability if you don’t know who is using your API
  46. 46. Human Computer Interaction
  47. 47. source: Brad A. Myers. "A Brief History of Human Computer Interaction Technology." ACM interactions. Vol. 5, no. 2, March, 1998. pp. 44-54.
  48. 48. Where is our Fitts’ Law?
  49. 49. Are we just feeling around in the dark?
  50. 50. We have lots of usability and UX guidance
  51. 51. We have API usability theory and guidance
  52. 52. Steven Clarke: Describing and Measuring API Usability with the Cognitive Dimensions Abstraction level Learning style Working framework Work-step unit Progressive evaluation Premature commitment Penetrability API elaboration API viscosity Consistency Role expressiveness Domain correspondence
  53. 53. Usability Aspects of a Web API (a work in progress) Task : Invocation Ratio Structure Navigation Developer Stack Size Time to First Call Error Handling Number of Decisions Learnability Vocabulary
  54. 54. Task:Invocation Ratio How many calls does it take for the developer to accomplish their desired task?
  55. 55. Structure How deep is the required data located? What is the signal to noise ratio?
  56. 56. Navigation How difficult is it to move from one result to another? How difficult is it to locate a required datum?
  57. 57. Developer Stack Size how many new components are needed?
  58. 58. Time to First Call How quickly can a new user make their first API call?
  59. 59. Errors Where are they? How difficult are they to fix? What is the nature of the error? (unpredicted result, invalid input, out of sequence, etc…)
  60. 60. Vocabulary How many new concepts, terms, labels or keywords must be learned before an API can be successfully invoked.
  61. 61. Experience Aspects of an API (a work in progress) Engagement Pleasure Familiarity Trust Safety
  62. 62. + =
  63. 63. Design the API Establish Business Goals Identify Design Goals and System Constraints Identify Target Users Define Interactions
  64. 64. Prototype Observe Design Design the API
  65. 65. DX is not a feature
  66. 66. understanding your audience is the key to understanding their experience
  67. 67. design APIs for people not machines
  68. 68. API Management virtual cloudon-premise
  69. 69. Layer 7 Demonstration Tomorrow 10:50 Katrinebergssalen Want to see our products in action?
  70. 70. Developers are People Too! Ronnie Mitra @mitraman rmitra@layer7tech.com

Notas do Editor

  • On our own we could create an API in 20 minutesPut us together and it would be much more difficult
  • 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?
  • We often focus on the interoperability between a client application and a server (engineering a solution)
  • But we need to expand the focus to include our user, the developer
  • But we need to expand the focus to include our user, the developer
  • Card applied fits’ law to empircally determine which was the best interface.Supporting science
  • Clarke works on Visual studio. He applied a framework from the IDE domain to measure usability of APIs
  • Make bold choices
  • Make bold choices

×