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
Tools of the Mobile Web
Search
Matthew Crist
February 29, 2012
Programming
12
1.3k
Tools of the Mobile Web
The deck from my talk at the inaugural Emerging Tech Meetup at Cantina.
Matthew Crist
February 29, 2012
Tweet
Share
More Decks by Matthew Crist
See All by Matthew Crist
Rapid Design in the Real World
matthewcrist
4
1.3k
Blink & Marquee: Let's get it right this time.
matthewcrist
1
400
Users Hate Slow Websites
matthewcrist
7
410
The Business Case for Responsive
matthewcrist
1
240
Honest SEO
matthewcrist
9
640
Optimize It!
matthewcrist
1
280
BBQ
matthewcrist
89
9.8k
CSS Layouting
matthewcrist
28
1.8k
Other Decks in Programming
See All in Programming
バイブスあるコーディングで ~PHP~ 便利ツールをつくるプラクティス
uzulla
1
320
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
rvirus0817
0
260
Google I/O Extended Incheon 2025 ~ What's new in Android development tools
pluu
1
230
kiroでゲームを作ってみた
iriikeita
0
140
実践!App Intents対応
yuukiw00w
1
180
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
380
Understanding Kotlin Multiplatform
l2hyunwoo
0
250
管你要 trace 什麼、bpftrace 用下去就對了 — COSCUP 2025
shunghsiyu
0
210
Go製CLIツールをnpmで配布するには
syumai
2
1.1k
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
410
대규모 트래픽을 처리하는 프론트 개발자의 전략
maryang
0
110
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
17
3.7k
Featured
See All Featured
Balancing Empowerment & Direction
lara
1
530
The Pragmatic Product Professional
lauravandoore
36
6.8k
Optimizing for Happiness
mojombo
379
70k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How GitHub (no longer) Works
holman
314
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
880
The World Runs on Bad Software
bkeepers
PRO
70
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Site-Speed That Sticks
csswizardry
10
750
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Transcript
MOBILE Tools of the MOBILE web
Native Hybrid Mobile Web Frameworks
All-in-one frameworks Sencha Touch too
Frameworks allow for quick development of mobile apps. <div data-role="page"
data-theme="b"> <div data-role="header" data-theme="b"> <h1>Place Puppy Mobile</h1> </div> <div data-role="content"> <ul data-role="listview" data-inset="true" data-theme="c" data-dividertheme="a"> <li data-role="list-divider">Puppies</li> <li><a href="food.php?id=slide" data-transition="slide">Slide</a></li> <li><a href="effects.php?id=slideup" data-transition="slideup">Slide Up</a></li> </ul> <ul data-role="listview" data-dividertheme="e"> <li data-role="list-divider">List of Puppies</li> <li><a href="#" data-transition="slide">Another List of Puppies</a></li> </ul> </div> <div data-role="footer" data-position="fixed"> <h1>© 2012 Place Puppy</h1> </div> </div> No Sencha Touch example could fit in a slide.
Frameworks are great for quick development, but...
...framework apps just never feel right.
If an app looks native, it should perform natively.
Framework experiences tend to be choppy...
...and their scrolling sucks.
If you’re going with the web, embrace the web. The
good & bad parts. http://cri.st/EUli
It’s possible to use a framework while embracing the web.
http://bagcheck.com
Hybrid Mobile Web Frameworks à la carte
50% of mobile users abandon after 6-10 seconds.
Server Response Processing + Page time
Every library adds processing time.
Backbone.js Sammy.js Spine.js Javscript MVC Agility.js Knockout.js Angular.js Ember.js Eyeballs.js
Client side MVC...
... can be overkill. Handle with care.
Micro libraries can ensure you only use what you need.
jQuery Zepto Zest http://cri.st/EdMn http://zeptojs.com/ > >
Ender.js helps too... “Build only what you need, when you
need it.”
http://microjs.com/
~92% of mobile is webkit...
...build if it were 0%
Replace JavaScript animations with CSS3...
...fall back to Javascript if you have to.
CSS3’s translate3d utilizes hardware acceleration. .selector {transform: translate3d(0,0,0)}
Use local storage to cache to maximize performance. window.localStorage.set(‘something’, variable);
Cache manifest in HTML5 can reduce calls to the server.
<html manifest="puppy.appcache"> ... </div> CACHE MANIFEST puppy.html puppy.css jquery.min.js puppy.js puppy.html puppy.appcache
Mobile Web Frameworks à la carte Responsive Design
Great for content sites and some apps.
Doesn’t solve 100% of the problem.
Use responsive principals for device targeted sites.
Frameworks à la carte Responsive Design Fin.