SlideShare ist ein Scribd-Unternehmen logo
1 von 23
Downloaden Sie, um offline zu lesen
Cross Platform Mobility
Why and How to Build Cross Platform
Mobile Applications


Chris Auld
8 May 2012
WHY? MOBILE STRATEGY DISCUSSION      HOW? MOBILE EXECUTION DISCUSSION

  Why mobile matters?                 Value in unique user experiences
  Types of mobile apps                Cross platform options
      By user class                       HTML+PhoneGap
      By technology approach              Mono
  Why cross platform matters?             Native x N
      Does cross platform matter?     Approaches to sharing code
      Which platforms?                Mono vs PhoneGap
      When?
Why
Why Mobile Matters
 Does anyone in the room *not* have a smart device?
 Anyone in your family 15yr-65yr *not* have one?


 What did you use 1st today, PC or Smart Device?
 How about last yesterday?


 Have you used an app today?
Morgan Stanley Research from 2009



              Actual inflection
                   point
Types of Mobile Apps
 BY USER CLASS              BY APPLICATION APPROACH


  Enterprise                 Web Apps
    - Field force etc.            - It works
  SME/BYOD                       - It’s optimized
    - Expense claims etc.         - ICBINB
  Consumer                   ‘Real’ Apps
      - Mobile banking            - Wrapped HTML
                                  - Native
Why Cross Platform Matters
 Does it matter?
 Does need for enterprise apps kill BYOD strategy?
 Application Approach Extra Cost   Extra Dev Capex   Org Size for Break Even
 Web App/Wrapped HTML        20%   $50,000           250

 X-Platform Toolkit (Mono)   30%   $75,000           375

 Full Native                 70%   $175,000          875


 Assume: Enterprise app build of say $250k
 Assume: BYOD strategy to save $200/device via co-pay
 Assume: Three platforms ‘supported’ for BYOD
Why Cross Platform Matters
 For Consumer/Public focussed apps it really does
 matter.
   iOS has massive penetration in high value user
    segments
   Android is bring Smart devices to the masses
   Microsoft is playing catch-up, but, is prepared to buy
    share
 Think back to the first slide… how do you use mobile?
Which Platforms?
 Market share?
 Visitor share?
     Your site?
     Some other ‘common’ site?

        You want to target, in priority order, the
      platforms used by people most likely to use
       their mobile devices to access your service
Which Platforms?
 IRD GST Site
  Want to support filing GST return from mobile device
 Business users
 Blackberry is still very popular with business users
 Should we prioritize Blackberry? iOS?
Which Platforms?
 How do app usage patterns differ?


 Both Android and iPhone users D/L approx 10 apps
  /month

 19% of Android users buy at least one app /month
 50% of iPhone users buy at least one app /month

*Admob Mobile Metrics
How
Different platforms are…different
Deserve different treatment at the UI level
Cross Platform Mobile App Dev
HTML + PhoneGap               Mono
• Significant reuse          • C# + .NET in            • Platform specific
       Re-use web assets      VS.NET                    UX
• Doesn’t look native                                  • Can write highly
                                Lambdas, LINQ
     Everything like iOS?
                                Delegates, Events       optimized code
•    AppStore issues                                     •   Games
                             • Rich
•    X-Browser issues
                               communications            •   Graphics intensive
•    No offline on WP7
                             • Access to almost all          apps
•    Animations poor                                   • Write the app 3
                               platform APIs via
•    APIs unavailable                                    times
                               Mono Wrappers
    •   Hardware access      • Go native if needed       • 3 different
    •   Platform specific    • UI still written ‘by-       languages
• It’s Javascript              hand’                     • 3 x code to maintain
     Must use OSS             • Write UI for each       • Objective C is awful
     Less productive            platform +ve&-ve


    100% Shared Code                                            0% Shared Code
Shared Code with Mono
 Shared files co-located; *.csproj for each platform
 Each solution has
     Platform specific project
     Shared project
 Similar MVVM pattern for all platforms
     Shared Models
     Shared Repository
     May be able to share ViewModels
   Can use shared Interface + Platform Specific Implementation
       WindowsPhonePreferencesProvider: IDevicePreferencesProvider
   Can use pre-processor directives
       #if MONOTOUCH
   Can support Windows Mobile easily. No support for Blackberry
Shared Code with PhoneGap
 All files co-located
 A solution has
     General purpose HTML + HTML templates
     Shared CSS + JS + Images
     Platform specific CSS + JS + Images
 Use MVVM or MVC pattern for all platforms
     Backbone.js/Knockout.js
     Share ‘everything’
 Complexity increases as platform count increases
     Each platform may require some specific shims
     Windows Mobile not supported & Older Blackberry OS is very hard to support
     Older phones may get a ‘bad’ experience
Choosing between PhoneGap or Mono
 PHONEGAP                               MONO

    Existing advanced HTML+JS skills     Existing .NET C# dev skills
    Must have MVVM/MVC                   Useful to have MVVM/MVC
     knowledge                             knowledge
    Existing web resources               Complex communications
    A need/desire to support browser      requirements
     based viewing                        Need lots of platform hooks
    Communications layer REST ready      Performance matters
                                          More productivity up-front
              The smaller your organization and project the
                   more developer productivity matters…
 Mono represents a high productivity choice even for pure one platform plays
Guidance By Intergen
Intergen staff have been involved in developing several reference
applications that are freely downloadable in source code form

 Project Silk http://silk.codeplex.com/ (Don Smith AKL)
  Rich HTML+JS Web Apps.
 Project Liike http://liike.github.com (Don Smith AKL)
  Rich HTML+JS Mobile Web Apps.
 StockTrader v6 https://azurestocktrader.cloudapp.net/
  (Chris Auld/James Carpinter WLG + others)
  Massive scale Azure based app with cross platform rich client for
  iOS, Android, WP7, HTML5+JS, Windows Metro (Mono based)
Mobile Matters – Mobile First
Do you *really* need x-platform
Phone + Mono both useful options
Questions
Thank You
Cross Platform Mobile Development

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application DevelopmentTharindu Dassanayake
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.Petru Jucovschi
 
Tk2323 lecture 1 introduction to mobile application
Tk2323 lecture 1   introduction to mobile applicationTk2323 lecture 1   introduction to mobile application
Tk2323 lecture 1 introduction to mobile applicationMengChun Lam
 
Top 10 programming languages for mobile app development
Top 10 programming languages for mobile app developmentTop 10 programming languages for mobile app development
Top 10 programming languages for mobile app developmentWxit Consultant Services
 
Mobile app developers guide
Mobile app developers guideMobile app developers guide
Mobile app developers guidePrayukth K V
 
Tristan Nitot @DWS12 - The Web as a universal platform for mobile
Tristan Nitot @DWS12 - The Web as a universal platform for mobileTristan Nitot @DWS12 - The Web as a universal platform for mobile
Tristan Nitot @DWS12 - The Web as a universal platform for mobileTristan Nitot
 
Mobile Application Development: Hybrid, Native and Mobile Web Apps
Mobile Application Development: Hybrid, Native and Mobile Web AppsMobile Application Development: Hybrid, Native and Mobile Web Apps
Mobile Application Development: Hybrid, Native and Mobile Web AppsPaul Sons
 
01 01 - introduction to mobile application development
01  01 - introduction to mobile application development01  01 - introduction to mobile application development
01 01 - introduction to mobile application developmentSiva Kumar reddy Vasipally
 
Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Sura Gonzalez
 
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...Nitin Gaur
 
Mobile application development strategy and execution
Mobile application development   strategy and executionMobile application development   strategy and execution
Mobile application development strategy and executionInnoTech
 
Trending mobile application Development
Trending mobile application DevelopmentTrending mobile application Development
Trending mobile application DevelopmentPraveen Kumar A G
 
Cross-platform App Development Company
Cross-platform App Development CompanyCross-platform App Development Company
Cross-platform App Development CompanyThe NineHertz
 
Mobile Application Development Strategy
Mobile Application Development StrategyMobile Application Development Strategy
Mobile Application Development StrategyAvi Aggarwal MBA, BEng
 
Mobile applications chapter 5
Mobile applications chapter 5Mobile applications chapter 5
Mobile applications chapter 5Akib B. Momin
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyDMI
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseApperian
 
Mobile Developer's Guide To The Galaxy, 15th edition
Mobile Developer's Guide To The Galaxy, 15th editionMobile Developer's Guide To The Galaxy, 15th edition
Mobile Developer's Guide To The Galaxy, 15th editionMarco Tabor
 

Was ist angesagt? (20)

Introduction to Mobile Application Development
Introduction to Mobile Application DevelopmentIntroduction to Mobile Application Development
Introduction to Mobile Application Development
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.
 
Tk2323 lecture 1 introduction to mobile application
Tk2323 lecture 1   introduction to mobile applicationTk2323 lecture 1   introduction to mobile application
Tk2323 lecture 1 introduction to mobile application
 
Top 10 programming languages for mobile app development
Top 10 programming languages for mobile app developmentTop 10 programming languages for mobile app development
Top 10 programming languages for mobile app development
 
Mobile app developers guide
Mobile app developers guideMobile app developers guide
Mobile app developers guide
 
Tristan Nitot @DWS12 - The Web as a universal platform for mobile
Tristan Nitot @DWS12 - The Web as a universal platform for mobileTristan Nitot @DWS12 - The Web as a universal platform for mobile
Tristan Nitot @DWS12 - The Web as a universal platform for mobile
 
Mobile Application Development: Hybrid, Native and Mobile Web Apps
Mobile Application Development: Hybrid, Native and Mobile Web AppsMobile Application Development: Hybrid, Native and Mobile Web Apps
Mobile Application Development: Hybrid, Native and Mobile Web Apps
 
Hybrid App Development using PhoneGap/Cordova
Hybrid App Development using PhoneGap/CordovaHybrid App Development using PhoneGap/Cordova
Hybrid App Development using PhoneGap/Cordova
 
01 01 - introduction to mobile application development
01  01 - introduction to mobile application development01  01 - introduction to mobile application development
01 01 - introduction to mobile application development
 
Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?Native, Web or Hybrid Mobile App Development?
Native, Web or Hybrid Mobile App Development?
 
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...
IBM MobileFirst - Agile Application Infrastructure New Paradigm for new Workl...
 
Mobile application development strategy and execution
Mobile application development   strategy and executionMobile application development   strategy and execution
Mobile application development strategy and execution
 
Trending mobile application Development
Trending mobile application DevelopmentTrending mobile application Development
Trending mobile application Development
 
Cross-platform App Development Company
Cross-platform App Development CompanyCross-platform App Development Company
Cross-platform App Development Company
 
Mobile Application Development Strategy
Mobile Application Development StrategyMobile Application Development Strategy
Mobile Application Development Strategy
 
Mobile applications chapter 5
Mobile applications chapter 5Mobile applications chapter 5
Mobile applications chapter 5
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and Why
 
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The EnterpriseBuilding & Managing The Lifecycle of Mobile Apps For The Enterprise
Building & Managing The Lifecycle of Mobile Apps For The Enterprise
 
Dealing with-the-dilemma-mob-app-dev-approaches
Dealing with-the-dilemma-mob-app-dev-approachesDealing with-the-dilemma-mob-app-dev-approaches
Dealing with-the-dilemma-mob-app-dev-approaches
 
Mobile Developer's Guide To The Galaxy, 15th edition
Mobile Developer's Guide To The Galaxy, 15th editionMobile Developer's Guide To The Galaxy, 15th edition
Mobile Developer's Guide To The Galaxy, 15th edition
 

Ähnlich wie Cross Platform Mobile Development

Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Tom Deryckere
 
Mobile Developer's Guide To The Galaxy Vol.7
Mobile Developer's Guide To The Galaxy Vol.7Mobile Developer's Guide To The Galaxy Vol.7
Mobile Developer's Guide To The Galaxy Vol.7Marco Tabor
 
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Shane Church
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Effective
 
Mobile next 2013 petru jucovschi
Mobile next 2013   petru jucovschiMobile next 2013   petru jucovschi
Mobile next 2013 petru jucovschimpgco
 
Developers Guide To The Galaxy 8th edition
Developers Guide To The Galaxy 8th editionDevelopers Guide To The Galaxy 8th edition
Developers Guide To The Galaxy 8th editionMarco Tabor
 
Comparing multi-platform mobile apps frameworks
Comparing multi-platform mobile apps frameworksComparing multi-platform mobile apps frameworks
Comparing multi-platform mobile apps frameworksAmandine Tihon
 
Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...Marco Brambilla
 
The Importance of Cross Platform Technology
The Importance of Cross Platform TechnologyThe Importance of Cross Platform Technology
The Importance of Cross Platform TechnologyOlivia2590
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterpriseBryce Curtis
 
The Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App DevelopmentThe Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App DevelopmentNick Landry
 
Mobile Developers Guide To The Galaxy Vol.6
Mobile Developers Guide To The Galaxy Vol.6Mobile Developers Guide To The Galaxy Vol.6
Mobile Developers Guide To The Galaxy Vol.6Marco Tabor
 
Multi-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapMulti-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapGautam Chaudhary
 
Hybrid App Development, Redefined
Hybrid App Development, RedefinedHybrid App Development, Redefined
Hybrid App Development, RedefinedIonic Framework
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google DevsCraig Dunn
 
Telerik AppBuilder 101
Telerik AppBuilder 101Telerik AppBuilder 101
Telerik AppBuilder 101Sam Basu
 
Rapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka PhonegapRapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka PhonegapJosue Bustos
 

Ähnlich wie Cross Platform Mobile Development (20)

Building Cross Platform Mobile Applications
Building Cross Platform Mobile ApplicationsBuilding Cross Platform Mobile Applications
Building Cross Platform Mobile Applications
 
Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010
 
Mobile Developer's Guide To The Galaxy Vol.7
Mobile Developer's Guide To The Galaxy Vol.7Mobile Developer's Guide To The Galaxy Vol.7
Mobile Developer's Guide To The Galaxy Vol.7
 
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
Pick Your Poison – Mobile Web, Native, or Hybrid? - Denver Startup Week - Oct...
 
Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?Pick Your Poison – Mobile Web, Native or Hybrid?
Pick Your Poison – Mobile Web, Native or Hybrid?
 
Mobile next 2013 petru jucovschi
Mobile next 2013   petru jucovschiMobile next 2013   petru jucovschi
Mobile next 2013 petru jucovschi
 
Rhodes vs Phonegap
Rhodes vs PhonegapRhodes vs Phonegap
Rhodes vs Phonegap
 
Developers Guide To The Galaxy 8th edition
Developers Guide To The Galaxy 8th editionDevelopers Guide To The Galaxy 8th edition
Developers Guide To The Galaxy 8th edition
 
Comparing multi-platform mobile apps frameworks
Comparing multi-platform mobile apps frameworksComparing multi-platform mobile apps frameworks
Comparing multi-platform mobile apps frameworks
 
Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...Automatic code generation for cross platform, multi-device mobile apps. An in...
Automatic code generation for cross platform, multi-device mobile apps. An in...
 
The Importance of Cross Platform Technology
The Importance of Cross Platform TechnologyThe Importance of Cross Platform Technology
The Importance of Cross Platform Technology
 
PhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the EnterprisePhoneGap Day - IBM, PhoneGap and the Enterprise
PhoneGap Day - IBM, PhoneGap and the Enterprise
 
The Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App DevelopmentThe Great Mobile Debate: Native vs. Hybrid App Development
The Great Mobile Debate: Native vs. Hybrid App Development
 
Mobile Developers Guide To The Galaxy Vol.6
Mobile Developers Guide To The Galaxy Vol.6Mobile Developers Guide To The Galaxy Vol.6
Mobile Developers Guide To The Galaxy Vol.6
 
Multi-platform Mobile apps with Phonegap
Multi-platform Mobile apps with PhonegapMulti-platform Mobile apps with Phonegap
Multi-platform Mobile apps with Phonegap
 
Hybrid App Development, Redefined
Hybrid App Development, RedefinedHybrid App Development, Redefined
Hybrid App Development, Redefined
 
Mono for Android... for Google Devs
Mono for Android... for Google DevsMono for Android... for Google Devs
Mono for Android... for Google Devs
 
Telerik AppBuilder 101
Telerik AppBuilder 101Telerik AppBuilder 101
Telerik AppBuilder 101
 
Mobile Web Apps
Mobile Web AppsMobile Web Apps
Mobile Web Apps
 
Rapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka PhonegapRapid Prototyping with Cordova aka Phonegap
Rapid Prototyping with Cordova aka Phonegap
 

Mehr von Intergen

Creating intelligent content: How to automate personalised, one-to-one market...
Creating intelligent content: How to automate personalised, one-to-one market...Creating intelligent content: How to automate personalised, one-to-one market...
Creating intelligent content: How to automate personalised, one-to-one market...Intergen
 
Taming the feral Teams
Taming the feral TeamsTaming the feral Teams
Taming the feral TeamsIntergen
 
Customer Insights: It's time to get personal
Customer Insights: It's time to get personalCustomer Insights: It's time to get personal
Customer Insights: It's time to get personalIntergen
 
Working Remotely with Microsoft Technologies
Working Remotely with Microsoft TechnologiesWorking Remotely with Microsoft Technologies
Working Remotely with Microsoft TechnologiesIntergen
 
Intergen Convergence 2017 - Digital workplace
Intergen Convergence 2017 - Digital workplaceIntergen Convergence 2017 - Digital workplace
Intergen Convergence 2017 - Digital workplaceIntergen
 
Intergen Convergence 2017 - Customer engagement (Toyota)
Intergen Convergence 2017 - Customer engagement (Toyota)Intergen Convergence 2017 - Customer engagement (Toyota)
Intergen Convergence 2017 - Customer engagement (Toyota)Intergen
 
Intergen Convergence 2017 - Customer engagement (Green Cross Health)
Intergen Convergence 2017 - Customer engagement (Green Cross Health)Intergen Convergence 2017 - Customer engagement (Green Cross Health)
Intergen Convergence 2017 - Customer engagement (Green Cross Health)Intergen
 
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)Intergen Convergence 2017 - Customer engagement (Dynamic Controls)
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)Intergen
 
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...Intergen Convergence 2017 - Business transformation across the enterprise (NZ...
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...Intergen
 
Intergen Convergence 2017 - Bringing your people on the change journey
Intergen Convergence 2017 - Bringing your people on the change journeyIntergen Convergence 2017 - Bringing your people on the change journey
Intergen Convergence 2017 - Bringing your people on the change journeyIntergen
 
Intergen Convergence 2017 - Why digital transformation
Intergen Convergence 2017 - Why digital transformationIntergen Convergence 2017 - Why digital transformation
Intergen Convergence 2017 - Why digital transformationIntergen
 
Intergen Convergence 2017 - Unleash your digital enterprise
Intergen Convergence 2017 - Unleash your digital enterpriseIntergen Convergence 2017 - Unleash your digital enterprise
Intergen Convergence 2017 - Unleash your digital enterpriseIntergen
 
Intergen Convergence 2017 - The future is here
Intergen Convergence 2017 - The future is hereIntergen Convergence 2017 - The future is here
Intergen Convergence 2017 - The future is hereIntergen
 
Intergen Convergence 2017 - Keeping safe, staying safe
Intergen Convergence 2017 - Keeping safe, staying safeIntergen Convergence 2017 - Keeping safe, staying safe
Intergen Convergence 2017 - Keeping safe, staying safeIntergen
 
Intergen Convergence 2017 - Customer Engagement
Intergen Convergence 2017 - Customer EngagementIntergen Convergence 2017 - Customer Engagement
Intergen Convergence 2017 - Customer EngagementIntergen
 
Intergen Convergence 2017 - Data as your most important asset
Intergen Convergence 2017 - Data as your most important assetIntergen Convergence 2017 - Data as your most important asset
Intergen Convergence 2017 - Data as your most important assetIntergen
 
Intergen Interconnect
Intergen InterconnectIntergen Interconnect
Intergen InterconnectIntergen
 
Your cyber security webinar
Your cyber security webinarYour cyber security webinar
Your cyber security webinarIntergen
 
Dynamics Day 2016: Microsoft Dynamics 365 first look
Dynamics Day 2016: Microsoft Dynamics 365 first lookDynamics Day 2016: Microsoft Dynamics 365 first look
Dynamics Day 2016: Microsoft Dynamics 365 first lookIntergen
 
Dynamics Day 2016: CRM Field Service and Project Service
Dynamics Day 2016: CRM Field Service and Project ServiceDynamics Day 2016: CRM Field Service and Project Service
Dynamics Day 2016: CRM Field Service and Project ServiceIntergen
 

Mehr von Intergen (20)

Creating intelligent content: How to automate personalised, one-to-one market...
Creating intelligent content: How to automate personalised, one-to-one market...Creating intelligent content: How to automate personalised, one-to-one market...
Creating intelligent content: How to automate personalised, one-to-one market...
 
Taming the feral Teams
Taming the feral TeamsTaming the feral Teams
Taming the feral Teams
 
Customer Insights: It's time to get personal
Customer Insights: It's time to get personalCustomer Insights: It's time to get personal
Customer Insights: It's time to get personal
 
Working Remotely with Microsoft Technologies
Working Remotely with Microsoft TechnologiesWorking Remotely with Microsoft Technologies
Working Remotely with Microsoft Technologies
 
Intergen Convergence 2017 - Digital workplace
Intergen Convergence 2017 - Digital workplaceIntergen Convergence 2017 - Digital workplace
Intergen Convergence 2017 - Digital workplace
 
Intergen Convergence 2017 - Customer engagement (Toyota)
Intergen Convergence 2017 - Customer engagement (Toyota)Intergen Convergence 2017 - Customer engagement (Toyota)
Intergen Convergence 2017 - Customer engagement (Toyota)
 
Intergen Convergence 2017 - Customer engagement (Green Cross Health)
Intergen Convergence 2017 - Customer engagement (Green Cross Health)Intergen Convergence 2017 - Customer engagement (Green Cross Health)
Intergen Convergence 2017 - Customer engagement (Green Cross Health)
 
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)Intergen Convergence 2017 - Customer engagement (Dynamic Controls)
Intergen Convergence 2017 - Customer engagement (Dynamic Controls)
 
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...Intergen Convergence 2017 - Business transformation across the enterprise (NZ...
Intergen Convergence 2017 - Business transformation across the enterprise (NZ...
 
Intergen Convergence 2017 - Bringing your people on the change journey
Intergen Convergence 2017 - Bringing your people on the change journeyIntergen Convergence 2017 - Bringing your people on the change journey
Intergen Convergence 2017 - Bringing your people on the change journey
 
Intergen Convergence 2017 - Why digital transformation
Intergen Convergence 2017 - Why digital transformationIntergen Convergence 2017 - Why digital transformation
Intergen Convergence 2017 - Why digital transformation
 
Intergen Convergence 2017 - Unleash your digital enterprise
Intergen Convergence 2017 - Unleash your digital enterpriseIntergen Convergence 2017 - Unleash your digital enterprise
Intergen Convergence 2017 - Unleash your digital enterprise
 
Intergen Convergence 2017 - The future is here
Intergen Convergence 2017 - The future is hereIntergen Convergence 2017 - The future is here
Intergen Convergence 2017 - The future is here
 
Intergen Convergence 2017 - Keeping safe, staying safe
Intergen Convergence 2017 - Keeping safe, staying safeIntergen Convergence 2017 - Keeping safe, staying safe
Intergen Convergence 2017 - Keeping safe, staying safe
 
Intergen Convergence 2017 - Customer Engagement
Intergen Convergence 2017 - Customer EngagementIntergen Convergence 2017 - Customer Engagement
Intergen Convergence 2017 - Customer Engagement
 
Intergen Convergence 2017 - Data as your most important asset
Intergen Convergence 2017 - Data as your most important assetIntergen Convergence 2017 - Data as your most important asset
Intergen Convergence 2017 - Data as your most important asset
 
Intergen Interconnect
Intergen InterconnectIntergen Interconnect
Intergen Interconnect
 
Your cyber security webinar
Your cyber security webinarYour cyber security webinar
Your cyber security webinar
 
Dynamics Day 2016: Microsoft Dynamics 365 first look
Dynamics Day 2016: Microsoft Dynamics 365 first lookDynamics Day 2016: Microsoft Dynamics 365 first look
Dynamics Day 2016: Microsoft Dynamics 365 first look
 
Dynamics Day 2016: CRM Field Service and Project Service
Dynamics Day 2016: CRM Field Service and Project ServiceDynamics Day 2016: CRM Field Service and Project Service
Dynamics Day 2016: CRM Field Service and Project Service
 

Kürzlich hochgeladen

unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 

Kürzlich hochgeladen (20)

unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 

Cross Platform Mobile Development

  • 1. Cross Platform Mobility Why and How to Build Cross Platform Mobile Applications Chris Auld 8 May 2012
  • 2. WHY? MOBILE STRATEGY DISCUSSION HOW? MOBILE EXECUTION DISCUSSION  Why mobile matters?  Value in unique user experiences  Types of mobile apps  Cross platform options  By user class  HTML+PhoneGap  By technology approach  Mono  Why cross platform matters?  Native x N  Does cross platform matter?  Approaches to sharing code  Which platforms?  Mono vs PhoneGap  When?
  • 3. Why
  • 4. Why Mobile Matters  Does anyone in the room *not* have a smart device?  Anyone in your family 15yr-65yr *not* have one?  What did you use 1st today, PC or Smart Device?  How about last yesterday?  Have you used an app today?
  • 5. Morgan Stanley Research from 2009 Actual inflection point
  • 6. Types of Mobile Apps BY USER CLASS BY APPLICATION APPROACH Enterprise Web Apps - Field force etc. - It works SME/BYOD - It’s optimized - Expense claims etc. - ICBINB Consumer ‘Real’ Apps - Mobile banking - Wrapped HTML - Native
  • 7. Why Cross Platform Matters  Does it matter?  Does need for enterprise apps kill BYOD strategy? Application Approach Extra Cost Extra Dev Capex Org Size for Break Even Web App/Wrapped HTML 20% $50,000 250 X-Platform Toolkit (Mono) 30% $75,000 375 Full Native 70% $175,000 875 Assume: Enterprise app build of say $250k Assume: BYOD strategy to save $200/device via co-pay Assume: Three platforms ‘supported’ for BYOD
  • 8. Why Cross Platform Matters  For Consumer/Public focussed apps it really does matter.  iOS has massive penetration in high value user segments  Android is bring Smart devices to the masses  Microsoft is playing catch-up, but, is prepared to buy share  Think back to the first slide… how do you use mobile?
  • 9. Which Platforms?  Market share?  Visitor share?  Your site?  Some other ‘common’ site? You want to target, in priority order, the platforms used by people most likely to use their mobile devices to access your service
  • 10. Which Platforms?  IRD GST Site Want to support filing GST return from mobile device  Business users  Blackberry is still very popular with business users  Should we prioritize Blackberry? iOS?
  • 11. Which Platforms?  How do app usage patterns differ?  Both Android and iPhone users D/L approx 10 apps /month  19% of Android users buy at least one app /month  50% of iPhone users buy at least one app /month *Admob Mobile Metrics
  • 12. How
  • 13. Different platforms are…different Deserve different treatment at the UI level
  • 14.
  • 15. Cross Platform Mobile App Dev HTML + PhoneGap Mono • Significant reuse • C# + .NET in • Platform specific  Re-use web assets VS.NET UX • Doesn’t look native • Can write highly  Lambdas, LINQ  Everything like iOS?  Delegates, Events optimized code • AppStore issues • Games • Rich • X-Browser issues communications • Graphics intensive • No offline on WP7 • Access to almost all apps • Animations poor • Write the app 3 platform APIs via • APIs unavailable times Mono Wrappers • Hardware access • Go native if needed • 3 different • Platform specific • UI still written ‘by- languages • It’s Javascript hand’ • 3 x code to maintain  Must use OSS • Write UI for each • Objective C is awful  Less productive platform +ve&-ve 100% Shared Code 0% Shared Code
  • 16. Shared Code with Mono  Shared files co-located; *.csproj for each platform  Each solution has  Platform specific project  Shared project  Similar MVVM pattern for all platforms  Shared Models  Shared Repository  May be able to share ViewModels  Can use shared Interface + Platform Specific Implementation  WindowsPhonePreferencesProvider: IDevicePreferencesProvider  Can use pre-processor directives  #if MONOTOUCH  Can support Windows Mobile easily. No support for Blackberry
  • 17. Shared Code with PhoneGap  All files co-located  A solution has  General purpose HTML + HTML templates  Shared CSS + JS + Images  Platform specific CSS + JS + Images  Use MVVM or MVC pattern for all platforms  Backbone.js/Knockout.js  Share ‘everything’  Complexity increases as platform count increases  Each platform may require some specific shims  Windows Mobile not supported & Older Blackberry OS is very hard to support  Older phones may get a ‘bad’ experience
  • 18. Choosing between PhoneGap or Mono PHONEGAP MONO  Existing advanced HTML+JS skills  Existing .NET C# dev skills  Must have MVVM/MVC  Useful to have MVVM/MVC knowledge knowledge  Existing web resources  Complex communications  A need/desire to support browser requirements based viewing  Need lots of platform hooks  Communications layer REST ready  Performance matters  More productivity up-front The smaller your organization and project the more developer productivity matters… Mono represents a high productivity choice even for pure one platform plays
  • 19. Guidance By Intergen Intergen staff have been involved in developing several reference applications that are freely downloadable in source code form  Project Silk http://silk.codeplex.com/ (Don Smith AKL) Rich HTML+JS Web Apps.  Project Liike http://liike.github.com (Don Smith AKL) Rich HTML+JS Mobile Web Apps.  StockTrader v6 https://azurestocktrader.cloudapp.net/ (Chris Auld/James Carpinter WLG + others) Massive scale Azure based app with cross platform rich client for iOS, Android, WP7, HTML5+JS, Windows Metro (Mono based)
  • 20. Mobile Matters – Mobile First Do you *really* need x-platform Phone + Mono both useful options