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
230
(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
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
280
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
710
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
480
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
570
Claude Codeセッション現状確認 2026福岡 / fukuoka-aicoding-00-beacon
monochromegane
4
440
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
310
OTP を自動で入力する裏技
megabitsenmzq
0
120
CSC307 Lecture 14
javiergs
PRO
0
480
RAGでハマりがちな"Excelの罠"を、データの構造化で突破する
harumiweb
9
2.9k
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.1k
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
240
存在論的プログラミング: 時間と存在を記述する
koriym
2
120
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
52k
Automating Front-end Workflow
addyosmani
1370
200k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.3k
Navigating Weather and Climate Data
rabernat
0
140
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.2k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
74
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.5k
エンジニアに許された特別な時間の終わり
watany
106
240k
Scaling GitHub
holman
464
140k
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!