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
330
Users Hate Slow Websites
matthewcrist
7
350
The Business Case for Responsive
matthewcrist
1
190
Honest SEO
matthewcrist
9
500
Optimize It!
matthewcrist
1
230
BBQ
matthewcrist
83
9.1k
CSS Layouting
matthewcrist
28
1.7k
Other Decks in Programming
See All in Programming
長期運用プロダクトの開発速度を維持し続けるためのリファクタリング実践例
wataruss
8
2.7k
ECMAScript、Web標準の型はどう管理されているか / How ECMAScript and Web standards types are maintained
petamoriken
3
390
実践!難読化ガイド
mitchan
0
140
『ドメイン駆動設計をはじめよう』中核の業務領域
masuda220
PRO
5
970
Jakarta EE meets AI
ivargrimstad
0
370
Regular Expressions, REXML, Automata Learning
makenowjust
0
220
Scala アプリケーションのビルドを改善してデプロイ時間を 1/4 にした話 | How I improved the build of my Scala application and reduced deployment time by 4x
nomadblacky
1
170
KSPの導入・移行を前向きに検討しよう!
shxun6934
PRO
0
190
2024 컴포즈 정원사
jisungbin
0
150
Swiftコードバトル必勝法
toshi0383
0
150
Web技術を駆使してユーザーの画面を「録画」する
yukukotani
13
6.6k
Kotlin 2.0 and Beyond
antonarhipov
2
150
Featured
See All Featured
Visualization
eitanlees
142
15k
A better future with KSS
kneath
235
17k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
What's new in Ruby 2.0
geeforr
340
31k
For a Future-Friendly Web
brad_frost
174
9.3k
Testing 201, or: Great Expectations
jmmastey
36
7k
The Cost Of JavaScript in 2023
addyosmani
42
5.6k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
36
1.7k
Music & Morning Musume
bryan
46
6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
45
4.8k
Art, The Web, and Tiny UX
lynnandtonic
294
20k
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.