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
Best practices
Search
Matthias Le Brun
February 27, 2019
Programming
450
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Best practices
Should we trust "best practices"? A take on dogmatism in the development industry.
Matthias Le Brun
February 27, 2019
More Decks by Matthias Le Brun
See All by Matthias Le Brun
GraphQL, Pothos & SQLite: a perfect match
bloodyowl
0
120
(why the hell did I) build a GraphQL client for the browser
bloodyowl
0
160
Boxed: bringing algebraic types to TypeScript
bloodyowl
0
190
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
340
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
520
La drôle d'histoire de JavaScript
bloodyowl
0
410
Healthy Code Collaboration
bloodyowl
0
370
Simplify your UI management with (algebraic data) types
bloodyowl
0
860
Simplify your UI management with (algebraic data) types
bloodyowl
1
590
Other Decks in Programming
See All in Programming
OpenSpecのproposalにbrainstormingを持たせてみた
tigertora7571
1
220
Building a Meta Ray-Ban display app
akkeylab
0
140
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
110
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
850
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
510
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
500
SlackアプリとLambdaの 連携を構築した話
pawn_4_s
1
120
そこに3びきプロダクトがいるじゃろう——生成AI時代における“価値が届かない理由”の構造
kosuket
0
480
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
240
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
500
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Chasing Engaging Ingredients in Design
codingconduct
0
270
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
760
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
KATA
mclloyd
PRO
35
15k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.7k
Building an army of robots
kneath
306
46k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
620
Transcript
Hello
None
Is there a great divide?
styling data a11y perf
Different jobs ?
styling data a11y perf Every company has its own definition
JS-JS-JS vs HTML-CSS-JS
Different belief system
Best practices
Separation of concerns
SEPARATION OF CONCERNS Is the separation worth it now ?
SEPARATION OF CONCERNS CSS-in-JS
SEPARATION OF CONCERNS
SEPARATION OF CONCERNS
SPAs
Semantic tags
ARIA
DRY
KISS
a.map(f).map(g) vs a.map(x !=> g(f(x)) KISS
YAGNI
Don't reinvent the wheel
DON'T REINVENT THE WHEEL Reinventing isn't bad
YAGNI Owning your code can be good
Organise your files this way Make smart and dumb components
Use redux with ducks Write tests first You must respect HTTP verbs Premature optimisation is root the root of all evil …
And there's some truth to all of them
but …
they are not necessarily accurate for your context
Your postulate might be different
Reassess over time
Best doesn't mean forever
Best doesn't mean forever
None
Thank you
Matthias Le Brun @bloodyowl Questions ?