Upgrade to Pro — share decks privately, control downloads, hide ads and more …

UX Research Methods for API Design

UX Research Methods for API Design

O'Reilly Fluent Conference 2014

Jeremiah Lee

March 13, 2014
Tweet

More Decks by Jeremiah Lee

Other Decks in Programming

Transcript

  1. UX Research Methods for API Design Jeremiah Lee • Fluent

    Conference • 2014-03-13 @Jeremiah @JeremiahLee
  2. 5 Common Style of Design — Jared Spool, User Interface

    Engineering Research Costs Time Resources initial focus on complexity and ease of use developing for users beyond ourselves designing something we've never designed need to fill the gaps between activities Unintentional Self Genius Activity Focused Experienced Focused
  3. 5 Common Style of Design — Jared Spool, User Interface

    Engineering Research Costs Time Resources initial focus on complexity and ease of use developing for users beyond ourselves designing something we've never designed need to fill the gaps between activities Unintentional Self Genius Activity Focused Experienced Focused
  4. Today, let’s talk about… 1. Personas 2. Passive usability testing

    with data 3. Active usability testing with real, live people
  5. Personas • Are descriptive representations of the people who use

    your product and the context they operate in • They make assumptions about users visible • They provide a frame of reference for your team • Validate with user interviews and surveys
  6. Persona Context • Relationship with product • Platform, programming language

    • Experience / skill level • English proficiency • Motivation • Resources • Role in the organization
  7. Who are my users? BENNETT
 backend web developer, prefers Java,

    CS degree from UC Davis, full time developer, advocated to use our product RACHEL web designer/developer, prefers JavaScript/Node, no degree but strong developer, had no input on using our product JANE
 iOS developer, "unicorn" designer and developer, self-taught, moonlighting on her own projects, makes recommendations 
 on products ANDY
 self-proclaimed geek, comes from IT background, likes to script things together using Python, hobbyist hacker
  8. Passive Usability Testing • Examine support requests • When are

    they asking for help? • Frequently asked questions • Frequently misunderstood concepts • Frequently hit errors
  9. Passive Usability Testing • Examine support requests • API usage

    during an integration • How long between app registration and first request? • What are the first requests and first errors? • How long before going to production?
  10. Passive Usability Testing • Examine support requests • API usage

    during an integration • API usage after an integration • Detect based on IP address, user auth, requests increase • What endpoints are being used? How are they used? • Anti-pattern detection based on request volume or type
  11. Active Usability Testing • Existing APIs: “Dumb Pair Programmer” •

    With a user you trust in their natural environment • Silently observe as they work: • Interactions with team: how do they talk about you? • How do you fit into their application? • How does the user approach the integration with you? • What problems do they encounter? • How do they test the integration?
  12. Active Usability Testing • Existing APIs: “Dumb Pair Programmer” •

    New APIs: Throw-away prototypes • Create a mock API: just enough functionality to be used • Document it: reference docs, just enough conceptual info • Create a well defined project ready for an integration • Hire an outsider who doesn’t have insider assumptions • Have user record screen, face, voice with Silverback • Have user commit to Git at regular interval
  13. Active Usability Testing • Existing APIs: “Dumb Pair Programmer” •

    New APIs: Throw-away prototypes • Analyze the data for moments of emotional response • Happy • Sad • Confident • Frustrated • Confused
  14. Active Usability Testing • Existing APIs: “Dumb Pair Programmer” •

    New APIs: Throw-away prototypes • Analyze the data for moments of emotional response • How long did it take to accomplish tasks? • What worked? What didn’t work? • How can the good things be more affirming? • How can the bad things be prevented? • How can the situation be corrected better?
  15. Thank you for your time. ! More content available at


    http://dx.jeremiahlee.com ! ! ! ! Please support the
 Electronic Frontier Foundation
  16. Market != UX Research Market Research UX Research What people

    say What people do What people will buy How people use a product Demographics Ethnographics Large sample sizes Small sample sizes Broad insight Deep, focused insight