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
0
420
Best practices
Should we trust "best practices"? A take on dogmatism in the development industry.
Matthias Le Brun
February 27, 2019
Tweet
Share
More Decks by Matthias Le Brun
See All by Matthias Le Brun
(why the hell did I) build a GraphQL client for the browser
bloodyowl
0
100
Boxed: bringing algebraic types to TypeScript
bloodyowl
0
120
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
290
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
420
La drôle d'histoire de JavaScript
bloodyowl
0
360
Healthy Code Collaboration
bloodyowl
0
290
Simplify your UI management with (algebraic data) types
bloodyowl
0
810
Simplify your UI management with (algebraic data) types
bloodyowl
1
530
Migrating a large Reason+React codebase to hooks
bloodyowl
0
560
Other Decks in Programming
See All in Programming
dynamic!
moro
9
6.6k
Local Peer-to-Peer APIはどのように使われていくのか?
hal_spidernight
2
450
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
12k
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
180
ИИ-Агенты в каждый дом – Алексей Порядин, PythoNN
sobolevn
0
150
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
Advance Your Career with Open Source
ivargrimstad
0
350
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
600
Playwrightはどのようにクロスブラウザをサポートしているのか
yotahada3
7
2.3k
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
Web技術を最大限活用してRAW画像を現像する / Developing RAW Images on the Web
ssssota
2
1.2k
Cloudflare AgentsとAI SDKでAIエージェントを作ってみた
briete
0
100
Featured
See All Featured
Done Done
chrislema
185
16k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Designing Experiences People Love
moore
142
24k
Code Reviewing Like a Champion
maltzj
525
40k
We Have a Design System, Now What?
morganepeng
53
7.8k
Navigating Team Friction
lara
189
15k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
45
2.5k
Unsuck your backbone
ammeep
671
58k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Bash Introduction
62gerente
615
210k
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 ?