+ All Categories
Home > Technology > The Developer Experience

The Developer Experience

Date post: 06-May-2015
Category:
Upload: pamela-fox
View: 1,349 times
Download: 3 times
Share this document with a friend
Description:
What makes for a good developer experience? How do you improve yours? That's what I explore in this talk, given at Atlassian Summit 2012.
Popular Tags:
60
The Developer Experience WHAT IT IS WHY IT MATTERS HOW TO MAKE IT NOT SUCK pamelafox.org @pamelafox pamelafox@ twitter.com/ gmail.com http://
Transcript
Page 1: The Developer Experience

The Developer ExperienceWHAT IT IS

WHY IT MATTERS

HOW TO MAKE IT NOT SUCK

pamelafox.org @pamelafox [email protected]/

gmail.comhttp://

Page 2: The Developer Experience

User Experience

“The sum of all interactions and events, both positive and negative, between a

user and a web site.”

AKA“bla bla bla”

Page 3: The Developer Experience

User ExperienceDo 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?

Page 4: The Developer Experience

DO I WANT TO USE IT?

Page 5: The Developer Experience

HOW DO I SIGN UP?

Page 6: The Developer Experience

HOW DO I SIGN UP?

Page 7: The Developer Experience

HOW DO I GET STARTED?

Page 8: The Developer Experience

HOW DO I USE IT?

Page 9: The Developer Experience

HOW DO I GET HELP?

Page 10: The Developer Experience

DEVELOPER EXPERIENCE

“The sum of all interactions and events, both positive and negative, between a developer and a library, tool, or API.”

Page 11: The Developer Experience

DEVELOPER EXPERIENCEDo 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?

Page 12: The Developer Experience

DO I WANT TO USE IT?

Page 13: The Developer Experience

HOW DO I SIGN UP?

Page 14: The Developer Experience

HOW DO I GET STARTED?

Page 15: The Developer Experience

HOW DO I USE IT?

Page 16: The Developer Experience

HOW DO I GET HELP?

Page 17: The Developer Experience

why should you care?

Page 18: The Developer Experience

Who are you?

PROVIDERS CONSUMERS

Developer Experience

(Library, Tool, API, ...)

Page 19: The Developer Experience

...who am I?

CONSUMER PROVIDER

Childhood University hood Now

CONSUMER

2002 2006 20112006

Page 20: The Developer Experience

why does DX matter?

I have to use X.

Bad Experience

Low Barrier for LeavingBare Minimum Usage

Page 21: The Developer Experience

why does DX matter?

I like to use X.

Good Experience

Innovative Usage External Evangelism

Page 22: The Developer Experience

let’s break it down...

Page 23: The Developer Experience

Do I want to use it?

Page 24: The Developer Experience

Documentation Interactive Explorer

Does it have the features I need?

Page 25: The Developer Experience

Can I safely build a business on top of it?

Licensing Pricing

Stability

Page 26: The Developer Experience

Case Studies

Page 27: The Developer Experience

How do I sign up?

Page 28: The Developer Experience

How do I sign up?

No signup! No key!Best answer:

Page 29: The Developer Experience

Automated Key Signup

Page 30: The Developer Experience

Usage Dashboard

Page 31: The Developer Experience

How do I get started?

Page 32: The Developer Experience

Downloads for Every Environment

Page 33: The Developer Experience

Client Libraries for Every Language

Page 34: The Developer Experience

“Hello World”(From 0 to 60 in 15 minutes)

Page 35: The Developer Experience

How do I use it?

How do I learn how to use it?

Do I enjoy using it?

Page 36: The Developer Experience

Documentation

How do I learn how to use it?

Comprehensive Easy to Navigate

Reference & Guide Easy to Search

Running Code Feedback Loop

Page 37: The Developer Experience

Documentation

When in doubt, document.

Comprehensiveshould be

Every method, parameter, return value, defaults, implementation notes, errors, side effects, deprecation notices.

Page 38: The Developer Experience

Documentationshould include both Reference & Guide

Page 39: The Developer Experience

Documentationshould include Runnable Code

Page 40: The Developer Experience

Documentation should be Easy to Navigate

Page 41: The Developer Experience

Documentation should be Easy to Search

Page 42: The Developer Experience

Documentation should be Easy to Searchon Google, too

Page 43: The Developer Experience

Familiarity

Do I enjoy using it?

API Design

Simplicity

Compatibility

Debuggability

Page 44: The Developer Experience

API Design: HTTPFamiliarity

Simplicity

Compatibility

Debuggability

Use standards(when it makes sense)

REST, RPC, OAuth.

Support both JSON & XML.

Give meaningfulerror messages.

Don’t throttle.

Most importantly: Never ever use SOAP.

Page 45: The Developer Experience

How do I get help?

Page 46: The Developer Experience

Forum

Email & Feeds !SpamStats & Badges

Page 47: The Developer Experience

Issue Tracker

Comments

Status

Votes

NotificationCategories

Search

Page 48: The Developer Experience

THE EXPERIENCE CURVE

Page 49: The Developer Experience

THE FEEDBACK LOOP..should be infinite..

Page 50: The Developer Experience

Feedback Forms

Page 52: The Developer Experience

Usability Testing

AT&T 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?

Page 53: The Developer Experience

Paying Attention

Twitter

Google Alerts

Conference Talks

Blog posts

Page 54: The Developer Experience

MAKEOVER TIME!

Page 55: The Developer Experience

Google Maps API

v2 v3

keys no keys!

bloated library MVC architecture(smaller download)

GMap, GMarker,... google.maps.*

GPolygon(latlngs, strokeColor, strokeWeight, strokeOpacity,

fillColor, fillOpacity, opts)

google.maps.Polygon(options)

Page 56: The Developer Experience

ZeptoJS

Page 57: The Developer Experience

NOW WHAT?

Page 58: The Developer Experience

providers:

1. Care

2. Prioritize

3. Improve

I

Page 59: The Developer Experience

CONSUMERS

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!

Thanks!

Page 60: The Developer Experience

The Developer ExperienceIT MATTERS

LETS MAKE IT NOT SUCK

developerexperience.org developer-support-handbook.org

for more...

@pamelafox


Recommended