Web apps for mobile - hurdles and gotchas

A presentation at MobileCamp Ljubljana in March 2010 in Ljubljana, Slovenia by Luka Kladaric

Slide 1

Slide 1

Luka Kladaric @allixsenos www.designeus.hr

Slide 2

Slide 2

state of “normal” web? @allixsenos #mclj Web applications for Mobile

Slide 3

Slide 3

it’s alive like never before new browsers, engines, frameworks & languages @allixsenos #mclj Web applications for Mobile

Slide 4

Slide 4

CSS design is still sometimes tricky but a lot better than a couple of years ago @allixsenos #mclj Web applications for Mobile

Slide 5

Slide 5

IE6 blows… …but we’re almost rid of it  @allixsenos #mclj Web applications for Mobile

Slide 6

Slide 6

the rest of it is actually alright @allixsenos #mclj Web applications for Mobile

Slide 7

Slide 7

it’s stable and hassle-free @allixsenos #mclj Web applications for Mobile

Slide 8

Slide 8

…most of the time  @allixsenos #mclj Web applications for Mobile

Slide 9

Slide 9

state of mobile web?  @allixsenos #mclj Web applications for Mobile

Slide 10

Slide 10

someone broke the time machine, it’s 2000. & 2010. out there at the same time @allixsenos #mclj Web applications for Mobile

Slide 11

Slide 11

ecosystem VERY fragmented phones & OS’s, browsers, versions @allixsenos #mclj Web applications for Mobile

Slide 12

Slide 12

rapidly developing & changing @allixsenos #mclj Web applications for Mobile

Slide 13

Slide 13

long tail of old devices, left behind @allixsenos #mclj Web applications for Mobile

Slide 14

Slide 14

no real standards we can look forward to mobile web will always be different @allixsenos #mclj Web applications for Mobile

Slide 15

Slide 15

why do we even bother? @allixsenos #mclj Web applications for Mobile

Slide 16

Slide 16

4.6 billion mobile devices. right now. 5 billion some time in 2010    feature phones smartphones, PDAs & MIDs … @allixsenos #mclj Web applications for Mobile

Slide 17

Slide 17

most are capable of consuming mobile web of some sort @allixsenos #mclj Web applications for Mobile

Slide 18

Slide 18

do you have a mobile web app? @allixsenos #mclj Web applications for Mobile

Slide 19

Slide 19

opportunities always with the user, not bound to a PC  location-aware  different situations and contexts  more powerful than you imagine  the infrastructure just needs to catch up @allixsenos #mclj Web applications for Mobile

Slide 20

Slide 20

limits screen size, resolution & orientation  input sucks  yes, even on the iphone  slow CPUs, no RAM complex stuff takes ages to parse and display  slow networks bigger stuff takes ages to load @allixsenos #mclj Web applications for Mobile

Slide 21

Slide 21

problems @allixsenos #mclj Web applications for Mobile

Slide 22

Slide 22

flaky network connections error handling is your first component  light AJAX, if you can  depending on your use-case, a local database to allow for offline/resync  @allixsenos #mclj Web applications for Mobile

Slide 23

Slide 23

forget progressive enhancement & graceful degradation too many platforms, maintenance is a nightmare  mobile browsers that strip down content are a big hit  Opera Mini, Skyfire… @allixsenos #mclj Web applications for Mobile

Slide 24

Slide 24

solutions? the facebook way  the Google Mail way  the Google Buzz way  lowest common denominator  IE Mobile, NetFront (SonyEricsson), etc.  wurfl helps, but nowhere near a silver bullet @allixsenos #mclj Web applications for Mobile

Slide 25

Slide 25

solutions? (II) one way or another, there can’t be a One True Mobile Web App  if you still don’t believe me: Mobile compatibility tables http://www.quirksmode.org/m/table.html  @allixsenos #mclj Web applications for Mobile

Slide 26

Slide 26

outside the box things get even worse when you reach outside the browser  not important with “real” web but a big issue with mobile  almost no access  NO standardization, complete lack of proper documentation  @allixsenos #mclj Web applications for Mobile

Slide 27

Slide 27

outside the box II composing an SMS with a predefined body and destination number  geo-location reliability  interface with camera & other HW  device events, notifications  @allixsenos #mclj Web applications for Mobile

Slide 28

Slide 28

links QuirksMode compatibility charts http://www.quirksmode.org/m/  dotMobi Mobile Web Developer’s guide  http://mobiforge.com/starting/story/dotmobi-mobile-web-developers-guide  WURFL http://wurfl.sourceforge.net/ @allixsenos #mclj Web applications for Mobile

Slide 29

Slide 29

questions? @allixsenos #mclj Web applications for Mobile

Slide 30

Slide 30

thank you Luka Kladaric  @allixsenos  luka@designeus.hr  www.designeus.hr  @allixsenos #mclj Web applications for Mobile