Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
User Focused API Design
Search
Labcodes Software Studio
May 10, 2017
Technology
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
User Focused API Design
Talk given on May 10th at Django NYC Meetup
Labcodes Software Studio
May 10, 2017
More Decks by Labcodes Software Studio
See All by Labcodes Software Studio
Sua aplicação web aguenta o tranco?
labcodes
0
69
Como Gerenciar Trocas de Contexto em tempo de Pandemia
labcodes
0
110
Débito Técnico: Porque isso vai estragar teu Software
labcodes
1
450
80 tiros não são disparados por engano
labcodes
0
110
Recompose - O lodash para React
labcodes
2
170
Aprendendo com os erros
labcodes
3
260
Usando recursos avançados da ORM do Django para consultas mais eficientes
labcodes
2
380
Making smarter queries with advanced ORM resources
labcodes
2
280
Explorando QuerySets do Django
labcodes
2
260
Other Decks in Technology
See All in Technology
200人の配信コメント、 全部Jevが仕分けます 〜 マサカリガードを作ってみた 〜
katayamatg
1
460
reInvent2026stby LT00 "Change your life!"
shinichirokawano
1
480
新卒エンジニア、 介護士になる
ryu1013
1
570
(swiftc) NonCopyableとライフタイム修飾子
teamhimeh
0
160
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
2.8k
How we choose session proposals
kawaguti
PRO
1
190
OneLakeをデータソースにした AI Search(Foundry IQ)の ライフサイクル管理
ryuseiiida
0
200
キヨさん67歳 AIコーディングエージェント物語
happysamurai294
0
140
【Oracle AI SPOTLIGHT ウェビナー】事例から見る!なぜOCIが選ばれたのか ― AI時代のクラウド戦略を紐解く ―
oracle4engineer
PRO
1
140
Don't write the architecture only in the prompt.
neohsu
0
270
渡米前の準備を制す!re:Invent 2026徹底準備術 / The Ultimate Preparation Guide for re:Invent 2026
yuj1osm
1
440
生き様としてのSRE
hokkai7go
0
140
Featured
See All Featured
BBQ
matthewcrist
90
10k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
Making the Leap to Tech Lead
cromwellryan
135
10k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
780
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
470
Large-scale JavaScript Application Architecture
addyosmani
516
110k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
360
Technical Leadership for Architectural Decision Making
baasie
3
620
We Are The Robots
honzajavorek
0
410
Transcript
Renato Oliveira USER FOCUSED API DESIGN
Who am I • Recife, Brazil • Co-founder and Software
Engineer at Labcodes • PUG-PE & Python Brasil • DSF • Communities <3 • Coffee <3
Labcodes • Software studio de Recife para o mundo •
Tecnologias que trabalhamos • Labcodes e Comunidade Labcodes
DISCLAIMER
None
Your API is a User Interface
Your API is a User Interface
Your API is a User Interface
API Design
There are people on the other side
There are users on the other side!
On what should we focus? • Functionality • Usability
USER EXPERIENCE
DEVELOPER EXPERIENCE
UX Honeycomb usable useful valuable desirable accessible credible findable
How to measure your API usability? • Task invocation ratio
• Structure • Navigation • Time to first call • Error handling
UX without user research is not UX
User Research • Participatory design • Persona development
Test • Write client code • Metrics
Documentation • Getting started guide • Common use cases •
Sandbox
Error Handling • Different errors requires different exceptions • Descriptive
error messages • “Errors should never pass silently. Unless explicitly silenced”
Top-down approach • How the API should behave? • Prototype
• Iterate • Feedback
Prototype and Iterate
Design/Prototype Implementation Customer
Design/Prototype Implementation Customer :D
API Blueprint • apiblueprint.org • Mock tools • Tests
Empathy • Understand • Put yourself on your users’ shoes
• All of your users (Personas)
Functionalities are eternal • Or at least as long your
API version lasts • Please don’t break clients by removing functionalities • Users only use your API once, everything else is automated
“APIs are starting to look more like the product and
less like the technology.” Jason Harmon, Head of API Design @ PayPal
Obrigado! twitter.com/_renatoOliveira github.com/renatoliveira www.labcodes.com.br speakerdeck.com/labcodes
None