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
Engineering Faster Web Experiences in Plain Sight
Search
Otemuyiwa Prosper
April 13, 2019
Programming
0
260
Engineering Faster Web Experiences in Plain Sight
Otemuyiwa Prosper
April 13, 2019
Tweet
Share
More Decks by Otemuyiwa Prosper
See All by Otemuyiwa Prosper
A.I (Artificial Intelligence) for the rest of us
unicodeveloper
2
570
The Complete Guide to building In-App Notifications in Web Apps
unicodeveloper
0
320
The Golden Ticket: Becoming a Superstar & Impactful Open Source Contributor
unicodeveloper
0
140
Optimizing Developer Workflow with Sourcegraph
unicodeveloper
0
190
Code Search with Laravel and Sourcegraph
unicodeveloper
1
350
Lightning Talk - JAMStack
unicodeveloper
0
760
Authentication & Authorization in GraphQL
unicodeveloper
5
2.1k
Authentication & Authorization in Next.js
unicodeveloper
3
840
webpack 4: Lighting the fire
unicodeveloper
3
580
Other Decks in Programming
See All in Programming
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
740
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
110
エンジニアとして高みを目指す、 利益を生み出す設計の考え方 / design-for-profit
minodriven
23
11k
Back to the Future: Let me tell you about the ACP protocol
terhechte
0
120
Learn CPU architecture with Assembly
akkeylab
1
1.3k
Django Ninja による API 開発効率化とリプレースの実践
kashewnuts
0
700
CSC305 Lecture 04
javiergs
PRO
0
230
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
220
CSC305 Lecture 01
javiergs
PRO
1
380
Local Peer-to-Peer APIはどのように使われていくのか?
hal_spidernight
2
410
ててべんす独演会〜Flowの全てを語ります〜
tbsten
1
220
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
0
540
Featured
See All Featured
Producing Creativity
orderedlist
PRO
347
40k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
How STYLIGHT went responsive
nonsquared
100
5.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Become a Pro
speakerdeck
PRO
29
5.5k
It's Worth the Effort
3n
187
28k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
How GitHub (no longer) Works
holman
315
140k
Code Reviewing Like a Champion
maltzj
525
40k
Transcript
ENGINEERING: WEB EXPERIENCES PROSPER OTEMUYIWA | forloop Zimbabwe, Harare 2019
FASTER ...in plain sight
Harare is Cold, Why is Lagos so hot?
VIBRANIUM OPEN SOURCERER @unicodeveloper
DEVELOPER ADVOCATE | COMMUNITY BUILDER forLoop Africa Laravel Nigeria Angular
Nigeria Webpack Africa
STEVE: SOUDERS Ex-Head Performance Engineer @ Google Ex-Chief Performance Officer
@ Yahoo! ..Inspired by
YOUR USERS NOW!
WHAT DO YOU NEED TO DO TO ENGINEER FAST LOADING
EXPERIENCES
Let’s go!
1. FEWER HTTP REQUESTS! The fewer the requests, the faster
content is served to the users.
- Webpack - Parcel TOOLS FOR MERGING
2. TAKE ADVANTAGE OF CDNS! ⚓ ..push assets to the
edge, use a content delivery network
3. Stylesheets at the top SCRIPTS at the bottom
4. Prefetch Resources Use Link tags to prefetch <link rel="prefetch"
href="/fonts/arial.ttf" as="font" crossorigin> <link rel="prerender" href="/next-page.html">
5. Minify Everything
#Bundle & Minify Everything ⚓ Just Webpack away!
6. Defer Scripts <script defer></script> - Defer heavy loading scripts
7. Have a font loading strategy
8. Code Splitting & Tree Shaking 1. Webpack 2. Rollup
3. Send less JavaScript to the user
How do you handle Images? Yourself???
9. Image & Files Handling ⚓ 1. Let a service
handle your images & files e.g Cloudinary 2. Compression of Images & Files 3. Progressive Image Rendering 4. Lazy Loading
speedcurve.com Chrome DevTools webspeedtest.cloudinary.com Tools for measuring speed? ⛷
Web speed - Image Analysis
Network/Performance Tab - Chrome DevTools
Speed Curve
Now, go forth & make your site fast
THANKS, ANY QUESTIONS? I’M EVERYWHERE GITHUB MEDIUM TWITTER @unicodeveloper CODEPEN