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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ian Rumac
February 01, 2023
Programming
0
220
(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
100
Breaking up with RxJava (Kotlin Coroutines & Channels)
ianrumac
0
63
Other Decks in Programming
See All in Programming
Railsの気持ちを考えながらコントローラとビューを整頓する/tidying-rails-controllers-and-views-as-rails-think
moro
4
360
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
120
TROCCOで実現するkintone+BigQueryによるオペレーション改善
ssxota
0
110
New in Go 1.26 Implementing go fix in product development
sunecosuri
0
100
Oxlint JS plugins
kazupon
1
1.1k
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
2.2k
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
120
AI駆動開発の本音 〜Claude Code並列開発で見えたエンジニアの新しい役割〜
hisuzuya
4
430
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜 / Understanding nil in Go Interface Representation and Why nil != nil
kuro_kurorrr
3
1.6k
ふん…おもしれぇ Parser。RubyKaigi 行ってやるぜ
aki_pin0
0
120
並行開発のためのコードレビュー
miyukiw
2
2.1k
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
340
Featured
See All Featured
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
290
Designing for Performance
lara
611
70k
First, design no harm
axbom
PRO
2
1.1k
The Curious Case for Waylosing
cassininazir
0
260
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
71
4 Signs Your Business is Dying
shpigford
187
22k
A better future with KSS
kneath
240
18k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
78
Technical Leadership for Architectural Decision Making
baasie
2
270
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
130
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
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!