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
Hypermedia Affordance
Search
Akihito Koriyama
July 30, 2017
Technology
560
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Hypermedia Affordance
Hypermedia Affordance with BEAR.Sunday
Akihito Koriyama
July 30, 2017
More Decks by Akihito Koriyama
See All by Akihito Koriyama
LaravelユーザーのためのBEAR.Sunday入門
koriym
0
61
BEAR.Sunday — リソース指向 PHP アプリケーションフレームワーク
koriym
0
69
存在論的プログラミング: 時間と存在を記述する
koriym
5
1.3k
Be Framework: 生命システムとしての存在理解
koriym
0
230
新世界の理解
koriym
0
280
AI Centric
koriym
0
850
app-state-diagram
koriym
0
190
OOP, Double Dispatch and Visitor Pattern
koriym
3
230
BEAR.Sunday 2014-2024
koriym
0
120
Other Decks in Technology
See All in Technology
Shared Signals Framework 仕様解説
oidfj
0
370
AI Agent 時代のデータ基盤: ClickHouse で実現する 超高速分析とコスト削減の両立
jozono
0
230
An Introduction to Context Ontology Accelerator (teaching AI agents what your data means)
inariku
PRO
1
200
レガシーコードに対する loop engineering的なAI開発プロセス導入について
kubell_hr
0
320
[dbts2026]数十PBの超巨大データ×AI活用を支えるSnowflakeの実力〜大規模環境におけるアーキテクチャと運用のリアル〜
y_matsubara
0
130
bpf_arenaとstruct_opsを使うのが難しかった話
masu_mi
0
230
属人化したISMS運用をGitHubとAIで仕組み化した1年間の記録
sioncojp
4
2.1k
Gifu WordPress Meetup #200 に向けて、私たちには何ができるだろうか?/ 2026-11-07 Gifu WordPress Meetup
torounit
0
250
これからのデータエンジニアの役割について考える / Rethinking the Role of Data Engineers in the AI Era
okiyuki99
0
300
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
220
公共分野での生成AI活用
toru_kubota
1
320
IBC 2026 動画技術関連レポート / IBC 2026 Report
cyberagentdevelopers
PRO
2
450
Featured
See All Featured
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
Mobile First: as difficult as doing things right
swwweet
225
10k
The agentic SEO stack - context over prompts
schlessera
0
1k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
780
For a Future-Friendly Web
brad_frost
184
11k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Ethics towards AI in product and experience design
skipperchong
2
460
The SEO identity crisis: Don't let AI make you average
varn
0
630
Producing Creativity
orderedlist
PRO
348
41k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
520
Transcript
Hypermedia affordance with BEAR.Sunday @koriym 2017
None
IUUQTFOXJLJQFEJBPSHXJLJ"⒎PSEBODF
IUUQFLSJUTKQXQDPOUFOUVQMPBETDPNJDB⒎PSEBODFQEG
None
GET /menu
None
None
no affordance
None
None
rel=“order” !
/order but how ?
OPTIONS /order
None
None
POST /order/?name=latte ☕
None
PUT /order?id=123&extra=shot
None
GET /order?id=123
None
OPTIONS /payment
PUT: the payment should be idempotent
IUUQTXXXJOGPRDPNKQBSUJDMFTXFCCFSSFTUXPSLqPX Resource interface for state machine URI as state "
" "
200 GET /menu 201 POST /order/?name=latte 100 PUT /order/?order_id=1234&extra=shot 200
PUT /payment?order_id&card_num=123&expire=101018 URIs as event source
* CQS * CQRS * Discoverable * Cache * Observe
* Message Driven Development * Micro Service * Event Sourcing * Decoupled Component REST++
Hypermedia API
Hypermedia Driven Development
None
IUUQTXXXXPSHJOUFHSBUJPOXPSLTIPQQIZQFSNFEJBPSJFOUFEEFTJHOQEG
IUUQTXXXJOGPRDPNKQBSUJDMFTXFCCFSSFTUXPSLqPX
None
None
Self-Descriptive API
None
CURIEs (Compact URI) IUUQTFOXJLJQFEJBPSHXJLJ$63*&
None
None
None
IUUQKTPOTDIFNBPSH
backend + front-end UPEPKTPO UPEPTKTPO
None
? REST API
REST != CRUD over HTTP
REST != Return JSON with pretty URI
None
IUUQTXXXJOGPRDPNOFXT$36%3&45
IUUQTUXJUUFSDPNpFMEJOHTUBUVT
None
None
Network affordance
Information (+ affordance) NFOV SFMlPSEFSz
hypermedia affordance SFMlPSEFSz
Internet Programing
= Programing Internet
BEE B⒎PSEBODF