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.2k
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.2k
Blink & Marquee: Let's get it right this time.
matthewcrist
1
280
Users Hate Slow Websites
matthewcrist
7
310
The Business Case for Responsive
matthewcrist
1
160
Honest SEO
matthewcrist
9
430
Optimize It!
matthewcrist
1
190
BBQ
matthewcrist
80
8.8k
CSS Layouting
matthewcrist
28
1.6k
Other Decks in Programming
See All in Programming
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
470
AppRouter Panel Talk
yosuke_furukawa
PRO
1
460
Snowflakeで眠ったデータを起こそう!
estie
0
140
雑に思考を整理する技術と効能
konifar
63
30k
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
10
1.4k
Java 22 Overview
kishida
1
190
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.2k
Goのmultiple errorsについて (2024年4月版)
syumai
4
1.2k
Ruby Pattern Matching
bkuhlmann
0
930
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
210
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
200
Three ways to use AI on Android: The Good, the Bad and the Ugly
marxallski
0
110
Featured
See All Featured
The Invisible Side of Design
smashingmag
294
49k
Gamification - CAS2011
davidbonilla
77
4.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
20
1.6k
Web Components: a chance to create the future
zenorocha
306
41k
The Cult of Friendly URLs
andyhume
74
5.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
11
1k
Producing Creativity
orderedlist
PRO
338
39k
Raft: Consensus for Rubyists
vanstee
133
6.3k
We Have a Design System, Now What?
morganepeng
43
6.8k
Art, The Web, and Tiny UX
lynnandtonic
290
19k
10 Git Anti Patterns You Should be Aware of
lemiorhan
649
58k
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.