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
Taming large Rails apps with Mutations
Search
Gavin Joyce
September 02, 2015
Programming
390
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Taming large Rails apps with Mutations
A lightning talk that I gave at Full Stack Fest
Gavin Joyce
September 02, 2015
More Decks by Gavin Joyce
See All by Gavin Joyce
Scaling Ember at Intercom - EmberCamp London
gavinjoyce
1
240
Taming Content Editable with Ember.js - Ember NYC
gavinjoyce
1
130
Taming Content Editable with Ember.js
gavinjoyce
1
380
Other Decks in Programming
See All in Programming
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.9k
yield再入門 #phpcon
o0h
PRO
0
340
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
220
鹿野さんに聞く!『TypeScriptコードレシピ集』で磨く実践力
tonkotsuboy_com
4
1.1k
AI 輔助遺留系統現代化的經驗分享
jame2408
1
1.2k
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
190
Claude Team Plan導入・ガイド
tk3fftk
0
190
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
180
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
400
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
330
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
Featured
See All Featured
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
120k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
590
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
470
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Producing Creativity
orderedlist
PRO
348
40k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
A designer walks into a library…
pauljervisheath
211
24k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
510
Transcript
Taming large Rails apps with Mutations @gavinjoyce
We're on a mission to make internet business personal.
Mutations
DB Controller View Model
DB Controller View Client Application Model
DB Controller View Ember.js App Model iOS App iOS SDK
Android App Android SDK Customer Apps
DB Controller Ember.js App Model iOS App iOS SDK Android
App Android SDK Customer Apps
DB API Ember.js App Model iOS App iOS SDK Android
App Android SDK Customer Apps
DB Ember.js App Model iOS App iOS SDK Android App
Android SDK Customer Apps Mobile APIs Ember APIs Public APIs v1 v2 v3
MySQL Ember.js App Model iOS App iOS SDK Android App
Android SDK Customer Apps Mobile APIs Ember APIs Public APIs v1 v2 v3 DynamoDB Mongo Memcached Redis
MySQL Ember.js App 100+ Models iOS App iOS SDK Android
App Android SDK Customer Apps Mobile APIs Ember APIs Public APIs v1 v2 v3 DynamoDB Mongo Memcached Redis
Ember.js App 100+ Models iOS App iOS SDK Android App
Android SDK Customer Apps Mobile APIs Ember APIs Public APIs v1 v2 v3 DB
Ember.js App 100+ Models iOS App iOS SDK Android App
Android SDK Customer Apps API DB
Client 100+ Models API DB
100+ Models API DB
100+ Models DB
200+ Models DB Large surface area Callback hell Brittle Problematic
with 40+ Engineers
Mutations
None
None
100+ Models DB
Models DB Internal API We use mutations to create REST
like internal interfaces to our core services
Models DB
Models DB User API
Models DB User API Message API
Models DB User API Message API Conversation API
Models DB User API Message API Conversation API These are
logically decoupled
Models DB User API Message API Conversation API Mobile APIs
Ember APIs Public APIs v1 v2 v3
Models DB User API Message API Conversation API Mobile APIs
Ember APIs Public APIs v1 v2 v3 We also use mutations to define our external APIs
Rails App Models DB User API Message API Conversation API
Ember.js App iOS App iOS SDK Android App Android SDK Customer Apps Mobile APIs Ember APIs Public APIs v1 v2 v3
If you have any questions... @gavinjoyce
Thanks for listening! @gavinjoyce