Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Front-End Ops - jQuery Conf Chicago 2014
Search
Alex Sexton
September 13, 2014
Technology
1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Front-End Ops - jQuery Conf Chicago 2014
Alex Sexton
September 13, 2014
More Decks by Alex Sexton
See All by Alex Sexton
Your Very Own Component Library
slexaxton
5
770
Hacking Front-End Apps
slexaxton
3
2.5k
Practicing Safe Script
slexaxton
18
3k
Other Decks in Technology
See All in Technology
AX時代の自治体支援リソース再配分と役割分担の再構成:戦略とロードマップ(概要)
sishi2026
0
140
E2Eってつらくないですか?E2Eの管理コストを下げる手段とその実践
akaboshinit
6
2.8k
スマートロックを支えるFlutter × ネイティブ連携の実践 / Flutter and Native Integration in Practice: Powering Smart Locks
bitkey
PRO
0
120
LLMの知識とAIエージェント
happysamurai294
0
130
攻撃 3 時間 vs 復旧 10 時間。アクセスキー流出の非対称性を体感するために CTF を作った話
kazzpapa3
1
100
Claude for Google Workspaces ポン出し/claude-for-google-workspace-slide-conversion
emiki
0
13k
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
5
2.5k
Vibe-to-Spec開発_実践ガイド
happysamurai294
0
130
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
0
140
Claude Codeから見る、エンジニアの世界の変容とその先
oikon48
7
4.9k
OneLakeをデータソースにした AI Search(Foundry IQ)の ライフサイクル管理
ryuseiiida
0
200
素人でもできた!AIを使った短編小説創作入門
delhi09
PRO
0
250
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
Site-Speed That Sticks
csswizardry
13
1.6k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.9k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
290
Raft: Consensus for Rubyists
vanstee
143
7.8k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
550
First, design no harm
axbom
PRO
2
1.4k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.9k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
Transcript
Front-End Ops Alex Sexton | 2014
None
A little under a year later…
None
Naming Things #hardCSproblems
Regressive Enhancement
Polyfill
Prollyfill
None
None
Parlayfill
Mollyfill
ANYWAYS
Front-End Ops Alex Sexton | 2014
FEO
UGLY (in spanish)
FeOps
None
Iron Ops catchy
I pay the Iron Price for lower latency
What is Front-End Ops?
None
“Some weird terms you invented to describe things that don’t
exist.” - John Edgar, Digital Ocean
None
First Of All
More Importantly…
That’s the whole point.
Serving webpages is really hard.
that’s why we have conferences for this stuff (jQConf, FEOpsConf)
Conferences That Don’t Exist
HTML &ENTITY; CONF
SundayMorningConf
Front-End Ops is the collection of things you can do
to make serving webpages easier. opposite of harder
So you can focus on your product.
None
Mature FEOps benefits the people who don’t have time to
think about this stuff.
Lots of folks agree!
So really what is it?
The App Everything Else
The App Everything Else FEOps™
Article Recap
“Front-End Ops Engineers are the bridge between an application’s intent
and an application’s reality”
Why?
We’re collectively insane.
None
Why now?
Application logic is being deferred to the client side.
Performance Testing
Error Logging
Lifecycle Logging
Measurement over time
A Front-End Ops Engineer enables long-term progress
Performance is the foundation on which user experience is built.
A UX in the DOM is worth two on the
wire.
Speed is the metric that we measure by.
Speed of app.
Speed of tools.
Speed of development.
None
(all of these can be measured and tracked)
(all of these can be measured and tracked) ((but it’s
important to read the data right))
Speed of app.
Speed up your app In 5 Simple Steps How To
Step 1 forget everything you know because it’s wrong
Step 2 it’s probably the network
Step 3 Probably Read Ilya’s book
Step 4 measure
Step 5 measure
1) Forget everything 2) It’s probably the network 3) Ilya’s
book 4) Measure 5) Measure Recap
Chrome DevTools Flame Graphs, CPU Profiles, and Repaints/Reflows info are
invaluable.
The limiting factor of your system should be the speed
of light. Assuming you have Fiber
0 50 100 150 200 THEORETICAL GRAPHS
OS X Android iOS Blackberry 1200ms 0ms
1200ms 0ms
1200ms 0ms
Distribution of Load Time
Desktop Mobile
Two distinct loading curves
What you see when you add them together.
ಠ_ಠ
Measurement
Measurement
If I had to pick one part that was most
important to FEOps, it’d be all of it
but #2 would be MEASUREMENT
Measure twice. Optimize once.
Make a dashboard.
Things you can put in a dashboard
Speed Index Over Time
Speed Index Over Time And then draw lines where commits
happen.
Speed Index Over Time And then draw lines where commits
happen. And then link to the diff between tests
image is of speedcurve.com
Things you can put in a dashboard
Page Weight Over Time
Page Weight Over Time gzipped/ungzipped
Page Weight Over Time gzipped/ungzipped Broken down by filetype
Requests Over Time 0E+00 2.5E+01 5E+01 7.5E+01 1E+02
Errors There are lots of great companies that will help
you do this these days.
Build Time Over Time
Speed of tools. usually build
Rule #1
The time between making a change, and seeing it in
your app must approach 0.
Rule #2
Never do anything twice.
AKA “Cache Everything”
(feel free to do two things at the same time
though)
Speed of development.
Speed of development. AKA Developer Happiness
Spare no expense.
Take the time to make source maps work.
There should be one easy command to get everything to
work.
There should be one easy command to get everything to
work. Vagrant can help with environments
Turn on LiveReload
Implement Lifecycle Logging
Set a calendar reminder to update your dependencies
Have a rigorous Style Guide that everyone follows, and that
robots yell about. Lint!
If we take care to build robust tools around these
FEOps ideals, ! developers will need to master less, and will be able to focus on users more.
None
Let’s make fast, measurement driven, easily-maintained web applications the starting
point.
Thanks @slexaxton