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
Lessons Learned in Mobile Web App Development
Search
Brandon Keepers
PRO
May 23, 2011
Programming
16
670
Lessons Learned in Mobile Web App Development
Brandon Keepers
PRO
May 23, 2011
Tweet
Share
More Decks by Brandon Keepers
See All by Brandon Keepers
Automating Software Development
bkeepers
PRO
2
320
Building the GitHub workspace app
bkeepers
PRO
1
240
Contributing to Your Career
bkeepers
PRO
2
590
A Maturity Model for Embracing Open Source Software
bkeepers
PRO
3
770
Open Source Principles for Internal Engineering Teams
bkeepers
PRO
7
1.2k
Carbon, Automobiles, Bebop & Fashion
bkeepers
PRO
1
350
Tending Your Open Source Garden, v2
bkeepers
PRO
1
420
Tending Your Open Source Garden
bkeepers
PRO
2
810
The Loyal Renegade
bkeepers
PRO
3
660
Other Decks in Programming
See All in Programming
Fragment Composition of GraphQL
quramy
13
1.6k
Build Apps for iOS, Android & Desktop in 100% Kotlin With Compose Multiplatform (mDevCamp 2024)
zsmb
0
480
Komplexe Oberflächen mit SVG und der Web Animation API
joergneumann
0
680
効率化に挑戦してみたらモバイル開発が少し快適になった話
ryunakayama
0
140
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
530
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
190
ServerAction で Progressive Enhancement はどこまで頑張れるか? / progressive-enhancement-with-server-action
takefumiyoshii
6
460
AppRouter Panel Talk
yosuke_furukawa
PRO
1
490
Git Lint
bkuhlmann
4
760
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
490
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
540
Anthropic Cookbook のおすすめレシピ
schroneko
7
1.3k
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
26
5.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
8
3.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
Embracing the Ebb and Flow
colly
80
4.2k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
228
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
15
1.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
261
12k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
Transcript
Ordered List Brandon Keepers Grand Rapids Web Development Group May
23, 2011 Lessons Learned in Mobile Web App Development
?
~6 months
The App
The App Static HTML
The App Static HTML CSS
The App Static HTML CSS JSON API
The App Static HTML CSS JSON API JavaScript
The App Static HTML CSS JSON API JavaScript JavaScript
The App Static HTML CSS JSON API JavaScript JavaScript JavaScript
CSS challenges
-webkit-* iOS Android Blackberry Palm Symbian
position: fixed;
Header Footer Scrollable Content
ader oter llable ntent
header { position:fixed; top:0; right:0; left:0; height:56px; } .content {
margin:56px 0 48px 0; } footer { position:fixed; bottom:0; right:0; left:0; height:56px; } fixed ader oter llable ntent
header { position:fixed; top:0; right:0; left:0; height:56px; } .content {
margin:56px 0 48px 0; } footer { position:fixed; bottom:0; right:0; left:0; height:56px; } fixed doesn’t w ork ader oter llable ntent
header { position: absolute; top:0; right:0; left:0; height:56px; } .content
{ position: absolute; top:56px; bottom: 48px; right:0; left:0; overflow: auto; } footer { position: absolute; bottom:0; right:0; left:0; height:56px; } absolute ader oter llable ntent
header { position: absolute; top:0; right:0; left:0; height:56px; } .content
{ position: absolute; top:56px; bottom: 48px; right:0; left:0; overflow: auto; } footer { position: absolute; bottom:0; right:0; left:0; height:56px; } absolute doesn’t w ork ader oter llable ntent
None
iScroll
START FINISH DEMO
START FINISH DEMO
CSS3 Effects
CSS3 Effects -webkit-box-shadow
CSS3 Effects -webkit-box-shadow background: -webkit-gradient(…)
CSS3 Effects -webkit-box-shadow background: -webkit-gradient(…) -webkit-transform
None
Acceleration Hardware
START FINISH DEMO
START FINISH DEMO
Solution No CSS3 fanciness No animation on Android
JavaScript challenges
Debugging is hard
None
None
None
Execution Priority iOS prioritizes UI Android prioritizes JavaScript
Organization Code
Controllers Views Views Models ?
$ find public/javascripts/ -type f | wc -l 70 $
du -sh public/javascripts/ 916K public/javascripts/
Concated & Minified 161K
Lessons Learned
Lessons Learned mobile devices are slow-ish
Lessons Learned mobile devices are slow-ish the browser can but
the device can’t
Lessons Learned mobile devices are slow-ish the browser can but
the device can’t lack of consistency across Android devices
Resources http://www.html5rocks.com/tutorials/speed/html5/ http://bit.ly/grwebdev-mobile
Ordered List Thank you!
[email protected]
@bkeepers Brandon Keepers Grand Rapids
Web Development Group May 23, 2011