Let’s say, you are searching certain frameworks, or APIs to satisfy your new project- what if you stumble on some awesome-sounding shiny website, but it comes with very poor documentations. Do you want to try it out, or keep searching something else? Or when you see a GitHub project with no README, how do you feel? I think this developer experience is one of big key factors for you to decide what technologies to use.
User-Experience (UX) focuses on understanding what users' need and value, and provide practical products or services. This human-computer interaction acts the same when the users are developers. The ideas of “Developer Experiences” is to establish a good relationship between developers and platform providers.
So, as a developer evangelist, what can we do to improve DX to get developers' interests?
In this talk, Tomomi Imura will talk about her experiences, and how I create developer-centric contents and docs to drive the community and acquired new developers and customers.
3. @ girlie_mac
● dev relations at Slack
● api.slack.com
● advocate open web & technology
● code JavaScript & Node.js
● hack useless stuff
● advisor at Code Chrysalis
● Live in foggy San Francisco
tomomi imura
4. @ girlie_mac
Where I Have Been Doing DevRel at:
Slack API Nexmo SMS,
Voice, 2FA
API
HTML5 (W3C) &
Windows Phone webOS Apps
PubNub Realtime API
8. @ girlie_mac
Awareness
If devs find your shiny new stuff passively on
TechCrunch, ProductHunt, announcement /
marketing blog, etc:
Sounds awesome!
9. @ girlie_mac
Awareness & Acquisition
If devs find your use cases, and with even better,
easy-to-follow tutorials for how to build them:
Sounds awesome! I may wanna try!
13. @ girlie_mac
Practical & Fundamental
Tutorial examples:
● [Awesome API] 101
● Beginner Guide of [Awesome API]
● Getting Started with [Awesome API] using [Node SDK]
● How to Build To-Do App with [Awesome.JS Framework]
● [Awesome API] Tips & Tricks
● [Awesome API] Best Practice
20. @ girlie_mac
Project Types
● Purely fun
○ Pokémon
○ IoT - cat camera
● Targeting a community / Ecosystem
○ JavaScript - e.g. React, Angular, D3
○ MCU - e.g. Arduino, Raspberry Pi
○ Web standards - HTML5
○ Amazon Alexa
31. @ girlie_mac
User-Experience
User-Experience (UX) focuses on having a
deep understanding of users, what they need,
what they value, their abilities, and also their
limitations.”
Source: usability.gov
“
32. @ girlie_mac
User-Experience
User-Experience (UX) focuses on having a
deep understanding of users, what they need,
what they value, their abilities, and also their
limitations.”
Source: usability.gov
“
37. @ girlie_mac
Bad UX: User Reactions
1. Get confused
2. Guess and fail
3. Frustrated
4. Repeat 2 - 3
5. Totally pissed off
38. @ girlie_mac
Bad DX: Developer Reactions
1. Get confused of enigmatic API & Docs
2. console.log(“wtf”) & get errors
3. Frustrated
4. Repeat 2 - 3
5. Totally pissed off
39. @ girlie_mac
Poor Docs & Tuts DX Examples
● No documentation
● Poor onboarding experience
● Bad browsing experience, no ref links
● No diagram, screenshot, picture etc.
● Too complex
● Too marketing-y (Stock photo of a businessman in suit?)
● PDF everything (Docs != Whitepaper)
41. @ girlie_mac
Docs & Tuts Should be
● Navigable
● Practical and/or interesting
● newbie-friendly
○ Prerequisite, How to set up
○ onboarding with “Hello, world”
○ Hands-on
● Including code samples (Gee, who doesn’t?)
● Informative - doet your devs uninformed about dev tools & libs
45. @ girlie_mac
TL;DR
● Write to attract developers
○ Make them practical / interesting so they want to try
● Syndicate your content
● Go social
○ Use the social media meta tags
○ Dev-focused media
● Improve dev experience to keep devs engaged