SlideShare una empresa de Scribd logo
1 de 45
Descargar para leer sin conexión
IBM, PhoneGap and
the Enterprise


July 29, 2011

Bryce Curtis
Mobile and Emerging Internet Technology

IBM Software Group


                                          1
Overview

  IBM Team
  Why PhoneGap?
  Mobile in IBM
  Native vs Web
  Legal
  Cool Stuff




                   2
IBM Team


    Android                iOS




              Blackberry




                                 3
Mobile Landscape

  Exploding Mobile Demand
     2013 will bring us more Mobiles than Desktops
     Next Generation of Application – Always – On
     Using Services like Location, Notification,
      Collaboration, etc…
     Different Cost Models / ROI
     Business app lifecycle = 3 months
     Consumer app lifecycle = 3 days (most people try
      it only once)




                                                         4
Mobile Landscape

  Exploding market for Mobile Applications
      Consumers are demanding rich mobile access
       across all their devices
        •  Phones, tablets, game stations, PCs
        •  Examples – Twitter, FourSquare, Pulse,
          Collaboration
      Businesses expect their users to be able to access
       important applications and data from multiple
       devices
        •  Business brand accessed with similar function
        •  Examples – Mail, IM, Facebook, Google+,
          Conferencing, Graphics




                                                            5
Why Is Mobile Different?

     Mobile users require efficient and timely       Applications must still be usable when out
     access to information.                           of wireless coverage.
     Interactions are short and focused,             Timeliness of data must be
     interruptions are common.                        communicated.
     Devices are often exclusively touch-            Security is critical.
     based.                                          Often used for monitoring as opposed
     User interfaces must be easy and                 to active consumption.
     obvious.                                        Social interactions are important.
•    Screen real-estate is precious.                 Mobile hardware and user interfaces
                                                      evolve much faster than the typical
•    Typing should be minimized.
                                                      enterprise software cycle.

            Mobile users today expect high-fidelity access to the same
             information they have on the desktop, presented in an easy-
             to-learn, mobile-friendly (often touch-friendly) format.



                                                                                             6
Why PhoneGap?

  Began working on mobile in early 2010
  Several options
      IBM research (x2)
      Appcelerator - Titanium
        • Started out as hybrid, but changed to JS
      Ansca Mobile – Corona
        • Ruby
      Rhodes – Rhomobile
        •    Lua
      QuickConnect
      PhoneGap
        •    HTML, JS, CSS




                                                     7
Why PhoneGap?

  Vision
    Meshes with IBM’s vision and strategy
    Hybrid framework
    Open source framework
    Standards based
    Goal is to become obsolete




                                             8
9
Desktop




 Mobile




          10
Why PhoneGap?
                     IBM Mobile Strategy

“Extend our platform to mobile based devices using open standards
and technologies targeting the broadest set of devices possible
leveraging the skills and infrastructure of our existing customers.”

               -- Greg Truty, WebSphere Strategist


“Provide mobile tools and applications that leverage open, standards-
based web technologies when appropriate. This includes HTML5,
JavaScript, CSS, PhoneGap and Mobile Dojo.”

                -- Bryce Curtis, Mobile Technologist


                                                                        11
Why PhoneGap?

  Vision
  Platforms
     Supported more platforms
     iPhone, Android, Blackberry 4.x, Symbian
     More platforms added:
            •  Blackberry OS5/6, WebOS, Windows Phone, Bada




                                                              12
Why PhoneGap?

  Vision
  Platforms
  Architecture
     Great architecture
     Modular (Plug-ins concept)
     Extensible




                                   13
PhoneGap Architecture
                                       PhoneGap Application

             Web App
                                                                            PhoneGap Plug-ins
      HTML                 JavaScript                             Accelerometer                    Geolocation

       CSS                 Resources                                 Camera                          Media

                                                                     Compass                        Network
                            PhoneGap
                             JS APIs




                                                                     Contacts                      Notification
         HTML
         APIs




                                                                          File                      Storage

                                                                                 Custom Plug-ins
                                                  PhoneGap
  HTML Rendering Engine (WebView)                 Native APIs
                 OS APIs




                                                                                         OS APIs
                                         Services               Sensors
Mobile OS
                                          Input                 Graphics


                                                                                                                  14
Why PhoneGap?

  Vision
  Platforms
  Architecture
  MIT License
     Friendly licenses are a must to get through IBM legal
     GPL cannot generally be used for IBM products
     Many enterprise customers have similar legal guidelines
     Customers want indemnification from IBM




        ... claims licenses that Apple has with Lodsys don't cover use of its technology by
        independent developers who use it in apps they make for the iPhone and iPad.


                                                                                              15
Why PhoneGap?

    Vision
    Platforms
    Architecture
    MIT License
  Community
        Large, active community
        Great user and developer forums
        Developer mindshare

              500,000 Downloads
              175,000 visits/month
              6100+ forum members

              Positive feedback from IBM and customers


                                                         16
A Look Back

  Platforms that IBM considered important a year ago
    iOS, Android 1.x/2, Blackberry OS 4.x/5/6
    Some interest in Symbian, Windows Phone




                         Cell phones are obsolete
                         after 6-12 months




                                                        17
A Look Back

  Platforms that IBM considered important a year ago
      iOS, Android 1.x/2, Blackberry OS 4.x/5/6
      Some interest in Symbian, Windows Phone
  Initial goals
     Consistent API
     Consistent support
     Good documentation
     Tests




                                                        18
Features




           19
Documentation




                20
Testing

  mobile-spec
      Significantly expanded test coverage
        •  Automatic tests
        •  Interactive tests
      Validate releases
      Eliminate regression
      Comprehensive test plan?




                                              21
IBM Developers

  Features
    Barcode scanner
    Push notifications
    Calendar APIs
    Remote loading




    Products are willing to write plug-ins for PhoneGap
    and contribute back to community.




                                                          22
Remote Loading
         Web Server                                                                    PhoneGap Application


                                                          Shell App
          Web App                                                                                                         PhoneGap Plug-ins

                                                                                                                 Accelerometer                 Geolocation
            HTML            Load remote                       Loader
                            app over web                                                                            Camera                       Media
            CSS
                                                                                                                   Compass                      Network
          JavaScript




                                                                            PhoneGap
                                                                                                                    Contacts                   Notification




                                                                             JS APIs
                                                       HTML
                                                       APIs
          Resources
                                                                                                                      File                      Storage

                                                                                                                             Custom Plug-ins
                                                 HTML Rendering Engine                       PhoneGap Native
                                                      (WebView)                                   APIs




                                                                                                                                     OS APIs
                                                                  OS APIs




                                                                                       Services                Sensors
                                           Mobile OS
  Loads web app over HTTP                                                              Input                  Graphics

  Application hosted on web server
    –     Easily updated                                                                                          IBM PhoneGap Browser
                                                                                                                   - anyone can write mobile app
    –     Personalization
    –     Same benefits of web app but with access to device features
                                                                                                                                                              23
IBM Developers

  Features
  Tooling/debugging
     Integrate with Eclipse & IBM RAD
     Development & Simulation without SDKs
     Multiple builds from single www directory
  Test plan & scenarios
  Documentation
     User manual
     IBM DeveloperWorks papers




                                                  24
IBM Developers

    Features
    Tooling/debugging
    Test plan & scenarios
    Documentation
  Globalization
        Plug-ins for iOS, Android and Blackberry
  Security
        Secure stores
        Encryption
        Enterprise apps sandboxed




                                                    25
IBM Developers

    Features
    Tooling/debugging
    Test plan & scenarios
    Documentation
    Globalization
    Security
  PhoneGap is part of the bigger picture
        MEAP
        Analytics
        Mobile device and app management
        Back-end connectors
        VPN



                                            26
IBM Customers

  Easy development
    Tried native
    Web based

      Native worked ok the first time.
      But... then came more versions and more phones

      Native development cost = 2-3x Web cost
                                  + Maintenance cost

      Customers are realizing benefit of mobile web.




                                                       27
IBM Customers

  Easy development
      Tried native
      Web based
  Works with existing
   servers
  Works with existing
   services
     Ajax/XHR
     REST




                         28
IBM Customers
  Easy development
      Tried native
      Web based
  Works with existing servers
  Works with existing services
      Ajax/XHR
      REST
  End-to-end solution
     Customer access to existing services
      Employee access to internal services
  Moving cautiously (investigating)
      Security is critical
  Distribution
      Distribute on App Store
     Get around Apple’s App Store

                                              29
Native vs Web

  This discussion is ongoing
  One solution does not fit all
      Trade-offs
  Not everyone agrees




                                   30
Native vs Web

  This discussion is ongoing
  One solution does not fit all
         Trade-offs
  Not everyone agrees


“By 2015, mobile Web technologies will have advanced sufficiently such
that half of the applications that today would be written as native apps
will be, instead, delivered as Web apps.”
– Gartner Predications 2010: Web Technologies Will Evolve in Multiple Directions



“If you can build your app with HTML, CSS and JavaScript, then you
probably should.”
                                 - Johnathan Stark



                                                                                   31
Comparison
                    Web          Hybrid          Native

  Dev cost        Reasonable    Reasonable       Expensive


  Dev time          Short          Short           Long


App portability      High           High           None

                               Native speed if
Performance          Fast
                                  needed
                                                 Very Fast

    Native           No              All            All
 functionality
 App store           No             Yes            Yes
 distribution

  Extensible         No             Yes            Yes


                                                             32
Legal



That depends upon what your definition of “is” is.

                        -- President Bill Clinton




                                                     33
Legal

  License agreements
      MIT, BSD, Apache
        • Grant the end-user permission to do anything they wish with the
          source code.
      GPL, LGPL
        •    Copyleft license
        •    Modifications made and redistributed by the end-user must include
             the source code for these
        •    End-user is not allowed to re-assert the removed copyright back over
             their derivative work.
        •    The modified software is must be made publicly available for further
             modification by any user.
        •    Linking GPL libraries may not be allowed.
        •    Not usually acceptable for products.




                                                                                    34
Legal

  Inbound license or Contributor License Agreement (CLA)
      Defines the terms under which intellectual property has been contributed
       to a company/project
      Contributor agrees they have the right to contribute code
        • Originator/author
      Apache Software Foundation:
        •  The purpose of this agreement is to clearly define the terms under
           which intellectual property has been contributed to the ASF and
           thereby allow us to defend the project should there be a legal dispute
           regarding the software at some future time.
      Protects PhoneGap project and anyone who uses it.




                                                                                    35
Legal

  JSON
      The license includes this restriction: "The software shall be used for
       good, not evil." If your conscience cannot live with that, then choose a
       different package.
  Apple iOS SDK License
      Potential for contamination by proprietary information
      Unlimited liability for user, extremely limited liability for Apple
      Restrictions on distribution
      App acceptance subject to Apple’s rules

  IBM teams have segmented development
      iOS developers cannot write code for other devices
      Android, BB developers cannot look at iOS SDK docs
      iOS apps cannot be ported – must go other direction


                                                                                  36
Cool Stuff

  phonegap-simjs
    PhoneGap development using JavaScript simulator




                                                       37
Cool Stuff

  phonegap-simjs
      PhoneGap development using JavaScript simulator
  phonegap-java
     Desktop version of PhoneGap
     Based upon Java for cross-platform
     Ported Android code




                                                         38
Cool Stuff

  phonegap-simjs
      PhoneGap development using JavaScript simulator
  phonegap-java
      Desktop version of PhoneGap
      Based upon Java for cross-platform
      Ported Android code
  Dojo Mobile




                                                         39
40


           Mobile Dojo (dojox.mobile)
       JavaScript toolkit and widget set for creating mobile applications
       Optimized for mobile browsers
           Lightweight, minimal dependencies
       Native look
           CSS themes for both iOS and Android-based devices
           iOS and Android-style controls and widgets




                                                                             40
41


          Mobile Dojo (dojox.mobile)
       CSS features used to optimize webkit-
       based browsers
           Animation, gradient colors, rounded
            rectangles
       Animation
           Uses CSS3-based animation where
            possible
           Can use JavaScript animation for clients
            with don't support CSS3 animations
           Flip, slide, fade
       Responds to both orientations as well
        orientation changes
       Complete mobile widget framework
           Switch, buttons, headings, tabs, lists,
            icons, containers



                                                       41
42


              Dojo Mobile – iPhone Theme




 Heading with a back button   Round Rectangle List       Round Rectangle List    Edge-to-Edge List
                                                           (Variable Height)




             Tab Container              Icon Container                  Switch              RoundRect

                                                                                                        42
43


          Mobile Dojo - Widgets
       Charts
           Optimized for mobile
           Themes adapted to small screens
           iOS, Android, Blackberry
           Touch support for scrolling and
            panning
       Gauges
           Several new predefined styles
           Touch support for changing value
           iOS, Android, Blackberry




         http://chrism.dojotoolkit.org/mobile-0.2/make_samples/dojo-samples/demos/mobile-gallery/demo.html


                                                                                                             43
44


     Mobile Dojo – View Navigation

        PageA




                PageB




                                     44
Thank you!
       ‫תודה‬
        Hebrew

                                                 Japanese


     Danke
         German
                           Merci
                                French
                                                            Grazie
                                                                 Italian




         Korean
                                                            Gracias
                                                                  Spanish




          Russian                                                 Thai

                                Arabic


                          Obrigado
     Simplified Chinese   Brazilian Portuguese               Traditional Chinese




29
                                                                                   45

Más contenido relacionado

La actualidad más candente

Build Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapBuild Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapAllan Huang
 
10 patterns in successful api programs 2
10 patterns in successful api programs 210 patterns in successful api programs 2
10 patterns in successful api programs 2Apigee | Google Cloud
 
Mobile (App) Development with Sitecore
Mobile (App) Development with SitecoreMobile (App) Development with Sitecore
Mobile (App) Development with SitecorePieter Brinkman
 
Choosing the Right Mobile Development Platform (Part 4)
Choosing the Right Mobile Development Platform (Part 4)Choosing the Right Mobile Development Platform (Part 4)
Choosing the Right Mobile Development Platform (Part 4)Chris Griffith
 
Hybrid Mobile Applications
Hybrid Mobile ApplicationsHybrid Mobile Applications
Hybrid Mobile ApplicationsRuwan Ranganath
 
Hybrid mobile app development
Hybrid mobile app developmentHybrid mobile app development
Hybrid mobile app developmentChamil Madusanka
 
New Age Applications with Kendo UI
New Age Applications with Kendo UINew Age Applications with Kendo UI
New Age Applications with Kendo UIAbhishek Kant
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGapJoseph Labrecque
 
HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기정현 황
 
Introduction to hybrid application development
Introduction to hybrid application developmentIntroduction to hybrid application development
Introduction to hybrid application developmentKunjan Thakkar
 
Let the community do more than just Apps!
Let the community do more than just Apps!Let the community do more than just Apps!
Let the community do more than just Apps!Joachim Ritter
 
Intro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildIntro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildChris Griffith
 
Native vs Hybrid vs Web
Native vs Hybrid vs WebNative vs Hybrid vs Web
Native vs Hybrid vs WebRuckit
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchSteve Drucker
 
Mobile applications chapter 5
Mobile applications chapter 5Mobile applications chapter 5
Mobile applications chapter 5Akib B. Momin
 

La actualidad más candente (20)

Build Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGapBuild Cross-Platform Mobile Application with PhoneGap
Build Cross-Platform Mobile Application with PhoneGap
 
Phone gap
Phone gapPhone gap
Phone gap
 
Hybrid mobile apps
Hybrid mobile appsHybrid mobile apps
Hybrid mobile apps
 
10 patterns in successful api programs 2
10 patterns in successful api programs 210 patterns in successful api programs 2
10 patterns in successful api programs 2
 
Mobile (App) Development with Sitecore
Mobile (App) Development with SitecoreMobile (App) Development with Sitecore
Mobile (App) Development with Sitecore
 
On Mobile- Product Strategy
On Mobile- Product StrategyOn Mobile- Product Strategy
On Mobile- Product Strategy
 
Choosing the Right Mobile Development Platform (Part 4)
Choosing the Right Mobile Development Platform (Part 4)Choosing the Right Mobile Development Platform (Part 4)
Choosing the Right Mobile Development Platform (Part 4)
 
Hybrid Mobile Applications
Hybrid Mobile ApplicationsHybrid Mobile Applications
Hybrid Mobile Applications
 
Hybrid mobile app development
Hybrid mobile app developmentHybrid mobile app development
Hybrid mobile app development
 
New Age Applications with Kendo UI
New Age Applications with Kendo UINew Age Applications with Kendo UI
New Age Applications with Kendo UI
 
Getting Acquainted with PhoneGap
Getting Acquainted with PhoneGapGetting Acquainted with PhoneGap
Getting Acquainted with PhoneGap
 
HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기HTML5를 활용한 하이브리드 앱개발하기
HTML5를 활용한 하이브리드 앱개발하기
 
Intro to PhoneGap
Intro to PhoneGapIntro to PhoneGap
Intro to PhoneGap
 
Introduction to hybrid application development
Introduction to hybrid application developmentIntroduction to hybrid application development
Introduction to hybrid application development
 
Let the community do more than just Apps!
Let the community do more than just Apps!Let the community do more than just Apps!
Let the community do more than just Apps!
 
Intro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap BuildIntro to PhoneGap and PhoneGap Build
Intro to PhoneGap and PhoneGap Build
 
Native vs Hybrid vs Web
Native vs Hybrid vs WebNative vs Hybrid vs Web
Native vs Hybrid vs Web
 
phonegap_101
phonegap_101phonegap_101
phonegap_101
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
 
Mobile applications chapter 5
Mobile applications chapter 5Mobile applications chapter 5
Mobile applications chapter 5
 

Destacado

Developing Hybrid Applications with IONIC
Developing Hybrid Applications with IONICDeveloping Hybrid Applications with IONIC
Developing Hybrid Applications with IONICFuat Buğra AYDIN
 
Lucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationLucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationCodemotion
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicErmias Bayu
 
Case study: integrating azure with google app engine
Case study: integrating azure with google app engine Case study: integrating azure with google app engine
Case study: integrating azure with google app engine Miguel Scotter
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicKadhem Soltani
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkCihad Horuzoğlu
 
Build Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic FrameworkBuild Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic FrameworkSalesforce Developers
 

Destacado (7)

Developing Hybrid Applications with IONIC
Developing Hybrid Applications with IONICDeveloping Hybrid Applications with IONIC
Developing Hybrid Applications with IONIC
 
Lucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile applicationLucio Grenzi - Use Ionic framework to develop mobile application
Lucio Grenzi - Use Ionic framework to develop mobile application
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
 
Case study: integrating azure with google app engine
Case study: integrating azure with google app engine Case study: integrating azure with google app engine
Case study: integrating azure with google app engine
 
Building Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and IonicBuilding Mobile Apps with Cordova , AngularJS and Ionic
Building Mobile Apps with Cordova , AngularJS and Ionic
 
Hybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic FrameworkHybrid Apps with Angular & Ionic Framework
Hybrid Apps with Angular & Ionic Framework
 
Build Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic FrameworkBuild Consumer Apps Using Mobile SDK and Ionic Framework
Build Consumer Apps Using Mobile SDK and Ionic Framework
 

Similar a IBM Explores PhoneGap for Building Cross-Platform Mobile Apps

Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Sreeni Pamidala
 
iPad Apps for the Enterprise
iPad Apps for the EnterpriseiPad Apps for the Enterprise
iPad Apps for the EnterpriseSukumar Jena
 
Pulse 2013 Mobile Build and Connect presentation
Pulse 2013 Mobile Build and Connect presentationPulse 2013 Mobile Build and Connect presentation
Pulse 2013 Mobile Build and Connect presentationLeigh Williamson
 
How to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiHow to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiApperian
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleMatthew Perrins
 
Simplifying Enterprise Mobility - Powering Mobile Apps from The Cloud
Simplifying Enterprise Mobility - Powering Mobile Apps from The CloudSimplifying Enterprise Mobility - Powering Mobile Apps from The Cloud
Simplifying Enterprise Mobility - Powering Mobile Apps from The CloudJoe Drumgoole
 
HTML5 Mobile Web Framework - High Level Design
HTML5 Mobile Web Framework - High Level DesignHTML5 Mobile Web Framework - High Level Design
HTML5 Mobile Web Framework - High Level DesignThanh Nguyen
 
Midweek breather hybridapps
Midweek breather hybridappsMidweek breather hybridapps
Midweek breather hybridappsstrider1981
 
HTML5 Mobile Application Framework
HTML5 Mobile Application FrameworkHTML5 Mobile Application Framework
HTML5 Mobile Application FrameworkThanh Nguyen
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile DevelopmentIntergen
 
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheRoad to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheBrian Sam-Bodden
 
Ibm mobile first briefing
Ibm mobile first briefingIbm mobile first briefing
Ibm mobile first briefingNitin Gaur
 
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleKeynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleJAX London
 
Ibm mobile first platform presentation refresh 05 18-mc
Ibm mobile first platform presentation refresh 05 18-mcIbm mobile first platform presentation refresh 05 18-mc
Ibm mobile first platform presentation refresh 05 18-mcSaranga Tripathy
 
Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Tom Deryckere
 
Go Cloud Native with IBM Bluemix Developer Console - GIDS17
Go Cloud Native with IBM Bluemix Developer Console - GIDS17Go Cloud Native with IBM Bluemix Developer Console - GIDS17
Go Cloud Native with IBM Bluemix Developer Console - GIDS17Vidyasagar Machupalli
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyDMI
 

Similar a IBM Explores PhoneGap for Building Cross-Platform Mobile Apps (20)

Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]
 
iPad Apps for the Enterprise
iPad Apps for the EnterpriseiPad Apps for the Enterprise
iPad Apps for the Enterprise
 
Pulse 2013 Mobile Build and Connect presentation
Pulse 2013 Mobile Build and Connect presentationPulse 2013 Mobile Build and Connect presentation
Pulse 2013 Mobile Build and Connect presentation
 
How to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roiHow to scale enterprise mobility and improve roi
How to scale enterprise mobility and improve roi
 
IBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech OverviewIBM MobileFirst Platform v7 Tech Overview
IBM MobileFirst Platform v7 Tech Overview
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
 
Simplifying Enterprise Mobility - Powering Mobile Apps from The Cloud
Simplifying Enterprise Mobility - Powering Mobile Apps from The CloudSimplifying Enterprise Mobility - Powering Mobile Apps from The Cloud
Simplifying Enterprise Mobility - Powering Mobile Apps from The Cloud
 
HTML5 Mobile Web Framework - High Level Design
HTML5 Mobile Web Framework - High Level DesignHTML5 Mobile Web Framework - High Level Design
HTML5 Mobile Web Framework - High Level Design
 
Midweek breather hybridapps
Midweek breather hybridappsMidweek breather hybridapps
Midweek breather hybridapps
 
HTML5 Mobile Application Framework
HTML5 Mobile Application FrameworkHTML5 Mobile Application Framework
HTML5 Mobile Application Framework
 
Make YOUR business MOBILE
Make YOUR business MOBILEMake YOUR business MOBILE
Make YOUR business MOBILE
 
Cross Platform Mobile Development
Cross Platform Mobile DevelopmentCross Platform Mobile Development
Cross Platform Mobile Development
 
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and MustacheRoad to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
Road to mobile w/ Sinatra, jQuery Mobile, Spine.js and Mustache
 
Ibm mobile first briefing
Ibm mobile first briefingIbm mobile first briefing
Ibm mobile first briefing
 
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark LittleKeynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
Keynote | Middleware Everywhere - Ready for Mobile and Cloud | Dr. Mark Little
 
Ibm mobile first platform presentation refresh 05 18-mc
Ibm mobile first platform presentation refresh 05 18-mcIbm mobile first platform presentation refresh 05 18-mc
Ibm mobile first platform presentation refresh 05 18-mc
 
Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010Mobile CMS - CMSExpo 2010
Mobile CMS - CMSExpo 2010
 
Go Cloud Native with IBM Bluemix Developer Console - GIDS17
Go Cloud Native with IBM Bluemix Developer Console - GIDS17Go Cloud Native with IBM Bluemix Developer Console - GIDS17
Go Cloud Native with IBM Bluemix Developer Console - GIDS17
 
HTML5 for Mobile - When and Why
HTML5 for Mobile - When and WhyHTML5 for Mobile - When and Why
HTML5 for Mobile - When and Why
 
Mobile Apps Develpment - A Comparison
Mobile Apps Develpment - A ComparisonMobile Apps Develpment - A Comparison
Mobile Apps Develpment - A Comparison
 

Último

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
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
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 

Último (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
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
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
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
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
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
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
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
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
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
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 

IBM Explores PhoneGap for Building Cross-Platform Mobile Apps

  • 1. IBM, PhoneGap and the Enterprise July 29, 2011 Bryce Curtis Mobile and Emerging Internet Technology IBM Software Group 1
  • 2. Overview   IBM Team   Why PhoneGap?   Mobile in IBM   Native vs Web   Legal   Cool Stuff 2
  • 3. IBM Team Android iOS Blackberry 3
  • 4. Mobile Landscape   Exploding Mobile Demand   2013 will bring us more Mobiles than Desktops   Next Generation of Application – Always – On   Using Services like Location, Notification, Collaboration, etc…   Different Cost Models / ROI   Business app lifecycle = 3 months   Consumer app lifecycle = 3 days (most people try it only once) 4
  • 5. Mobile Landscape   Exploding market for Mobile Applications   Consumers are demanding rich mobile access across all their devices •  Phones, tablets, game stations, PCs •  Examples – Twitter, FourSquare, Pulse, Collaboration   Businesses expect their users to be able to access important applications and data from multiple devices •  Business brand accessed with similar function •  Examples – Mail, IM, Facebook, Google+, Conferencing, Graphics 5
  • 6. Why Is Mobile Different?   Mobile users require efficient and timely   Applications must still be usable when out access to information. of wireless coverage.   Interactions are short and focused,   Timeliness of data must be interruptions are common. communicated.   Devices are often exclusively touch-   Security is critical. based.   Often used for monitoring as opposed   User interfaces must be easy and to active consumption. obvious.   Social interactions are important. •  Screen real-estate is precious.   Mobile hardware and user interfaces evolve much faster than the typical •  Typing should be minimized. enterprise software cycle. Mobile users today expect high-fidelity access to the same information they have on the desktop, presented in an easy- to-learn, mobile-friendly (often touch-friendly) format. 6
  • 7. Why PhoneGap?   Began working on mobile in early 2010   Several options   IBM research (x2)   Appcelerator - Titanium • Started out as hybrid, but changed to JS   Ansca Mobile – Corona • Ruby   Rhodes – Rhomobile •  Lua   QuickConnect   PhoneGap •  HTML, JS, CSS 7
  • 8. Why PhoneGap?   Vision  Meshes with IBM’s vision and strategy  Hybrid framework  Open source framework  Standards based  Goal is to become obsolete 8
  • 9. 9
  • 11. Why PhoneGap? IBM Mobile Strategy “Extend our platform to mobile based devices using open standards and technologies targeting the broadest set of devices possible leveraging the skills and infrastructure of our existing customers.” -- Greg Truty, WebSphere Strategist “Provide mobile tools and applications that leverage open, standards- based web technologies when appropriate. This includes HTML5, JavaScript, CSS, PhoneGap and Mobile Dojo.” -- Bryce Curtis, Mobile Technologist 11
  • 12. Why PhoneGap?   Vision   Platforms  Supported more platforms  iPhone, Android, Blackberry 4.x, Symbian  More platforms added: •  Blackberry OS5/6, WebOS, Windows Phone, Bada 12
  • 13. Why PhoneGap?   Vision   Platforms   Architecture  Great architecture  Modular (Plug-ins concept)  Extensible 13
  • 14. PhoneGap Architecture PhoneGap Application Web App PhoneGap Plug-ins HTML JavaScript Accelerometer Geolocation CSS Resources Camera Media Compass Network PhoneGap JS APIs Contacts Notification HTML APIs File Storage Custom Plug-ins PhoneGap HTML Rendering Engine (WebView) Native APIs OS APIs OS APIs Services Sensors Mobile OS Input Graphics 14
  • 15. Why PhoneGap?   Vision   Platforms   Architecture   MIT License  Friendly licenses are a must to get through IBM legal  GPL cannot generally be used for IBM products  Many enterprise customers have similar legal guidelines  Customers want indemnification from IBM ... claims licenses that Apple has with Lodsys don't cover use of its technology by independent developers who use it in apps they make for the iPhone and iPad. 15
  • 16. Why PhoneGap?   Vision   Platforms   Architecture   MIT License   Community  Large, active community  Great user and developer forums  Developer mindshare 500,000 Downloads 175,000 visits/month 6100+ forum members Positive feedback from IBM and customers 16
  • 17. A Look Back   Platforms that IBM considered important a year ago  iOS, Android 1.x/2, Blackberry OS 4.x/5/6  Some interest in Symbian, Windows Phone Cell phones are obsolete after 6-12 months 17
  • 18. A Look Back   Platforms that IBM considered important a year ago   iOS, Android 1.x/2, Blackberry OS 4.x/5/6   Some interest in Symbian, Windows Phone   Initial goals  Consistent API  Consistent support  Good documentation  Tests 18
  • 19. Features 19
  • 21. Testing   mobile-spec   Significantly expanded test coverage •  Automatic tests •  Interactive tests   Validate releases   Eliminate regression   Comprehensive test plan? 21
  • 22. IBM Developers   Features  Barcode scanner  Push notifications  Calendar APIs  Remote loading Products are willing to write plug-ins for PhoneGap and contribute back to community. 22
  • 23. Remote Loading Web Server PhoneGap Application Shell App Web App PhoneGap Plug-ins Accelerometer Geolocation HTML Load remote Loader app over web Camera Media CSS Compass Network JavaScript PhoneGap Contacts Notification JS APIs HTML APIs Resources File Storage Custom Plug-ins HTML Rendering Engine PhoneGap Native (WebView) APIs OS APIs OS APIs Services Sensors Mobile OS   Loads web app over HTTP Input Graphics   Application hosted on web server –  Easily updated IBM PhoneGap Browser - anyone can write mobile app –  Personalization –  Same benefits of web app but with access to device features 23
  • 24. IBM Developers   Features   Tooling/debugging  Integrate with Eclipse & IBM RAD  Development & Simulation without SDKs  Multiple builds from single www directory   Test plan & scenarios   Documentation  User manual  IBM DeveloperWorks papers 24
  • 25. IBM Developers   Features   Tooling/debugging   Test plan & scenarios   Documentation   Globalization  Plug-ins for iOS, Android and Blackberry   Security  Secure stores  Encryption  Enterprise apps sandboxed 25
  • 26. IBM Developers   Features   Tooling/debugging   Test plan & scenarios   Documentation   Globalization   Security   PhoneGap is part of the bigger picture  MEAP  Analytics  Mobile device and app management  Back-end connectors  VPN 26
  • 27. IBM Customers   Easy development  Tried native  Web based Native worked ok the first time. But... then came more versions and more phones Native development cost = 2-3x Web cost + Maintenance cost Customers are realizing benefit of mobile web. 27
  • 28. IBM Customers   Easy development   Tried native   Web based   Works with existing servers   Works with existing services  Ajax/XHR  REST 28
  • 29. IBM Customers   Easy development   Tried native   Web based   Works with existing servers   Works with existing services   Ajax/XHR   REST   End-to-end solution  Customer access to existing services  Employee access to internal services   Moving cautiously (investigating)  Security is critical   Distribution  Distribute on App Store  Get around Apple’s App Store 29
  • 30. Native vs Web   This discussion is ongoing   One solution does not fit all   Trade-offs   Not everyone agrees 30
  • 31. Native vs Web   This discussion is ongoing   One solution does not fit all   Trade-offs   Not everyone agrees “By 2015, mobile Web technologies will have advanced sufficiently such that half of the applications that today would be written as native apps will be, instead, delivered as Web apps.” – Gartner Predications 2010: Web Technologies Will Evolve in Multiple Directions “If you can build your app with HTML, CSS and JavaScript, then you probably should.” - Johnathan Stark 31
  • 32. Comparison Web Hybrid Native Dev cost Reasonable Reasonable Expensive Dev time Short Short Long App portability High High None Native speed if Performance Fast needed Very Fast Native No All All functionality App store No Yes Yes distribution Extensible No Yes Yes 32
  • 33. Legal That depends upon what your definition of “is” is. -- President Bill Clinton 33
  • 34. Legal   License agreements   MIT, BSD, Apache • Grant the end-user permission to do anything they wish with the source code.   GPL, LGPL •  Copyleft license •  Modifications made and redistributed by the end-user must include the source code for these •  End-user is not allowed to re-assert the removed copyright back over their derivative work. •  The modified software is must be made publicly available for further modification by any user. •  Linking GPL libraries may not be allowed. •  Not usually acceptable for products. 34
  • 35. Legal   Inbound license or Contributor License Agreement (CLA)   Defines the terms under which intellectual property has been contributed to a company/project   Contributor agrees they have the right to contribute code • Originator/author   Apache Software Foundation: •  The purpose of this agreement is to clearly define the terms under which intellectual property has been contributed to the ASF and thereby allow us to defend the project should there be a legal dispute regarding the software at some future time.   Protects PhoneGap project and anyone who uses it. 35
  • 36. Legal   JSON   The license includes this restriction: "The software shall be used for good, not evil." If your conscience cannot live with that, then choose a different package.   Apple iOS SDK License   Potential for contamination by proprietary information   Unlimited liability for user, extremely limited liability for Apple   Restrictions on distribution   App acceptance subject to Apple’s rules   IBM teams have segmented development   iOS developers cannot write code for other devices   Android, BB developers cannot look at iOS SDK docs   iOS apps cannot be ported – must go other direction 36
  • 37. Cool Stuff   phonegap-simjs  PhoneGap development using JavaScript simulator 37
  • 38. Cool Stuff   phonegap-simjs   PhoneGap development using JavaScript simulator   phonegap-java  Desktop version of PhoneGap  Based upon Java for cross-platform  Ported Android code 38
  • 39. Cool Stuff   phonegap-simjs   PhoneGap development using JavaScript simulator   phonegap-java   Desktop version of PhoneGap   Based upon Java for cross-platform   Ported Android code   Dojo Mobile 39
  • 40. 40 Mobile Dojo (dojox.mobile)   JavaScript toolkit and widget set for creating mobile applications   Optimized for mobile browsers   Lightweight, minimal dependencies   Native look   CSS themes for both iOS and Android-based devices   iOS and Android-style controls and widgets 40
  • 41. 41 Mobile Dojo (dojox.mobile)   CSS features used to optimize webkit- based browsers   Animation, gradient colors, rounded rectangles   Animation   Uses CSS3-based animation where possible   Can use JavaScript animation for clients with don't support CSS3 animations   Flip, slide, fade   Responds to both orientations as well orientation changes   Complete mobile widget framework   Switch, buttons, headings, tabs, lists, icons, containers 41
  • 42. 42 Dojo Mobile – iPhone Theme Heading with a back button Round Rectangle List Round Rectangle List Edge-to-Edge List (Variable Height) Tab Container Icon Container Switch RoundRect 42
  • 43. 43 Mobile Dojo - Widgets   Charts   Optimized for mobile   Themes adapted to small screens   iOS, Android, Blackberry   Touch support for scrolling and panning   Gauges   Several new predefined styles   Touch support for changing value   iOS, Android, Blackberry http://chrism.dojotoolkit.org/mobile-0.2/make_samples/dojo-samples/demos/mobile-gallery/demo.html 43
  • 44. 44 Mobile Dojo – View Navigation PageA PageB 44
  • 45. Thank you! ‫תודה‬ Hebrew Japanese Danke German Merci French Grazie Italian Korean Gracias Spanish Russian Thai Arabic Obrigado Simplified Chinese Brazilian Portuguese Traditional Chinese 29 45