Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
User Focused API Design
Search
Labcodes Software Studio
May 10, 2017
Technology
0
93
User Focused API Design
Talk given on May 10th at Django NYC Meetup
Labcodes Software Studio
May 10, 2017
Tweet
Share
More Decks by Labcodes Software Studio
See All by Labcodes Software Studio
Sua aplicação web aguenta o tranco?
labcodes
0
28
Como Gerenciar Trocas de Contexto em tempo de Pandemia
labcodes
0
70
Débito Técnico: Porque isso vai estragar teu Software
labcodes
1
400
80 tiros não são disparados por engano
labcodes
0
76
Recompose - O lodash para React
labcodes
2
120
Aprendendo com os erros
labcodes
3
200
Usando recursos avançados da ORM do Django para consultas mais eficientes
labcodes
2
300
Making smarter queries with advanced ORM resources
labcodes
2
240
Explorando QuerySets do Django
labcodes
2
210
Other Decks in Technology
See All in Technology
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
190
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
1.6k
What's the recommended Flutter architecture
aakira
3
2k
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
370
セマンティックHTMLによる アクセシビリティ品質向上の基礎
zozotech
PRO
0
110
バクラクの AI-BPO を支える AI エージェント 〜とそれを支える Bet AI Guild〜
tomoaki25
2
780
なぜブラウザで帳票を生成したいのか どのようにブラウザで帳票を生成するのか
yagisanreports
0
120
[CV勉強会@関東 ICCV2025 読み会] World4Drive: End-to-End Autonomous Driving via Intention-aware Physical Latent World Model (Zheng+, ICCV 2025)
abemii
0
230
QAを"自動化する"ことの本質
kshino
1
130
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
640
レビュー負債を解消する ― CodeRabbitが支えるAI駆動開発
moongift
PRO
0
410
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
100
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Building Adaptive Systems
keathley
44
2.8k
Become a Pro
speakerdeck
PRO
29
5.6k
Designing Experiences People Love
moore
142
24k
Faster Mobile Websites
deanohume
310
31k
RailsConf 2023
tenderlove
30
1.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Code Reviewing Like a Champion
maltzj
527
40k
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