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
(de)constructing architecture
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ian Rumac
February 01, 2023
Programming
240
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
(de)constructing architecture
Ian Rumac
February 01, 2023
More Decks by Ian Rumac
See All by Ian Rumac
Flutter Live Zagreb 2018 - What the Flut(ter)!?
ianrumac
0
110
Breaking up with RxJava (Kotlin Coroutines & Channels)
ianrumac
0
79
Other Decks in Programming
See All in Programming
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.4k
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.5k
Apache Hive: Toward a Cloud Native Lakehouse
okumin
0
180
torikago - Ruby::Boxで照らすモジュラモノリスの実行境界
se4weed
1
350
プロポーザルを書いてもらう
pvcresin
0
280
数百円から始めるRuby電子工作
tarosay
0
140
ソフトウェア設計に溶けるインフラ ― AWS CDK のインフラ認識論
konokenj
3
760
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
210
継続モナドとリアクティブプログラミング
yukikurage
3
690
テーブルをDELETEした
yuzneri
0
140
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
550
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
460
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
230
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.5k
Bash Introduction
62gerente
615
220k
Color Theory Basics | Prateek | Gurzu
gurzu
0
410
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
420
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
570
Rails Girls Zürich Keynote
gr2m
96
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
330
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
(de)constructing architecture LOTUS LAMBDA
who am I? I’m Ian (2022, the artist is a
machine)
architecture=? 1.: the art or science of building specifically: the
art or practice of designing and building structures and especially habitable ones
signal of culture ( technical knowledg ( project histor8 (
bureaucrac8 ( developer happiness
the age of chaos
= Time x Lines of code Scale time to Feature
mvp x mvc x mvvm model The every thing box
view
mvp x mvc x mvvm (2022, the artist is a
machine) model The every thing box view
= Time x Lines of code Scale time to Feature
same problem, new blog post 4 giant controllers/presenters/vm( 4 fuzzy
states & cross-polinatioC 4 “where do we put this”
architecture != boilerplate != brutalism
architecture = design
good architecture should be invisible
less typing, less reading, less thinking $ noise = cognitive
loa $ code = bug3 $ think laz5 $ simple names
None
(2022, the artist is a machine)
None
don’t make it hard to do the right thing
write to read read to write, 2 does it sound
good6 2 is it easy to reason about6 2 if I read it out loud to my mother would she think I’m speaking gibberish?
None
None
words create meaning ( compress dat$ ( denote responsibilit (
give contex ( depend on context
systems, not siloes 3 focus on the bigger pictur 3
no overgrown controller 3 independent components
“harmonika” architecture repository model view Presenter mapper mapper usecase
“harmonika” architecture
Cart state Add Remove Cart LoadCart AddToCart CartScreen State VM
design the flow of data
rigidity scalability, & flexibility 8 handling edge case& 8 enabling
new features5 8 making your life easie" 8 use the compiler
event-based systems scale easier
(state, action) => state
(MEMORY,INSTRUCTION ) => MEMORY
states and components, not managers and controllers ( easily scalabl2
( repeatable, saveabl2 ( can easily spli$ ( can move in scope
Cart Discounts Checkout
keep it simple, stupid! dont overenginee1 hide the
pipin& write for human explore code
questions? thank you!