SlideShare a Scribd company logo
HTML5/Mobile Web Development
Top Ten Tips and Tricks




                               1
Neudesic Mobility



 Windows Phone         iPhone                         iPad                         Android        HTML5/Web
   Realtor.com*          Jeep*                    SimonMed                            ACS        Jones Lang LaSalle

 Kelly Blue Book*    Whole Foods                       VHA                   Kelley Blue Book*       Nicor Gas

 Premera Mobile*      Guidestone*                 Scan Health              Android Azure SDK*      IFF New York

    Microsoft       TriWest Medical*          Symetra Financial                      Scion         SCAN Health


                            * Available on AppStore, Google Market, Windows Marketplace

                                                                                                                      2
Top Ten Tips and Tricks



                          3
Mobile Web or Hybrid?
                         Make an early decision on Mobile Web via
                          Browser or Hybrid Application

                         GeoLocation and Offline will work well in
                          both
                         Photo capture? Contacts integration?
                          Push Notifications? Deployment via the
                          AppStore? Hybrid solution.

                         Hybrid solution = A native application
                          exposing web content, with bi-directional
                          JavaScript bridge

                         Roll your own (hook in to the event
                          handlers through WebView control)
                         Use Framework, such as Apache Cordova



                                                                 4
Mobile Web or Hybrid?
                         Make an early decision on Mobile Web via
                          Browser or Hybrid Application

                         GeoLocation and Offline will work well in
                          both
                         Photo capture? Contacts integration?
                          Push Notifications? Deployment via the
                          AppStore? Hybrid solution.

                         Hybrid solution = A native application
                          exposing web content, with bi-directional
                          JavaScript bridge

                         Roll your own (hook in to the event
                          handlers through WebView control)
                         Use Framework, such as Apache Cordova



                                                                 5
Development and Testing Environment
  Setup up a robust development and
   testing environment

  Your Favorite IDE for HTML: WebStorm,
   TextMate, Visual Studio
  Browser capable of inspecting
   DOM/JavaScript debugging: Safari,
   Chrome, IE9
  Device or Device Emulator: Mac or iPod
   Touch if targeting iOS. Android device vs.
   Emulator recommended.

  Unit Test Framework: QUnit used,
   recommended
  Device testing: Perfecto Mobile
   (virtual/video devices)



                                                6
Client Side and Navigation
                                                              Use Client Side JavaScript instead of
                                                               Server-Side Scripts

 <div data-role="page" id="login" class="LoginScreen">        Move more on client side JavaScript:
      <div data-role-”header”>
      </div>
                                                              Performance will be better (no round trips
      <div data-role="content" class="ui-body ui-content">     to server)
      </div>                                                  Offline easier to accomplish
      <div data-role="footer" data-position="fixed">
      </div>
                                                              Enables server side to be abstracted
 </div>
                                                              Pre-fetch as many pages into the DOM as
                                                               possible (at startup)
                                                              Server side calls should be asynchronous
                                                               JSON endpoints

                                                              Caveat: Navigation! Prefetching too
                                                               much into the DOM can make for
                                                               confusing navigation.
                                                              Recommend hub and spoke model.
                                                                                                       7
Offline Support
  Design for running offline

  Enable offline by creating cache.manifest
  Specify all of the files (including client
   side scripts) you require offline in the
   manifest
  Handle client side functionality (e.g.
   submit button) with JavaScript checks

  Tip #1 – JavaScript on application load to
   check and refresh cache if required
  Tip #2 – Design for offline first, but
   implement last! It can add a lot of dev
   cycles.




                                                8
UI Framework
                Carefully select the right UI Framework
                 for your needs

                jQuery Mobile (most popular open source)
                Sencha (most popular commercial)

                Index common controls that you believe
                 the application might use
                Build control matrix (see left)
                Use the demo sites/test pages to see how
                 the controls render on devices
                Realize that controls will be “85%” close
                 to native

                Also think about styling and themes (e.g.
                 swatches in jQuery Mobile)



                                                           9
Mapping
 Understand the caveats with
  implementing maps in Mobile Web
  applications

 Navigating to a map, and back to a map
  can cause issues (many map controls are
  not designed to work with hidden DIVs in
  HTML)
 $(„#mappage‟).live(“pageshow”,
  function(){
  google.maps.event.trigger(map, „resize‟);
  });

 Performance of mapping won‟t be equal
  to native mapping controls (e.g. MapKit
  on iOS)
 (If this is important, consider Hybrid
  approach and breaking out to native)

                                              10
Non Standard UI Elements
                        Think ahead on the non-standard UI
                         elements that you are likely to need

                        Watch out for controls that don‟t exist…
                        Tables and Grids are especially difficult to
                         find and implement in Mobile Web
                         applications
                        Before creating a custom control, can you
                         use a more native control instead?

                        Don‟t re-invent the wheel…
                        Many 3rd Party JavaScript controls work
                         well within Mobile Web framework
                        For example, PhotoSwipe – Image Gallery




                                                                  11
Packaging
  Make your mobile web app look and feel
   like it belongs with the other native
   applications. (Even if you don‟t go with
   the Hybrid approach)

  Don‟t show the address bar! Instead, use
   the <viewport …/> meta tag to force the
   application to run in full screen mode

  Bind it to an icon on the home screen (iOS
   support only)
  Use “add2home” JavaScript library to
   prompt the user to treat it like an
   installed application




                                                12
Authentication    Don‟t go creating your own username and
                   password database!

                  Consider Federated Identity solution
                   instead. AppFabric ACS – Access Control
                   Service

                  Public providers (Google, Yahoo!,
                   Facebook, etc.)
                  Federated providers (ADFS connection
                   back to AD)
                  Both return unique claims bag that can
                   be referenced by your application

                  Integration with jQuery Mobile:
                   http://simonguest.com/2011/08/13/au
                   thenticating-with-google-facebook-and-
                   others-from-your-jquerymobile-
                   application/

                                                            13
Performance
  Make your mobile web application
   perform well!

  Three main culprits for affecting
   performance on Mobile Web applications:

  #1 – Server-side round trip calls on UI
   gestures. Make everything asynchronous.
  #2 – Too many CSS effects/transitions.
   Turn these off, unless you are iOS only.
   (Many older Android WebKit
   implementations don‟t support HW
   acceleration).
  #3 – Too many bound JavaScript events
   (class level binding can cause overload of
   events in the DOM - ~300ms perf
   problem)


                                                14
Why Neudesic?



                15
Mobility Highlights
   Deep Experience of HTML5/Mobile Web Applications for Multiple Devices
   Microsoft Mobility Partner of the Year 2011
   Development Partner for the Windows Azure SDK for iOS/Android
   Development Partner for the Amazon AWS SDK for Windows Phone 7
   Culture of Attracting the Best Mobility Talent




                                                                            16
Neudesic Recognition


   National Systems Integrator


Microsoft Partner of the Year        Microsoft Dynamics President’s      CRN Magazine VAR 500             Inc. 5000
Neudesic has won the 2011            Club                                Neudesic ranked on Everything    Neudesic recognized as one of
Microsoft Mobility B2C Application   In acknowledgement of exceptional   Channel VAR 500 List for the     America’s Fastest-Growing Private
Partner of the Year Award,           services and sales performance,     second consecutive year with     Companies for the fifth straight
honoring the company among a         Neudesic has been named to the      increased revenue in a down      year.
global field of top Microsoft        2011 Microsoft Dynamics             economy, Neudesic moves up 81
partners for demonstrating           President’s Club.                   places in CRN Magazine ranking
excellence in innovation and                                             this year.
implementation of customer
solutions.




                                                                                                                                          17
Thank You
       Simon Guest
Director, Mobility Solutions
      Neudesic, LLC

simon.guest@neudesic.com
      @simonguest
                               18

More Related Content

What's hot (20)

KEY
Android Workshop
Junda Ong
 
PDF
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
PDF
Revue des annonces WWDC2015
CocoaHeads France
 
PDF
RIM Casual Meetup - Bandung #DevIDBdg
Ziyad Bazed
 
PDF
Building a Next Generation Mobile Browser using Web technologies
n_adam_stanley
 
PPTX
BlackBerry WebWorks
Bhasker Thapan
 
PPTX
JavaScript on HP webOS: Enyo and Node.js
Ben Combee
 
KEY
iPhone/iPad开发讲座 第一讲 Ios开发简介
Hao Peiqiang
 
PDF
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dee Sadler
 
PPTX
Sharepoint mobile
Chakrapani ramachandran
 
PPTX
Javascript frameworks
RajkumarJangid7
 
PDF
Dojo mobile web5-2013
cjolif
 
PPT
Enabling the mobile Web for a Dojo component
cjolif
 
PDF
"BlackBerry Webworks : Apps for The Smartphone and Tablet"
Software Park Thailand
 
PPT
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
Christian Heindel
 
PDF
Mobile Web Development with HTML5
Roy Clarkson
 
PPT
Mobile Accessibility
Ted Drake
 
PDF
Fixing the mobile web - Internet World Romania
Christian Heilmann
 
PDF
Ionic으로 모바일앱 만들기 #3
성일 한
 
PDF
What's new in ios 7.0
CocoaHeads France
 
Android Workshop
Junda Ong
 
Sg conference multiplatform_apps_adam_stanley
n_adam_stanley
 
Revue des annonces WWDC2015
CocoaHeads France
 
RIM Casual Meetup - Bandung #DevIDBdg
Ziyad Bazed
 
Building a Next Generation Mobile Browser using Web technologies
n_adam_stanley
 
BlackBerry WebWorks
Bhasker Thapan
 
JavaScript on HP webOS: Enyo and Node.js
Ben Combee
 
iPhone/iPad开发讲座 第一讲 Ios开发简介
Hao Peiqiang
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dee Sadler
 
Sharepoint mobile
Chakrapani ramachandran
 
Javascript frameworks
RajkumarJangid7
 
Dojo mobile web5-2013
cjolif
 
Enabling the mobile Web for a Dojo component
cjolif
 
"BlackBerry Webworks : Apps for The Smartphone and Tablet"
Software Park Thailand
 
European SharePoint Conference: Mobile Applications for SharePoint using HTML5
Christian Heindel
 
Mobile Web Development with HTML5
Roy Clarkson
 
Mobile Accessibility
Ted Drake
 
Fixing the mobile web - Internet World Romania
Christian Heilmann
 
Ionic으로 모바일앱 만들기 #3
성일 한
 
What's new in ios 7.0
CocoaHeads France
 

Viewers also liked (20)

PPTX
Developing Enterprise-Grade Mobile Applications
Simon Guest
 
PPTX
Developing iPhone and iPad apps that leverage Windows Azure
Simon Guest
 
PPT
Demystifying The Cloud
Simon Guest
 
PPTX
Objective View of MEAPs
Simon Guest
 
PDF
TechEd Preconference
Simon Guest
 
PPTX
My customers are using iPhone/Android, but I'm a Microsoft Guy.
Simon Guest
 
PPT
Patterns For Moving To The Cloud
Simon Guest
 
PDF
Patterns for Cloud Computing
Simon Guest
 
PPTX
iPhone and iPad Security
Simon Guest
 
PPT
Impact Of The Cloud For IT Managers
Simon Guest
 
PPT
Architectural Principles for Software + Services
Simon Guest
 
PDF
ReMix Keynote (Vienna, Austria)
Simon Guest
 
PDF
Interviewing Techniques
Simon Guest
 
PDF
Next Generation LOB (Line of Business) Applications
Simon Guest
 
PDF
Indoor location in mobile applications using iBeacons
Simon Guest
 
PPTX
Future of Mobility
Simon Guest
 
PPTX
Creating Context-Aware Applications
Simon Guest
 
PPTX
Automated Testing using JavaScript
Simon Guest
 
PDF
Building a Great Engineering Culture
Simon Guest
 
PPT
User Driven Software Architecture
Simon Guest
 
Developing Enterprise-Grade Mobile Applications
Simon Guest
 
Developing iPhone and iPad apps that leverage Windows Azure
Simon Guest
 
Demystifying The Cloud
Simon Guest
 
Objective View of MEAPs
Simon Guest
 
TechEd Preconference
Simon Guest
 
My customers are using iPhone/Android, but I'm a Microsoft Guy.
Simon Guest
 
Patterns For Moving To The Cloud
Simon Guest
 
Patterns for Cloud Computing
Simon Guest
 
iPhone and iPad Security
Simon Guest
 
Impact Of The Cloud For IT Managers
Simon Guest
 
Architectural Principles for Software + Services
Simon Guest
 
ReMix Keynote (Vienna, Austria)
Simon Guest
 
Interviewing Techniques
Simon Guest
 
Next Generation LOB (Line of Business) Applications
Simon Guest
 
Indoor location in mobile applications using iBeacons
Simon Guest
 
Future of Mobility
Simon Guest
 
Creating Context-Aware Applications
Simon Guest
 
Automated Testing using JavaScript
Simon Guest
 
Building a Great Engineering Culture
Simon Guest
 
User Driven Software Architecture
Simon Guest
 
Ad

Similar to Top Ten Tips for HTML5/Mobile Web Development (20)

PDF
The Enterprise Dilemma: Native vs. Web
Motorola Mobility - MOTODEV
 
PDF
Web app and more
faming su
 
KEY
Real-world Dojo Mobile
Andrew Ferrier
 
PDF
Drupalcamp armedia phonegap_oct2012_print
DrupalcampAtlanta2012
 
PDF
HTML5 vs Native Android: Smart Enterprises for the Future
Motorola Mobility - MOTODEV
 
PDF
Building Cross-Platform Mobile Apps
Troy Miles
 
PDF
Building Mobile Websites with Joomla
Tom Deryckere
 
PPTX
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Jon Cortez
 
PDF
Evolving Mobile Architectures
sgleadow
 
PPSX
Cross platform mobile application architecture for enterprise
Venkat Alagarsamy
 
PPTX
Mobile Apps Develpment - A Comparison
Lataant Software Technologies
 
PDF
Develop an app for Windows 8 using HTML5
Soumow Dollon
 
KEY
Flash Builder and Flex Future - Multiscreen Development
Ryan Stewart
 
KEY
Introduction to Flex Hero for Mobile Devices
Ryan Stewart
 
PDF
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 
PPTX
Hybrid mobile app
Palani Kumar
 
PPTX
Hybrid Mobile App
Palani Kumar
 
PPTX
Trip advsiorhybridpresentation
ElanaBoehm
 
PDF
Hybrid mobile apps
Erik Paulsson
 
PPTX
phonegap_101
Asanka Indrajith
 
The Enterprise Dilemma: Native vs. Web
Motorola Mobility - MOTODEV
 
Web app and more
faming su
 
Real-world Dojo Mobile
Andrew Ferrier
 
Drupalcamp armedia phonegap_oct2012_print
DrupalcampAtlanta2012
 
HTML5 vs Native Android: Smart Enterprises for the Future
Motorola Mobility - MOTODEV
 
Building Cross-Platform Mobile Apps
Troy Miles
 
Building Mobile Websites with Joomla
Tom Deryckere
 
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Jon Cortez
 
Evolving Mobile Architectures
sgleadow
 
Cross platform mobile application architecture for enterprise
Venkat Alagarsamy
 
Mobile Apps Develpment - A Comparison
Lataant Software Technologies
 
Develop an app for Windows 8 using HTML5
Soumow Dollon
 
Flash Builder and Flex Future - Multiscreen Development
Ryan Stewart
 
Introduction to Flex Hero for Mobile Devices
Ryan Stewart
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 
Hybrid mobile app
Palani Kumar
 
Hybrid Mobile App
Palani Kumar
 
Trip advsiorhybridpresentation
ElanaBoehm
 
Hybrid mobile apps
Erik Paulsson
 
phonegap_101
Asanka Indrajith
 
Ad

More from Simon Guest (7)

PDF
10 Life Hacks for Better Productivity
Simon Guest
 
PDF
Presentation Anti-Patterns
Simon Guest
 
PDF
10 Life Hacks for Better Productivity
Simon Guest
 
PDF
Automated Web Testing using JavaScript
Simon Guest
 
PDF
Advanced Tips & Tricks for using Angular JS
Simon Guest
 
PDF
Enterprise Social Networking - Myth or Magic?
Simon Guest
 
PDF
Patterns For Cloud Computing
Simon Guest
 
10 Life Hacks for Better Productivity
Simon Guest
 
Presentation Anti-Patterns
Simon Guest
 
10 Life Hacks for Better Productivity
Simon Guest
 
Automated Web Testing using JavaScript
Simon Guest
 
Advanced Tips & Tricks for using Angular JS
Simon Guest
 
Enterprise Social Networking - Myth or Magic?
Simon Guest
 
Patterns For Cloud Computing
Simon Guest
 

Recently uploaded (20)

PDF
AI Agents in the Cloud: The Rise of Agentic Cloud Architecture
Lilly Gracia
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PPTX
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
PDF
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
PDF
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PDF
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PPTX
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
AI Agents in the Cloud: The Rise of Agentic Cloud Architecture
Lilly Gracia
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
SIZING YOUR AIR CONDITIONER---A PRACTICAL GUIDE.pdf
Muhammad Rizwan Akram
 
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 

Top Ten Tips for HTML5/Mobile Web Development

  • 1. HTML5/Mobile Web Development Top Ten Tips and Tricks 1
  • 2. Neudesic Mobility Windows Phone iPhone iPad Android HTML5/Web Realtor.com* Jeep* SimonMed ACS Jones Lang LaSalle Kelly Blue Book* Whole Foods VHA Kelley Blue Book* Nicor Gas Premera Mobile* Guidestone* Scan Health Android Azure SDK* IFF New York Microsoft TriWest Medical* Symetra Financial Scion SCAN Health * Available on AppStore, Google Market, Windows Marketplace 2
  • 3. Top Ten Tips and Tricks 3
  • 4. Mobile Web or Hybrid?  Make an early decision on Mobile Web via Browser or Hybrid Application  GeoLocation and Offline will work well in both  Photo capture? Contacts integration? Push Notifications? Deployment via the AppStore? Hybrid solution.  Hybrid solution = A native application exposing web content, with bi-directional JavaScript bridge  Roll your own (hook in to the event handlers through WebView control)  Use Framework, such as Apache Cordova 4
  • 5. Mobile Web or Hybrid?  Make an early decision on Mobile Web via Browser or Hybrid Application  GeoLocation and Offline will work well in both  Photo capture? Contacts integration? Push Notifications? Deployment via the AppStore? Hybrid solution.  Hybrid solution = A native application exposing web content, with bi-directional JavaScript bridge  Roll your own (hook in to the event handlers through WebView control)  Use Framework, such as Apache Cordova 5
  • 6. Development and Testing Environment  Setup up a robust development and testing environment  Your Favorite IDE for HTML: WebStorm, TextMate, Visual Studio  Browser capable of inspecting DOM/JavaScript debugging: Safari, Chrome, IE9  Device or Device Emulator: Mac or iPod Touch if targeting iOS. Android device vs. Emulator recommended.  Unit Test Framework: QUnit used, recommended  Device testing: Perfecto Mobile (virtual/video devices) 6
  • 7. Client Side and Navigation  Use Client Side JavaScript instead of Server-Side Scripts <div data-role="page" id="login" class="LoginScreen">  Move more on client side JavaScript: <div data-role-”header”> </div>  Performance will be better (no round trips <div data-role="content" class="ui-body ui-content"> to server) </div>  Offline easier to accomplish <div data-role="footer" data-position="fixed"> </div>  Enables server side to be abstracted </div>  Pre-fetch as many pages into the DOM as possible (at startup)  Server side calls should be asynchronous JSON endpoints  Caveat: Navigation! Prefetching too much into the DOM can make for confusing navigation.  Recommend hub and spoke model. 7
  • 8. Offline Support  Design for running offline  Enable offline by creating cache.manifest  Specify all of the files (including client side scripts) you require offline in the manifest  Handle client side functionality (e.g. submit button) with JavaScript checks  Tip #1 – JavaScript on application load to check and refresh cache if required  Tip #2 – Design for offline first, but implement last! It can add a lot of dev cycles. 8
  • 9. UI Framework  Carefully select the right UI Framework for your needs  jQuery Mobile (most popular open source)  Sencha (most popular commercial)  Index common controls that you believe the application might use  Build control matrix (see left)  Use the demo sites/test pages to see how the controls render on devices  Realize that controls will be “85%” close to native  Also think about styling and themes (e.g. swatches in jQuery Mobile) 9
  • 10. Mapping  Understand the caveats with implementing maps in Mobile Web applications  Navigating to a map, and back to a map can cause issues (many map controls are not designed to work with hidden DIVs in HTML)  $(„#mappage‟).live(“pageshow”, function(){ google.maps.event.trigger(map, „resize‟); });  Performance of mapping won‟t be equal to native mapping controls (e.g. MapKit on iOS)  (If this is important, consider Hybrid approach and breaking out to native) 10
  • 11. Non Standard UI Elements  Think ahead on the non-standard UI elements that you are likely to need  Watch out for controls that don‟t exist…  Tables and Grids are especially difficult to find and implement in Mobile Web applications  Before creating a custom control, can you use a more native control instead?  Don‟t re-invent the wheel…  Many 3rd Party JavaScript controls work well within Mobile Web framework  For example, PhotoSwipe – Image Gallery 11
  • 12. Packaging  Make your mobile web app look and feel like it belongs with the other native applications. (Even if you don‟t go with the Hybrid approach)  Don‟t show the address bar! Instead, use the <viewport …/> meta tag to force the application to run in full screen mode  Bind it to an icon on the home screen (iOS support only)  Use “add2home” JavaScript library to prompt the user to treat it like an installed application 12
  • 13. Authentication  Don‟t go creating your own username and password database!  Consider Federated Identity solution instead. AppFabric ACS – Access Control Service  Public providers (Google, Yahoo!, Facebook, etc.)  Federated providers (ADFS connection back to AD)  Both return unique claims bag that can be referenced by your application  Integration with jQuery Mobile: http://simonguest.com/2011/08/13/au thenticating-with-google-facebook-and- others-from-your-jquerymobile- application/ 13
  • 14. Performance  Make your mobile web application perform well!  Three main culprits for affecting performance on Mobile Web applications:  #1 – Server-side round trip calls on UI gestures. Make everything asynchronous.  #2 – Too many CSS effects/transitions. Turn these off, unless you are iOS only. (Many older Android WebKit implementations don‟t support HW acceleration).  #3 – Too many bound JavaScript events (class level binding can cause overload of events in the DOM - ~300ms perf problem) 14
  • 16. Mobility Highlights  Deep Experience of HTML5/Mobile Web Applications for Multiple Devices  Microsoft Mobility Partner of the Year 2011  Development Partner for the Windows Azure SDK for iOS/Android  Development Partner for the Amazon AWS SDK for Windows Phone 7  Culture of Attracting the Best Mobility Talent 16
  • 17. Neudesic Recognition National Systems Integrator Microsoft Partner of the Year Microsoft Dynamics President’s CRN Magazine VAR 500 Inc. 5000 Neudesic has won the 2011 Club Neudesic ranked on Everything Neudesic recognized as one of Microsoft Mobility B2C Application In acknowledgement of exceptional Channel VAR 500 List for the America’s Fastest-Growing Private Partner of the Year Award, services and sales performance, second consecutive year with Companies for the fifth straight honoring the company among a Neudesic has been named to the increased revenue in a down year. global field of top Microsoft 2011 Microsoft Dynamics economy, Neudesic moves up 81 partners for demonstrating President’s Club. places in CRN Magazine ranking excellence in innovation and this year. implementation of customer solutions. 17
  • 18. Thank You Simon Guest Director, Mobility Solutions Neudesic, LLC [email protected] @simonguest 18

Editor's Notes

  • #18: *Microsoft Partner of the Year (2011)Neudesic has won the 2011 Microsoft Mobility B2C Application Partner of the Year Award, honoring the company among a global field of top Microsoft partners for demonstrating excellence in innovation and implementation of customer solutions. Partner of the Year Finalist (2010)Neudesic has been nominated as a Microsoft Partner of the Year Finalist in two categories, being named as one of the top three solution providers in two areas of the Microsoft technology platform.  Microsoft Convergence Customer Excellence Award (2010) Neudesic was recognized by Microsoft at their annual Microsoft Dynamics Convergence conference for achieving Excellence in Innovation in Microsoft Dynamics CRM. *Microsoft Dynamics President’s Club (2011)In acknowledgement of exceptional services and sales performance, Neudesic has been named to the 2011 Microsoft Dynamics President’s Club. *CRN Magazine VAR 500 (2011) Neudesic ranked on Everything Channel VAR 500 List for the second consecutive year with increased revenue in a down economy, Neudesic moves up 81 places in CRN Magazine ranking this year. *Inc. 5000 (2007, 2008, 2009, 2010, 2011 ) Neudesic recognized as one of America’s Fastest-Growing Private Companies for the fifth straight year.