0
The Developer Experience	         WHAT IT IS	             	      WHY IT MATTERS	             	   HOW TO MAKE IT NOT SUCK  ...
User Experience	                    	“The sum of all interactions and events, both positive and negative, between a       ...
User Experience	   Do I want to use it?                      	    How do I sign up?                    	  How do I get sta...
DO I WANT TO USE IT?
HOW DO I SIGN UP?
HOW DO I SIGN UP?
HOW DO I GET STARTED?
HOW DO I USE IT?
HOW DO I GET HELP?
DEVELOPER EXPERIENCE	                    	“The sum of all interactions and events, both positive and negative, between a  ...
DEVELOPER EXPERIENCE	       Do I want to use it?                          	        How do I sign up?                      ...
DO I WANT TO USE IT?
HOW DO I SIGN UP?
HOW DO I GET STARTED?
HOW DO I USE IT?
HOW DO I GET HELP?
why should you care?
Who are you?	           Developer Experience	               (Library, Tool, API, ...)	PROVIDERS	                          ...
...who am I?	Childhood	             University	                    hood	             Now	               2002	             ...
why does DX matter?	                Bad Experience                             	                        I have to use X.	B...
why does DX matter?	                Good Experience                              	       I like to use X.	Innovative Usage...
let’s break it down...
Do I want to use it?
Does it have the features I need?                                     	Documentation	        Interactive Explorer         ...
Can I safely build a business on top of it?                                          	  Licensing          	              ...
Case Studies
How do I sign up?
How do I sign up?                      	Best answer:	 No signup!	 No key!
Automated Key Signup
Usage Dashboard
How do I get started?
Downloads for Every Environment
Client Libraries for Every Language
“Hello World”	(From 0 to 60 in 15 minutes)
How do I use it?                   	How do I learn how to use it?                            	     Do I enjoy using it?   ...
How do I learn how to use it?                               	        Documentation	 Comprehensive	      Easy to Navigate	R...
Documentation	                       should be	 Comprehensive	      Every method, parameter, return value, defaults,implem...
Documentation	     should include both	Reference  Guide
Documentation	        should include	 Runnable Code
Documentation	 should be	 Easy   to Navigate
Documentation	 should be	 Easy   to Search
Documentation	 should be	 Easy   to Search	                                on Google, too
Do I enjoy using it?                             	          API Design	Familiarity	      Compatibility	 Simplicity	      D...
API Design:	 HTTP	   Familiarity	          Compatibility	   Use standards	          Support both	(when it makes sense)	   ...
How do I get help?
Forum	Email  Feeds Stats  Badges	 !Spam
Issue Tracker	    Comments           	         Votes	 Search	Status Categories	     	               Notification
THE EXPERIENCE CURVE
THE FEEDBACK LOOP      ..should be infinite..
Feedback Forms
Surveys	QT          Mozilla Add-Ons SDK	   Blackboard API Survey	Survey
Usability Testing	               Did you complete the task? 	               How hard was it?	               	             ...
Paying Attention	  Twitter	                     Conference Talks	Blog posts	               Google Alerts
MAKEOVER TIME!
Google Maps API	              v2               	                       v3                                          	      ...
ZeptoJS
NOW WHAT?
providers: 	                        1. Care                              	I                      2. Prioritize            ...
CONSUMERS	                               Thanks!                                     	It’d be great if you     changed X. ...
The Developer Experience	                       IT MATTERS	                            	                 LETS MAKE IT NOT ...
Upcoming SlideShare
Loading in...5
×

The Developer Experience

1,926

Published on

We all know what “user experience” is and we know that it’s important. But we rarely talk about the “developer experience” - what we all go through each time we try to use a developer tool, library, or API. How do we decide what tool to use? Is it easy to integrate with our development environment? How flexible is the API? Where do we go when something goes wrong? Those are the sort of questions that we can ask to understand what it’s like for a developer to use a product - and where it can be improved. Whether you simply use developer products or you actually build one yourself, you should walk away from this talk with ideas on how to make a great developer experience - and why it matters.

Published in: Technology, Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,926
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "The Developer Experience"

  1. 1. The Developer Experience WHAT IT IS WHY IT MATTERS HOW TO MAKE IT NOT SUCK twitter.com/ pamelafox.org @pamelafox pamelafox@ http:// gmail.com
  2. 2. User Experience “The sum of all interactions and events, both positive and negative, between a user and a web site.” AKA “bla bla bla”
  3. 3. User Experience Do I want to use it? How do I sign up? How do I get started? How do I use it? How do I get help?
  4. 4. DO I WANT TO USE IT?
  5. 5. HOW DO I SIGN UP?
  6. 6. HOW DO I SIGN UP?
  7. 7. HOW DO I GET STARTED?
  8. 8. HOW DO I USE IT?
  9. 9. HOW DO I GET HELP?
  10. 10. DEVELOPER EXPERIENCE “The sum of all interactions and events, both positive and negative, between a developer and a library, tool, or API.”
  11. 11. DEVELOPER EXPERIENCE Do I want to use it? How do I sign up? How do I get started? How do I use it? How do I get help?
  12. 12. DO I WANT TO USE IT?
  13. 13. HOW DO I SIGN UP?
  14. 14. HOW DO I GET STARTED?
  15. 15. HOW DO I USE IT?
  16. 16. HOW DO I GET HELP?
  17. 17. why should you care?
  18. 18. Who are you? Developer Experience (Library, Tool, API, ...) PROVIDERS CONSUMERS
  19. 19. ...who am I? Childhood University hood Now 2002 2006 2011 CONSUMER PROVIDER CONSUMER
  20. 20. why does DX matter? Bad Experience I have to use X. Bare Minimum Usage Low Barrier for Leaving
  21. 21. why does DX matter? Good Experience I like to use X. Innovative Usage External Evangelism
  22. 22. let’s break it down...
  23. 23. Do I want to use it?
  24. 24. Does it have the features I need? Documentation Interactive Explorer
  25. 25. Can I safely build a business on top of it? Licensing Pricing Stability
  26. 26. Case Studies
  27. 27. How do I sign up?
  28. 28. How do I sign up? Best answer: No signup! No key!
  29. 29. Automated Key Signup
  30. 30. Usage Dashboard
  31. 31. How do I get started?
  32. 32. Downloads for Every Environment
  33. 33. Client Libraries for Every Language
  34. 34. “Hello World” (From 0 to 60 in 15 minutes)
  35. 35. How do I use it? How do I learn how to use it? Do I enjoy using it?
  36. 36. How do I learn how to use it? Documentation Comprehensive Easy to Navigate Reference Guide Easy to Search Running Code Feedback Loop
  37. 37. Documentation should be Comprehensive Every method, parameter, return value, defaults,implementation notes, errors, side effects, deprecation notices. When in doubt, document.
  38. 38. Documentation should include both Reference Guide
  39. 39. Documentation should include Runnable Code
  40. 40. Documentation should be Easy to Navigate
  41. 41. Documentation should be Easy to Search
  42. 42. Documentation should be Easy to Search on Google, too
  43. 43. Do I enjoy using it? API Design Familiarity Compatibility Simplicity Debuggability
  44. 44. API Design: HTTP Familiarity Compatibility Use standards Support both (when it makes sense) JSON XML. REST, RPC, OAuth. Simplicity Debuggability Don’t throttle. Give meaningful error messages. Most importantly: Never ever use SOAP.
  45. 45. How do I get help?
  46. 46. Forum Email Feeds Stats Badges !Spam
  47. 47. Issue Tracker Comments Votes Search Status Categories Notification
  48. 48. THE EXPERIENCE CURVE
  49. 49. THE FEEDBACK LOOP ..should be infinite..
  50. 50. Feedback Forms
  51. 51. Surveys QT Mozilla Add-Ons SDK Blackboard API Survey Survey
  52. 52. Usability Testing Did you complete the task? How hard was it? Would you recommend this API? What would have made the experience of using the API better? Whose API does it better than we do? ATT Usability Testing
  53. 53. Paying Attention Twitter Conference Talks Blog posts Google Alerts
  54. 54. MAKEOVER TIME!
  55. 55. Google Maps API v2 v3 keys no keys! MVC architecture bloated library (smaller download) GMap, GMarker,... google.maps.* GPolygon(latlngs, strokeColor,strokeWeight, strokeOpacity, google.maps.Polygon(options) fillColor, fillOpacity, opts)
  56. 56. ZeptoJS
  57. 57. NOW WHAT?
  58. 58. providers: 1. Care I 2. Prioritize 3. Improve
  59. 59. CONSUMERS Thanks! It’d be great if you changed X. I’d use it more if it had feature Y. Thanks - look what I made with it!
  60. 60. The Developer Experience IT MATTERS LETS MAKE IT NOT SUCK for more... developerexperience.org developer-support-handbook.org @pamelafox
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×