PhoneGap Day - IBM, PhoneGap and the Enterprise

6,412 views
6,048 views

Published on

Published in: Technology
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
6,412
On SlideShare
0
From Embeds
0
Number of Embeds
30
Actions
Shares
0
Downloads
300
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide

PhoneGap Day - IBM, PhoneGap and the Enterprise

  1. 1. IBM, PhoneGap andthe EnterpriseJuly 29, 2011Bryce CurtisMobile and Emerging Internet TechnologyIBM Software Group 1
  2. 2. Overview  IBM Team  Why PhoneGap?  Mobile in IBM  Native vs Web  Legal  Cool Stuff 2
  3. 3. IBM Team Android iOS Blackberry 3
  4. 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. 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. 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. 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. 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. 9
  10. 10. Desktop Mobile 10
  11. 11. Why PhoneGap? IBM Mobile Strategy“Extend our platform to mobile based devices using open standardsand technologies targeting the broadest set of devices possibleleveraging 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. 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. 13. Why PhoneGap?  Vision  Platforms  Architecture  Great architecture  Modular (Plug-ins concept)  Extensible 13
  14. 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 SensorsMobile OS Input Graphics 14
  15. 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 dont cover use of its technology by independent developers who use it in apps they make for the iPhone and iPad. 15
  16. 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. 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. 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. 19. Features 19
  20. 20. Documentation 20
  21. 21. Testing  mobile-spec   Significantly expanded test coverage •  Automatic tests •  Interactive tests   Validate releases   Eliminate regression   Comprehensive test plan? 21
  22. 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. 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. 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. 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. 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. 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. 28. IBM Customers  Easy development   Tried native   Web based  Works with existing servers  Works with existing services  Ajax/XHR  REST 28
  29. 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. 30. Native vs Web  This discussion is ongoing  One solution does not fit all   Trade-offs  Not everyone agrees 30
  31. 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 suchthat half of the applications that today would be written as native appswill 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 youprobably should.” - Johnathan Stark 31
  32. 32. Comparison Web Hybrid Native Dev cost Reasonable Reasonable Expensive Dev time Short Short LongApp portability High High None Native speed ifPerformance Fast needed Very Fast Native No All All functionality App store No Yes Yes distribution Extensible No Yes Yes 32
  33. 33. LegalThat depends upon what your definition of “is” is. -- President Bill Clinton 33
  34. 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. 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. 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. 37. Cool Stuff  phonegap-simjs  PhoneGap development using JavaScript simulator 37
  38. 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. 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. 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. 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 dont 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. 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. 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. 44 Mobile Dojo – View Navigation PageA PageB 44
  45. 45. Thank you! ‫תודה‬ Hebrew Japanese Danke German Merci French Grazie Italian Korean Gracias Spanish Russian Thai Arabic Obrigado Simplified Chinese Brazilian Portuguese Traditional Chinese29 45

×