• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Mobile Web Apps in a Nutshell
 

Mobile Web Apps in a Nutshell

on

  • 1,544 views

Presentation from NYC Mobile Web Meetup:...

Presentation from NYC Mobile Web Meetup:
http://www.meetup.com/NYC-Mobile-Web/

An overview on what Mobile Web is, why it matters and what you should consider, along with an overview of HTML 5, device APIs, and Frameworks that can help you start.

About Me:
Nicolae Rusan, Cofounder of Frame:
http://www.useframe.com/

Statistics

Views

Total Views
1,544
Views on SlideShare
1,544
Embed Views
0

Actions

Likes
1
Downloads
24
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • High level overview to get you started on HTML 5 mobile web development.What does Mobile Web mean, what frameworks are out there to help you out, what are useful resources?
  • 5 minute way to turn your existing e-commerce site into beautiful, immersive touch experience for tablet visitors. I’ll talk a bit about why we focus on mobile web later in this presentation.Frame v1 built on top of Sencha (our experiences and lessons discussed here)
  • Optimizes Sites + Apps in the BrowserReally when people talk about mobile web, they talk about a range of technologies: everything from just providing versions of a website that looks reasonable on a range of screen sizes to building something that feels a lot more like a native app.
  • Designing for Screens of Various Sizes, and handling variety of device capabilityWhat APIs are available on that particular device, how do you handle the various APIs exposed for the devices in your code (e.g. they all perform some function differently). Frameworks can help here to abstract the differences between device APIs.You also have to design for the various screen sizes – which means more design time, and more testing time. One option here is to go with Responsive Design (e.g. start by designing for the smallest screen, and using only CSS 3 Media Queries, work your way up to enhancing the look for larger and larger screens).
  • Taking Advantage of Device Capabilitiesit’s mobile so you can do interesting things: e.g. GPS, accelorometer, gyroscope, orientation detection, Camera API (available on some Android devices).As time passes, devices will have more and more sensors/device capabilities – always interesting to explore the API and think of unique ways to leverage them to enhance user experience.
  • With the added opportunities that mobile presents, it also presents new limitations:e.g. slower internet speeds on 3G and other networks. Memory matters again (e.g. when working on Frame, we had to learn about how the mobile browsers handle memory, so that we could enable it to load more images without crashing).There’s not more Flash, so need to learn the equivalent HTML 5 technologies to replace itIn general, you will spend more time thinking about optimizing performance for mobile than for desktop – because the bottlenecks are larger.
  • There’s many reasons to choose Mobile WebOne of the most often stated reasons, is less work:The holy grail of mobile web is to have a single code base, that works everywhere.
  • Even though the aim is to have a single codebase, and even though frameworks exist that claim to support that, it still takes quite a bit of tweaking to get your codebase to work properly across all devices. But it’s improving.
  • If you have a site with a large existing customer base, it is worthwhile to also optimize your site because lots of people will follow their usual behavior of browsing to your site.. You can still offer an app in parallel to optimizing your site, and creating an amazing touch experience there.In some specific use cases, people are more likely to browse your site than download an app. For example, for Frame, we have the hypothesis that for e-commerce stores that don’t have a large inventory, people are more likely to want to shop via
  • I’ve watched my Mom use an iPad for example, and she always tends to go through the browser rather than the App Store. For older consumers, I think this is still their modus operandi.For web developers, it’s nice to be able to port years of experience in HTML, CSS and Javascript. You’ll have to likely learn a few new things (e.g. to support touch), and maybe learn a framework, but it’s definitely a smaller learning curve than learning Objective-C
  • - PhoneGap and other frameworks that enable you to run as an app also give you a way to have access to some Device APIs you don’t get natively in the browser.
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Features:Built on top of Ext JS 4Entire MVC framework.Close integration with PhoneGap (although seen a bunch of issues with it)Supports lots of touch events.Kitchen Sink.Lots of components: Carousel, Picker, Toolbars, Animations, Charts and Graphs, Media etc.Cards to do Ajax, various animationsSeems to be most activeReasonably well documented (but found that in practice hit huge number of bugs), and it’s very heavyPay for SupportSencha 2.0 – could addresssomeof the cons (faster load times)- If you want to see an example app our CTO built while testing out Sencha 2.0 check out RedditUI the fully web browser UI.Works across Android, Desktop, Safari, BlackberryBunch of sample apps online that can help give you guidance on the code (would be nice if they walked through the reasoning of why they did things the way they did more)http://dev.sencha.com/deploy/touch/examples/kitchensink/Windows phone development is in works, smaller footpring, automanaged components (all this will make it easier) – they need to shed a lot of weight.Cons:Creates a heavy DOMSuper heavy, can be real overkill (partially because built on Ext 4.0Weird bugs and orientation issues300kb, 40K lines of code.Can’t take just components you want in an easy wayStill feels a bit closed because you pay for support, and lots of documentation is behind that wall in forums.Changing Quickly – what’s the right way to do it, what’s stable and what’s not?Full UI elements: Carousels,CostFree as long as not building an application builder.Support costs (299 forum access, – 1400 for phone and emergency bug fixes)
  • Baby Sencha?No MVCHad a bad impression before, but quite responsiveNo carouselsGeoLocationOfflineSwipedetection
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Safari, Chrome, Firefox Opera – mbileWebkit browsersTried to make it as fast as pssible to download2KB ~ leverage mobile –webkit features Check out their presentationhttp://mir.aculo.us/2010/10/28/zepto-js-a-jquery-compatible-mobile-javascript-framework-in-2k-presentation/Jquery like syntax, animations, selection etc.Also touch events (swipeleft, swiperight, tap, doubletap, etc that you can bind to elements) pincinpinchout etc., aupport for ajax, nice support for environment.Active development.Their Websitehttp://zeptojs.com/
  • Add to homescreenUsed by sites like Nike.com, appleGreat Load times – well written codeIscroll for scrollable areas. Some inertiaReally nice slide in menuPickerFull Page Carousel (Swipe View)Pull to refreshCarouselCustom scrollbarsVersion for just mobile as well (iscroll-lite.js)Used by apple, touchScroll is pretty nice.Accordian Hardware accelerated
  • Add to homescreenUsed by sites like Nike.com, appleGreat Load times – well written codeIscroll for scrollable areas. Some inertiaReally nice slide in menuPickerFull Page Carousel (Swipe View)Pull to refreshCarouselCustom scrollbarsVersion for just mobile as well (iscroll-lite.js)Used by apple, touchScroll is pretty nice.Accordian Hardware accelerated
  • Depending on your needs, may make sense for perf reasons to use no frameworks at all, and write from scratch. Here’s some starting points for how to write a web app.
  • Do they know your site?Are they more likely to browse to your site than download an app for it? i.e. not enough for an app

Mobile Web Apps in a Nutshell Mobile Web Apps in a Nutshell Presentation Transcript