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
Harmony in API Design
Search
API Strategy & Practice Conference
October 24, 2013
Technology
1
210
Harmony in API Design
By Jakub Nesetril @ API Strategy & Practice Conference
San Francisco, October 23-24-25, 2013
API Strategy & Practice Conference
October 24, 2013
Tweet
Share
More Decks by API Strategy & Practice Conference
See All by API Strategy & Practice Conference
APIStrat 2016 | The end of polling: why and how to transform a REST API into a Data Streaming API (Audrey Neveu)
apistrat
12
310
APIStrat 2016 | OpenAPI Trek: Beyond API Documentation (Arnaud Lauret)
apistrat
5
240
APIStrat 2016 | Flying Dreams: Real-Time Communication from the Edge of Space (Jonathan Barton, Neha Abrol)
apistrat
1
150
APIStrat 2016 | On-prem support? That was so 1982 (Charlie Ozinga)
apistrat
0
130
APIStrat 2016 | Effortless microservices in production with Kubernetes (Ken Wronkiewicz)
apistrat
0
180
Song by Tony Blank
apistrat
0
200
API Lifecycle Manager by Steve Fonseca
apistrat
2
260
APIs In The Enterprise: How Walgreens Formed It's Digital Business by Drew Schweinfurth
apistrat
1
400
Developers Are Difficult by Andrew Noonan
apistrat
0
140
Other Decks in Technology
See All in Technology
AIにより大幅に強化された AWS Transform Customを触ってみる
0air
0
190
ハーネスエンジニアリング×AI適応開発
aictokamiya
1
780
Navigation APIと見るSvelteKitのWeb標準志向
yamanoku
2
130
OCI技術資料 : 証明書サービス概要
ocise
1
7.1k
Network Firewall Proxyで 自前プロキシを消し去ることができるのか
gusandayo
0
120
なぜarray_firstとarray_lastは採用、 array_value_firstとarray_value_lastは 見送りだったか / Why array_value_first and array_value_last was declined, then why array_first and array_last was accpeted?
cocoeyes02
0
290
JEDAI認定プログラム JEDAI Order 2026 受賞者一覧 / JEDAI Order 2026 Winners
databricksjapan
0
400
FlutterでPiP再生を実装した話
s9a17
0
230
Cursor Subagentsはいいぞ
yug1224
2
120
AI時代のシステム開発者の仕事_20260328
sengtor
0
310
OCI技術資料 : ロード・バランサ 概要 - FLB・NLB共通
ocise
4
27k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
2
1.6k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
85
The World Runs on Bad Software
bkeepers
PRO
72
12k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Mind Mapping
helmedeiros
PRO
1
130
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Code Reviewing Like a Champion
maltzj
528
40k
Automating Front-end Workflow
addyosmani
1370
200k
For a Future-Friendly Web
brad_frost
183
10k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
94
Transcript
Harmony in API Design
[email protected]
What is an API?
None
None
API is UI to Data
API is UI to Data
API is UI to Data User Experience
API is UI to Data User Experience Design
API is UI to Data User Experience Design Emotions
API is UI to Data User Experience Design Subjective Emotions
API is UI to Data User Experience Design Subjective Emotions
Culturally Dependent
API is UI to Data User Experience Design Subjective Simplicity
Emotions Culturally Dependent
API is UI to Data User Experience Design Subjective Simplicity
Emotions Productivity Culturally Dependent
API is UI to Data User Experience Design Subjective Simplicity
Conversion Rates Emotions Productivity Culturally Dependent
API is UI to Data User Experience Design Subjective Simplicity
Conversion Rates Emotions Productivity Usability Studies Culturally Dependent
API is UI to Data User Experience Design Subjective Simplicity
Conversion Rates Emotions Productivity Culturally Dependent Hackathons
Nobody thinks THEIR design sucks
None
None
Provider Consumer
Provider Consumer Java Rails Scala Erlang
Provider Consumer Java Rails Scala Erlang jQuery ObjC PHP
Provider Consumer Uptime Caching Security Maintenance Versioning Validation Java Rails
Scala Erlang jQuery ObjC PHP
Provider Consumer Uptime Caching Security Maintenance Versioning Validation Can It
Be Done? Debugging Support TTFHW Example Latency Java Rails Scala Erlang jQuery ObjC PHP
So?
1. Start With a Wireframe •a design intent •usually an
API description language •at Apiary we use API Blueprint
2. Involve Your Customers •find your early-adopters before you code
•create an API mock that they can use •fork/pull-request
3. Have Great Documentation •generated automatically •must be exhaustive and
up-to-date •your code is automatically tested; so must your documentation
4. Separate Contract from Implementation
Summary •API is UI for Data & Interface between cultures
•Involve your customers early •Automate
@apiaryio http://apiary.io/ ! @jakubnesetril Thank You