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
79
Boxed: bringing algebraic types to TypeScript
bloodyowl
0
98
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
280
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
400
La drôle d'histoire de JavaScript
bloodyowl
0
350
Healthy Code Collaboration
bloodyowl
0
270
Simplify your UI management with (algebraic data) types
bloodyowl
0
800
Simplify your UI management with (algebraic data) types
bloodyowl
1
520
Migrating a large Reason+React codebase to hooks
bloodyowl
0
540
Other Decks in Programming
See All in Programming
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.3k
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
ニーリーにおけるプロダクトエンジニア
nealle
0
100
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
210
AIエージェントはこう育てる - GitHub Copilot Agentとチームの共進化サイクル
koboriakira
0
330
Julia という言語について (FP in Julia « SIDE: F ») for 関数型まつり2025
antimon2
3
980
C++20 射影変換
faithandbrave
0
520
Java on Azure で LangGraph!
kohei3110
0
170
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
1
470
「Cursor/Devin全社導入の理想と現実」のその後
saitoryc
0
140
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
760
Cursor AI Agentと伴走する アプリケーションの高速リプレイス
daisuketakeda
1
130
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.7k
Optimizing for Happiness
mojombo
379
70k
Being A Developer After 40
akosma
90
590k
A designer walks into a library…
pauljervisheath
206
24k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Building Applications with DynamoDB
mza
95
6.5k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Product Roadmaps are Hard
iamctodd
PRO
53
11k
4 Signs Your Business is Dying
shpigford
184
22k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Navigating Team Friction
lara
187
15k
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 ?