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
Using Software Modules - Welcome to Hell!
Search
Baruch Sadogursky
February 14, 2013
Programming
1
400
Using Software Modules - Welcome to Hell!
Baruch Sadogursky
February 14, 2013
Tweet
Share
More Decks by Baruch Sadogursky
See All by Baruch Sadogursky
Silicon Valley Chainsaw Massacre (how I spent my last Friday night on-call) as presented at DevOops 2017
jbaruch
0
770
DevOps @ scale — greek tragedy in three acts as presented at Devoops 2017
jbaruch
0
610
Building a Massively Scalable Cloud Service from the Grounds Up
jbaruch
0
310
Groovy DSL для plugin-ов - Расширения человеческим языком
jbaruch
0
380
Найти Сятой Грааль, и оттестировать его как следует
jbaruch
1
370
Plugging the users in - extend your application with pluggable Groovy DSL
jbaruch
0
250
Open/Closed Software - Developing freemium application using Spring Framework
jbaruch
0
270
Search for the Holy Grail (and test it once found)
jbaruch
0
160
Разработка модулярного софта — добро пожаловать в АД!
jbaruch
0
120
Other Decks in Programming
See All in Programming
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
120
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
910
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
2
1.5k
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
130
情報漏洩させないための設計
kubotak
5
1.3k
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
170
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
180
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
Итераторы в Go 1.23: зачем они нужны, как использовать, и насколько они быстрые?
lamodatech
0
1.3k
Lookerは可視化だけじゃない。UIコンポーネントもあるんだ!
ymd65536
1
120
『改訂新版 良いコード/悪いコードで学ぶ設計入門』活用方法−爆速でスキルアップする!効果的な学習アプローチ / effective-learning-of-good-code
minodriven
26
3.2k
HTML/CSS超絶浅い説明
yuki0329
0
180
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Thoughts on Productivity
jonyablonski
68
4.4k
Optimising Largest Contentful Paint
csswizardry
33
3k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
950
RailsConf 2023
tenderlove
29
970
Done Done
chrislema
182
16k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Transcript
None
None
None
None
None
None
None
None
None
None
, IPS
None
None
None
None
None
None
None
None
None
DRAGON STORIES AHEAD! fAC Ddb
STORY NUMBER ONE f
, A STORY OF INDEXES +
, A STORY OF INDEXES + < KEPT IN WRONG
PLACE >
Once Upon A Time…
Once Upon A Time… Can’t serve… searches…
Not anymore…
Look ma, no index download!
None
None
None
Have to download huge files Before Searching
Have to download huge files Before Searching Updated rarely
Have to download huge files Before Searching Updated rarely Requires
special client
Have to download huge files Before Searching Updated rarely Requires
special client
None
None
None
None
Lesson learned
STORY NUMBER TWO A
None
None
None
None
None
None
None
None
None
None
None
STORY NUMBER TWO (AND A HALF) AA
None
Lesson learned
None
None
None
None
None
None
None
STORY NUMBER THREE C
None
None
None
Depending on name only
Depending on name only
You knew it is coming!
None
None
None
None
None
None
None
None
None
None
None
A v1
A v1 E v1
A v1 E v1 D v1
A v1 B v1 E v1 D v1
A v1 C v1 B v1 E v1 D v1
A v1 C v1 B v1 D v2 E v1
D v1
A v1 C v1 B v1 D v2 E v1
D v1
None
None
None
None
Reprise…
None
None
None
None
None
Lesson learned
STORY NUMBER FOUR
None
None
None
None
Lesson learned
STORY NUMBER FIVE D
Like vodka and beer…
…Config. and Metadata …
…Just won’t mix.
None
None
None
My Project ‘A1’
My Project ‘A1’ <alwaysUse> <repository>MyRepo</repository> </alwaysUse> MyRepo
My Project ‘A1’ <dependency>B1</dependency> <alwaysUse> <repository>MyRepo</repository> </alwaysUse> MyRepo
My Project ‘A1’ <dependency>B1</dependency> <alwaysUse> <repository>MyRepo</repository> </alwaysUse> MyRepo Project ‘B1’
My Project ‘A1’ <dependency>B1</dependency> <alwaysUse> <repository>MyRepo</repository> </alwaysUse> MyRepo Project ‘B1’
BadRepo <repository>BadRepo</repository> <dependency>C1</dependency>
My Project ‘A1’ <dependency>B1</dependency> <dependency>C1</dependency> <repository>MyRepo</repository> <repository>BadRepo</repository> MyRepo Project ‘B1’
BadRepo
My Project ‘A1’ <dependency>B1</dependency> <dependency>C1</dependency> <repository>MyRepo</repository> <repository>BadRepo</repository> MyRepo Project ‘B1’
BadRepo
None
Lesson learned
None
NO MORE STORIES, ONE MORE THING OOO fAC Ddb
None
None
None