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.7k
CSS Layouting
matthewcrist
28
1.8k
Other Decks in Programming
See All in Programming
Azure AI Foundryではじめてのマルチエージェントワークフロー
seosoft
0
200
効率的な開発手段として VRTを活用する
ishkawa
0
160
PicoRuby on Rails
makicamel
2
140
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
1k
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
920
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
310
What's new in AppKit on macOS 26
1024jp
0
150
20250628_非エンジニアがバイブコーディングしてみた
ponponmikankan
0
710
AI コーディングエージェントの時代へ:JetBrains が描く開発の未来
masaruhr
1
200
AIと”コードの評価関数”を共有する / Share the "code evaluation function" with AI
euglena1215
1
180
明示と暗黙 ー PHPとGoの インターフェイスの違いを知る
shimabox
2
600
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
910
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
YesSQL, Process and Tooling at Scale
rocio
173
14k
The Language of Interfaces
destraynor
158
25k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
Agile that works and the tools we love
rasmusluckow
329
21k
Designing Experiences People Love
moore
142
24k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Writing Fast Ruby
sferik
628
62k
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.