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
Three simple rules for building APIs
Search
Ben Balter
March 31, 2015
Technology
1
490
Three simple rules for building APIs
APIs should be simple, semantic, and supported.
Ben Balter
March 31, 2015
Tweet
Share
More Decks by Ben Balter
See All by Ben Balter
A community of communities: Empowering maintainers to grow communities around their code
benbalter
1
1.3k
Fostering a culture of collaboration
benbalter
0
230
Growing open source communities on GitHub around your WordPress plugin or theme
benbalter
1
250
It takes a digital village
benbalter
1
460
Open source workflows in highly regulated environments
benbalter
0
95
Optimize for Developer Happiness
benbalter
0
280
The technology is the easy part
benbalter
2
300
How to foster an open source culture inside Government
benbalter
3
2.5k
Open source inspired workflows for open (and closed) geospatial data
benbalter
0
160
Other Decks in Technology
See All in Technology
プラットフォームエンジニアリングとは何であり、なぜプラットフォームエンジニアリングなのか
doublemarket
0
210
TypeScript×CASLでつくるSaaSの認可 / Authz with CASL
saka2jp
2
150
段階的に進める、 挫折しない自宅サーバ入門
yu_kod
1
130
プロダクト負債と歩む持続可能なサービスを育てるための挑戦
sansantech
PRO
1
1.1k
IPv6-mostly field report from RubyKaigi 2026
sorah
0
210
Excelデータ分析で学ぶディメンショナルモデリング ~アジャイルデータモデリングへ向けて~ by @Kazaneya_PR / 20251126
kazaneya
PRO
3
610
Bedrock のコスト監視設計
fohte
2
250
今すぐGoogle Antigravityを触りましょう
rfdnxbro
0
230
メッセージ駆動が可能にする結合の最適化
j5ik2o
9
1.7k
All About Sansan – for New Global Engineers
sansan33
PRO
1
1.3k
AS59105におけるFreeBSD EtherIPの運用と課題
x86taka
0
300
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
45k
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
4 Signs Your Business is Dying
shpigford
186
22k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
680
A better future with KSS
kneath
239
18k
Mobile First: as difficult as doing things right
swwweet
225
10k
Typedesign – Prime Four
hannesfritz
42
2.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Agile that works and the tools we love
rasmusluckow
331
21k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
980
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
Transcript
! Three simple rules for building an API Ben Balter
@benbalter
[email protected]
government.github.com
! All APIs should be three things
! APIs should be simple
! APIs should be semantic
! APIs should be supported
! All APIs should be simple
! Let’s say you want a list of open source
licenses…
! Option 0: scrape opensource.org Option 1: scrape spdx.org Option
2: parce an excel file
! Pro-tip: prototype your API
! choosealicense.com/licenses.json
! Meh.
! api.github.com/licenses
None
! api.github.com/licenses/mit
None
! api.github.com/repos/benbalter/gman
None
! All APIs should be semantic
! FDsys is not
! The FAR
! (Thunder and dramatic music)
None
! Web developers love 2+ MB XML files
! Data should be immediately valuable
! github.com/benbalter/so_far_so_good
! Data should make sense to computers
None
! Data should make sense to humans
None
! Data shouldn’t mimic their paper counterparts
! Data should be reimagined for the web
! Optimize for developer happiness
! All APIs should be supported
!
[email protected]
doesn’t scale
!
[email protected]
is a great way to answer the same
question over and over again
! Users have (the same) questions
! The only appropriate way to answer a question about
your API is with a URL
! Today, the first step to solving any problem is
to Google it
! Microsoft has been rocking the knowledge base for decades
! Bonus #1: Your community will answer its own questions
None
! Bonus #2: Collaborative documentation
None
None
! If you liked it then you should have put
a URL on it
! To review…
! APIs should be simple
! APIs should be semantic
! APIs should be supported
! Three simple rules for building an API Ben Balter
@benbalter
[email protected]
government.github.com