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
1.3k
13
Share
Tools of the Mobile Web
The deck from my talk at the inaugural Emerging Tech Meetup at Cantina.
Matthew Crist
February 29, 2012
More Decks by Matthew Crist
See All by Matthew Crist
Rapid Design in the Real World
matthewcrist
4
1.4k
Blink & Marquee: Let's get it right this time.
matthewcrist
1
450
Users Hate Slow Websites
matthewcrist
7
450
The Business Case for Responsive
matthewcrist
2
290
Honest SEO
matthewcrist
10
770
Optimize It!
matthewcrist
2
330
BBQ
matthewcrist
89
10k
CSS Layouting
matthewcrist
29
1.8k
Other Decks in Programming
See All in Programming
의존성 주입과 모듈화
fornewid
0
150
CDK Deployのための ”反響定位”
watany
5
900
アクセシビリティ試験の"その後"を仕組み化する
yuuumiravy
1
180
How We Practice Exploratory Testing in Iterative Development( #scrumniigata ) / 反復開発の中で、探索的テストをどう実施しているか
teyamagu
PRO
0
150
第3木曜LT会 #28
tinykitten
PRO
0
120
JOAI2026 1st solution - heron0519 -
heron0519
0
160
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
【26新卒研修資料】TDD実装演習
dip_tech
PRO
0
130
Spec-driven Development: How AI Changes Everything (And Nothing)
simas
PRO
0
430
Explore CoroutineScope
tomoeng11
0
120
The Less-Told Story of Socket Timeouts
coe401_
3
800
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
130
Featured
See All Featured
New Earth Scene 8
popppiees
3
2.1k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
280
RailsConf 2023
tenderlove
30
1.4k
How to train your dragon (web standard)
notwaldorf
97
6.6k
The Limits of Empathy - UXLibs8
cassininazir
1
320
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
490
Odyssey Design
rkendrick25
PRO
2
590
The Art of Programming - Codeland 2020
erikaheidi
57
14k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Unsuck your backbone
ammeep
672
58k
The Invisible Side of Design
smashingmag
303
52k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
170
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.