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
GraphQL Without Hype
Search
Łukasz Szymański
April 03, 2017
Programming
0
300
GraphQL Without Hype
Łukasz Szymański
April 03, 2017
Tweet
Share
More Decks by Łukasz Szymański
See All by Łukasz Szymański
Chain reaction of scaling up
szymanskilukasz
1
160
PHP's Not Dead - PHP7 In Practice
szymanskilukasz
10
43k
CQRS & Event Sourcing in OLX
szymanskilukasz
7
2k
Text Retrieval
szymanskilukasz
0
200
OLX pod maską [PL]
szymanskilukasz
2
730
Other Decks in Programming
See All in Programming
DevinとClaude Code、SREの現場で使い倒してみた件
karia
1
890
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
120
あなたはユーザーではない #PdENight
kajitack
4
300
Claude Codeと2つの巻き戻し戦略 / Two Rewind Strategies with Claude Code
fruitriin
0
200
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.4k
手戻りゼロ? Spec Driven Developmentとは@KAG AI week
tmhirai
1
160
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
20
10k
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
160
CDIの誤解しがちな仕様とその対処TIPS
futokiyo
0
160
Rails Girls Tokyo 18th GMO Pepabo Sponsor Talk
yutokyokutyo
0
190
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
350
AIコーディングの理想と現実 2026 | AI Coding: Expectations vs. Reality 2026
tomohisa
0
970
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8.1k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
199
73k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
My Coaching Mixtape
mlcsv
0
63
The SEO identity crisis: Don't let AI make you average
varn
0
400
Darren the Foodie - Storyboard
khoart
PRO
3
2.7k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Accessibility Awareness
sabderemane
0
72
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.8k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Believing is Seeing
oripsolob
1
68
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
120
Transcript
GraphQL WITHOUT HYPE szymanskilukasz
szymanskilukasz REST
szymanskilukasz
szymanskilukasz
szymanskilukasz
szymanskilukasz
szymanskilukasz Multiple round trips between the client and server to
render single views
szymanskilukasz
szymanskilukasz
szymanskilukasz
szymanskilukasz Ad Hoc Endpoints
szymanskilukasz
szymanskilukasz
szymanskilukasz
szymanskilukasz Maintaining Versions
szymanskilukasz Weakly Typed
szymanskilukasz Over Fetching Data
szymanskilukasz Documentation ?
szymanskilukasz What is GraphQL?
szymanskilukasz GraphQL is a query language for APIs and a
runtime for fulfilling those queries with your existing data
szymanskilukasz No round trips
szymanskilukasz For clients
szymanskilukasz Backend ?
szymanskilukasz It can be anything
szymanskilukasz It can be anything
szymanskilukasz How ? 'resolve' => function ($rootValue, $args, $context) {
// return something from your existing backend; }
szymanskilukasz Thanks to resolve() we can put GraphQL anywhere
szymanskilukasz API for mobile apps
szymanskilukasz Internal API
szymanskilukasz API for services
szymanskilukasz No Versioning https://github.com/facebook/graphql/issues/175
szymanskilukasz Facebook's GraphQL schema
szymanskilukasz Facebook's GraphQL schema - over 4 years old
szymanskilukasz Facebook's GraphQL schema - over 4 years old -
1,000s of types at this point
szymanskilukasz Facebook's GraphQL schema - over 4 years old -
1,000s of types at this point, - under active change by 100s of engineers
szymanskilukasz Facebook's GraphQL schema - over 4 years old -
1,000s of types at this point, - under active change by 100s of engineers - has never needed a versioned breaking change
szymanskilukasz Facebook's GraphQL schema - over 4 years old -
1,000s of types at this point, - under active change by 100s of engineers - has never needed a versioned breaking change - and still supports 4-year old shipped versions of iOS and Android apps (which unfortunately are still being used)
szymanskilukasz Strongly Typed / Documentation
szymanskilukasz Confession
szymanskilukasz Be prepared
szymanskilukasz Denial of Service
szymanskilukasz
szymanskilukasz
szymanskilukasz Authentication Authorization
szymanskilukasz N+1 queries
szymanskilukasz Monitoring / Debugging Tools
szymanskilukasz How to get started
szymanskilukasz Internal API for services
szymanskilukasz Demo: echo(message: “”)
Demo: echo(message: “”)
szymanskilukasz Demo: get User Credits
szymanskilukasz Demo: get User Credits
szymanskilukasz Demo: Deprecated Fields
szymanskilukasz Demo: Deprecated Fields
szymanskilukasz Demo: Mutations
szymanskilukasz Demo: Mutations
szymanskilukasz Public API
szymanskilukasz Demo: User Authorization
szymanskilukasz Demo: User Authorization
szymanskilukasz Demo: Performance
szymanskilukasz Demo: Performance
szymanskilukasz I just want to have fun
http://graphql.org/swapi-graphql/ szymanskilukasz
https://developer.github.com/early-access/graphql/explorer/ szymanskilukasz
https://github.com/chentsulin/awesome-graphql szymanskilukasz
Łukasz Szymański Development Team Lead at @szymanskilukasz https://www.linkedin.com/in/szymanskilukasz https://twitter.com/szymanskilukasz https://speakerdeck.com/szymanskilukasz
szymanskilukasz