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
Ian Rumac
February 01, 2023
Programming
0
210
(de)constructing architecture
Ian Rumac
February 01, 2023
Tweet
Share
More Decks by Ian Rumac
See All by Ian Rumac
Flutter Live Zagreb 2018 - What the Flut(ter)!?
ianrumac
0
91
Breaking up with RxJava (Kotlin Coroutines & Channels)
ianrumac
0
55
Other Decks in Programming
See All in Programming
GraphQL×Railsアプリのデータベース負荷分散 - 月間3,000万人利用サービスを無停止で
koxya
1
1.1k
明日から始めるリファクタリング
ryounasso
0
110
CSC509 Lecture 02
javiergs
PRO
0
400
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
190
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
240
メモリ不足との戦い〜大量データを扱うアプリでの実践例〜
kwzr
1
860
XP, Testing and ninja testing ZOZ5
m_seki
2
280
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
110
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
130
Catch Up: Go Style Guide Update
andpad
0
170
私達はmodernize packageに夢を見るか feat. go/analysis, go/ast / Go Conference 2025
kaorumuta
2
490
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Visualization
eitanlees
148
16k
Context Engineering - Making Every Token Count
addyosmani
5
180
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Fireside Chat
paigeccino
40
3.7k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Embracing the Ebb and Flow
colly
88
4.8k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Thoughts on Productivity
jonyablonski
70
4.9k
For a Future-Friendly Web
brad_frost
180
9.9k
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!