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
200
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
280
APIStrat 2016 | OpenAPI Trek: Beyond API Documentation (Arnaud Lauret)
apistrat
5
220
APIStrat 2016 | Flying Dreams: Real-Time Communication from the Edge of Space (Jonathan Barton, Neha Abrol)
apistrat
1
120
APIStrat 2016 | On-prem support? That was so 1982 (Charlie Ozinga)
apistrat
0
99
APIStrat 2016 | Effortless microservices in production with Kubernetes (Ken Wronkiewicz)
apistrat
0
130
Song by Tony Blank
apistrat
0
150
API Lifecycle Manager by Steve Fonseca
apistrat
2
220
APIs In The Enterprise: How Walgreens Formed It's Digital Business by Drew Schweinfurth
apistrat
1
360
Developers Are Difficult by Andrew Noonan
apistrat
0
120
Other Decks in Technology
See All in Technology
20241220_S3 tablesの使い方を検証してみた
handy
4
640
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
480
NW-JAWS #14 re:Invent 2024(予選落ち含)で 発表された推しアップデートについて
nagisa53
0
270
Wantedly での Datadog 活用事例
bgpat
1
530
Oracle Cloudの生成AIサービスって実際どこまで使えるの? エンジニア目線で試してみた
minorun365
PRO
4
290
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
複雑性の高いオブジェクト編集に向き合う: プラガブルなReactフォーム設計
righttouch
PRO
0
120
Storage Browser for Amazon S3
miu_crescent
1
240
サーバーなしでWordPress運用、できますよ。
sogaoh
PRO
0
110
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
260
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
210
C++26 エラー性動作
faithandbrave
2
780
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Fireside Chat
paigeccino
34
3.1k
For a Future-Friendly Web
brad_frost
175
9.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
17
2.3k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
KATA
mclloyd
29
14k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
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