$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Frontend Web Development in 2021+
Search
Arnelle Balane
April 24, 2021
Technology
0
180
Frontend Web Development in 2021+
Arnelle Balane
April 24, 2021
Tweet
Share
More Decks by Arnelle Balane
See All by Arnelle Balane
Introduction to building Chrome Extensions
arnellebalane
0
120
Color Palettes Of The Most Colorful Birds
arnellebalane
0
130
Let's build a video streaming app using Web technologies
arnellebalane
0
150
Let's build a video calling app with Web technologies and Firebase!
arnellebalane
0
160
Ridiculous Scientific Names
arnellebalane
0
250
Fishes With Terrestrial-Animal Names
arnellebalane
0
150
Making the Web more capable with Project Fugu
arnellebalane
0
130
Extending CSS using Houdini
arnellebalane
0
120
Securing user accounts with WebAuthn
arnellebalane
0
47
Other Decks in Technology
See All in Technology
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
170
Ruby で作る大規模イベントネットワーク構築・運用支援システム TTDB
taketo1113
1
260
EM歴1年10ヶ月のぼくがぶち当たった苦悩とこれからへ向けて
maaaato
0
270
ML PM Talk #1 - ML PMの分類に関する考察
lycorptech_jp
PRO
1
800
eBPFとwaruiBPF
sat
PRO
4
2.5k
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
190
日本Rubyの会の構造と実行とあと何か / hokurikurk01
takahashim
4
1k
エンジニアリングマネージャー はじめての目標設定と評価
halkt
0
270
コミューンのデータ分析AIエージェント「Community Sage」の紹介
fufufukakaka
0
470
モダンデータスタック (MDS) の話とデータ分析が起こすビジネス変革
sutotakeshi
0
450
LLM-Readyなデータ基盤を高速に構築するためのアジャイルデータモデリングの実例
kashira
0
230
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
260
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
How STYLIGHT went responsive
nonsquared
100
6k
We Have a Design System, Now What?
morganepeng
54
7.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.2k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Producing Creativity
orderedlist
PRO
348
40k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
The Language of Interfaces
destraynor
162
25k
Transcript
FRONTEND WEB DEVELOPMENT IN 2021+ Arnelle Balane @arnellebalane
Arnelle Balane Tech Lead @ Newlogic Google Developers Expert for
Web Technologies @arnellebalane UncaughtException @uncaughtxcptn Subscribe to our channel! /UncaughtException
bit.ly/fe-web-in-2021
Shawn Wang swyx.io/js-third-age
The First Age 1997 - 2007 Building out the JavaScript
language
The First Age 1997 - 2007 1 2 3 4
☠
The First Age 1997 - 2007
The First Age 1997 - 2007
The First Age 1997 - 2007
Exploring and expanding the JavaScript language The Second Age 2009
- 2019
The Second Age 2009 - 2019 5
The Second Age 2009 - 2019
The Second Age 2009 - 2019 Web frameworks
The Second Age 2009 - 2019 Task runners
The Second Age 2009 - 2019 Bundlers
The Second Age 2009 - 2019 UI libraries / frameworks
The Second Age 2009 - 2019 Metaframeworks
The Second Age 2009 - 2019 Code quality tools
The Second Age 2009 - 2019 2015 2018 2016 2019
2017 2020
The Second Age 2009 - 2019
The Second Age 2009 - 2019 Desktop and mobile
Clearing away legacy assumptions Collapsing layers of tooling The Third
Age 2020 and beyond
• Synchronous, designed for server environments • Doesn’t natively work
on browsers • Doesn’t work too well with static analysis tools Clearing away legacy assumptions Reliance on CommonJS
• Works on both server and browser environments • Works
well with static analysis tools, tree-shakeable Moving to ES Modules
• “You should be able to use a bundler because
you want to, and not because you need to” • Provides unbundled ES Modules that run in the browser • Streaming imports: convert bare imports into CDN imports from Skypack Snowpack
Snowpack Source code Loaded in browser
• Uses native primitives of the Web platform • Relies
on packages being compatible with native ES Modules • Streaming imports: safely import packages from npm or Skypack without installation wmr
wmr Import from npm Import from Skypack
• Opts for ES Modules using absolute or relative URLs,
even for its standard library Deno
Deno Import from npm
Pros in using JS • Easier to contribute to projects
• Rich ecosystem Clearing away legacy assumptions JS tools must be written in JS Pros in using non-JS • Compile to native binaries • Usually faster
• Bundler and minifier written in Go • 10x -
100x faster than JS-based tools
None
• JavaScript / TypeScript compiler written in Rust swc
The Third Age Collapsing layers of tooling One thing doing
many things well, instead of many things doing one thing well
Frontend Decision Fatigue • Animations • Testing • Linting •
Code formatting • Bundling • Frontend framework / library • Client side routing • State management • Form management • Data fetching • Styling
Frontend Metaframeworks
• Whole new runtime • Comes with TypeScript support, linting,
formatting, testing, bundling, and a standard library out of the box Deno
Deno
• Designed to replace Babel, ESLint, webpack, Prettier, Jest, etc.
• Bundling, compiling, docs generation, formatting, linting, minification, testing, type checking, etc. Rome
Rome
• Collapsing everything from reactivity, state management, and animations into
a compiler • No more Virtual DOM layer
None
None
None
Web Development in 2021 and beyond • Faster tools •
Better DX and UX • ES Modules-first • Collapsed layers • More secure
Thank you! Frontend Web Development in 2021+ Arnelle Balane @arnellebalane