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
Mobile First: as difficult as doing things right
Search
Swwweet
November 08, 2013
Technology
10k
225
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Mobile First: as difficult as doing things right
Presentation by @htmlboy at Barcelona Developers Conference 2013.
Swwweet
November 08, 2013
More Decks by Swwweet
See All by Swwweet
Wonders from the Full Stack Fest website
swwweet
1
400
How to be the best web designer in the world.
swwweet
6
1.3k
Design for loading
swwweet
5
590
One Size Fits None
swwweet
12
930
One Size Fits None - From the Front 2013
swwweet
2
780
Responsively Responsive
swwweet
23
1.7k
La letra con píxel entra
swwweet
0
1.2k
The future of code
swwweet
4
670
RWD: Dealing with navigation
swwweet
5
580
Other Decks in Technology
See All in Technology
『自分で判断できるか』を基準に、プロダクトのハンズオン研修でAI利用の線を引いてみた / Where We Drew the Line on AI in Hands-on Training
honyanya
0
270
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
マイナンバーカード本人確認の実装比較(OAuth/OIDC Numa (Immersion) Workshop 2026) / 20260825 numa-12
oidfj
PRO
0
310
型落ちシンクライアント端末のPoEモジュールを自作したかった話
logica0419
0
460
AI駆動開発はどこまで来たのか? ファインディの最新実態調査で読み解く現在地 Devin Con Tokyo
akiratom
3
1.5k
【書籍出版記念】 10周回って、エージェント開発は RAGがすべてだった。〜RAGの歴史と開発現場で見えた実践知〜
akiratameto
21
8k
わたしが知り合いゼロの勉強会に 行けるようになるまで
r5ni4
2
810
RapidCopy2 Matrix I/Oエンジンによるファイルコピーソフトウェアの設計と実装
kengosawa2
1
430
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
「ミスを許さない手順書」を作ってみた 〜 個人的にはこれ以上できることはあまりなさそう/20260827-ssmjp-operation-procedure-update
opelab
10
7.4k
コミュニティから始まった農業IoTとの7年間 ——人との関わりが教えてくれたこと
peacemaker07
0
120
Claude Codeの体系的な理解と知識のフック
oikon48
5
3.4k
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
180
Building AI with AI
inesmontani
PRO
1
1.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
350
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
450
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
The browser strikes back
jonoalderson
0
1.6k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
Marketing to machines
jonoalderson
1
5.7k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
250
Transcript
MOBILE FIRST As difficult as doing things right Javier Usobiaga
#bdc13
@HTMLBOY Swwweet.com
None
None
None
Opera Mini
200 MILLION USERS WORLDWIDE
HATES MY WEBSITES
No @font-face No client-side JavaScript No gradients No border-radius
None
1. AN OVERWEIGHT PROBLEM
“We've remade the Internet in our image… Obese.” – Jason
Grigsby –
The average webpage is 1.617MB. Mostly images. httparchive.org
milwaukeepolicenews.com
milwaukeepolicenews.com 7MB
redrobin.com
redrobin.com 10.9MB
grolsch.com
grolsch.com 25MB
moto.oakley.com
moto.oakley.com 85MB
Just because we can, it doesn’t mean we should.
None
None
74% of mobile users won’t wait longer than 5 seconds
for a page to load bit.ly/5secondsmobile
20€/month for 1GB
20€/month for 1GB 85MB = 1.70€
US roaming: 10€/MB
US roaming: 10€/MB 85MB = 850€
None
None
2. THE IMPORTANCE OF BEING MOBILE FIRST
Content First?
User First?
Everything First!
Reduced Browser Window In Developer's Computer First
Worry about the less capable first
None
Design around real content
1 column of content + basic styles
body{max-width: 30em;}
Consider layout an enhancement: inside @media queries
@media screen and (min-width:1px){ body{ max-width: inherit; } }
<!--[if lt IE 9]> <link href=“ie8.css" rel="stylesheet" /> <![endif]-->
github.com/scottjehl/Respond
Enhance with JavaScript
if( 'querySelector' in document && 'localStorage' in window && 'addEventListener'
in window )
Cutting the mustard
None
Conditionally load: secondary assets third-party content transitions, effects AJAX stuff
Design agnostically
Design for every input
None
Design for every context
Design for every connection
3. OPTIMIZE ALL THE THINGS!
The average webpage is 1.617MB. Mostly images. httparchive.org
Can we afford another image?
Try to serve the right image size
adaptive-images.com
github.com/scottjehl/picturefill
Do retina devices need retina images?
netvlies.nl/blog/design-interactie/retina-revolution
Optimize images: ImageOptim JpegMini SVGO
Optimize everything: reduce requests combine & minify gzip
JS files belong on the footer
Do we need a JS framework?
Avoid or conditionally load: iframes social plugins third-party assets
Consider plain links for social stuff
https://twitter.com/intent/tweet?url=http://bit.ly/ ancientMistery&text=What+is+your+sound?&via=htmlboy Twitter: http://www.facebook.com/sharer.php?u=http://bit.ly/ ancientMistery&t=What+is+your+sound? Facebook: https://plus.google.com/share?url=http://bit.ly/ ancientMistery Google+:
None
There’s so much we can optimize
None
4. PERFORMANCE BUDGET
“We’ll do it later” is a lie
Performance as a design principle
“Make the page usable in less than 10 seconds on
a GPRS connection.” – BBC News –
First load: somewhere between 65KB and 100KB
“Don't make more than 20 http requests”
“Make the page weigh less than 300KB”
“1. Optimize an existing feature or asset. 2. Remove an
existing feature or asset. 3. Don’t add the new feature or asset.” – Steve Souders –
5. PERCEIVED PERFORMANCE
Avoid JS redrawings
None
None
None
Show content as soon as possible
None
FOUT: Flash Of Unstyled Text
github.com/typekit/webfontloader
300ms delay on touch devices
github.com/ftlabs/fastclick
WRAPPING UP
Web design is not about pretty pictures
None
None
wow such design very icons so flats nice font wow
dribbble such parallax
Set a performance budget in the design workflow
“What a fast website, that on top of that, is
beautiful.”
LET PEOPLE COMMUNICATE
THANKS! @htmlboy ·
[email protected]