Your SlideShare is downloading. ×
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Cross Platform Development Strategies with vendor review and PhoneGap case study
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Cross Platform Development Strategies with vendor review and PhoneGap case study

7,043

Published on

State of the technology overview regarding options and strategies, followed by a case study using PhoneGap

State of the technology overview regarding options and strategies, followed by a case study using PhoneGap

Published in: Technology
7 Comments
7 Likes
Statistics
Notes
  • Application Craft employee

    One to add to this discussion is Application Craft + Phonegap. AC is a cloud based development environment for building HTML5/ Javascript apps for mobile, tablet and desktop. AC uses a drag and drop / WYSIWYG visual UI editor and is widget based (like Visual Basic was). It operates a GPL Open Source licence and has a free platform offering.

    Phonegap case study here: goo.gl/QOCXY
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Thanks for a nice summary, JJ

    We have just completed a deeper review of these, and other tools for cross platform mobile development - see http://bit.ly/mobiledevreport for a free report.

    comments welcomed
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • FYI Rhomobile's Rhodes is MIT free and open source.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • BlackBerry is producing video and/or audio of the presentations, but its a paid-dvd.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Jeff - Thanks for the update on Appcelerator. Appcelerator seems like a good offering to me. I apparently didn't appreciate some nuances there - hurray for comments!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
7,043
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
270
Comments
7
Likes
7
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Beyond the BlackBerry Smartphone: Using PhoneGap and Other Strategies to Deploy Applications Across Multiple Devices
    • November 10th, 2009
    • JJ Rohrer
    • President
    • Elegant Technologies, LLC
    • eleganttechnologies.com/blog/etr
  • 2. Agenda
    • Cross Platform Problem Space
    • Vendors, Options, Strategies
    • Case Study - Web, PhoneGap, & Widgets
    • Recommendations
  • 3. Intro
    • About Me
      • MBA + MS/CS = Trouble
    • Experimenting
      • iPhone WebApp + Staff Pick = Big Head
      • iPhone Native
      • Android
      • BlackBerry Storm
      • N60
      • Palm Pre
    • Need Better Way
      • So - Let’s look at cross-platform strategies
  • 4. Cross Platform Problem Space
  • 5. Cross Platform Problem Space
    • Cross Platform Desktop Development as Bad Model
    • Cross Browser Web 2.0 Development as Bad Model
    • Cross Platform for Mobile is New(ish) Beast
  • 6. Cross Platform Problem Space Cross Platform Desktop Development as Bad Model
    • Usually...
      • Big framework
        • J2ME, Adobe Air, GTK
      • Non-native UI
        • Swing, TCL/TK
      • Common Language Output
        • C/C++, Java, Ruby as executable
      • Trades efficiency in execution for code commonality
    • Bad Paradigm for Mobile because...
      • Not efficient
      • Can’t reach all platforms
  • 7. Cross Platform Problem Space Cross Browser Web 2.0 Development as Bad Model
    • Big framework
      • JQuery, Yahoo toolkit, Adobe Air
      • Minimal compatibility with mobile web browsers
    • Non-native UI
      • A common web UI will look out of place on all devices
    • WebApps are bad for mobile because...
      • Breaks “App” paradigm
      • Loses device specific functionality
        • Push, contacts, accelerometers, etc.
  • 8. Cross Platform Problem Space Cross Platform for Mobile is New(ish) Beast
    • Small is beautiful
      • Limited memory, screen, cpu
    • Real UI Differences between platforms
      • Different Look & Feel (Mac vs. PC)
      • Whole Different Metaphors! (Tabs vs. Cards)
      • Different icon sizes, orientations, buttons, etc.
    • Real Language Differences
      • Java is fairly common, but not ubiquitous
      • Android’s OS is way different than iPhone & BlackBerry
      • iPhone only has ObjectiveC, C/C++, & JS in Webview
  • 9. Vendors, Options, Strategies
  • 10. Vendors, Options, Strategies Cross Platform for Mobile is New(ish) Beast
    • Titanium (Appcelerator)
    • Rhomobile
    • J2ME Polish
    • Pure WebApp
    • Web, PhoneGap, Widgets
    • Flash 10.1
  • 11. Vendors, Options, Strategies Capabilities Matrix Cost BB iPhone Palm WebOS S60 Android Win Mobile Safari Chrome Firefox IE 7 Comments
    • Titanium ( Appcelerator)
    $$ X X
    • Rhomobile
    $$ X X X X X +Ruby
    • J2ME Polish
    $$ X X X J2ME w/ macros
    • Pure WebApp
    - x X x x X x X X X X - Limited access to native
    • Web, PhoneGap, Widget
    - x X X X X X X X X X - Immature + Unlimited customization
    • Flash 10.1 (pre-beta)
    $$ X X X X X X X X X X + Adaptive strategies
  • 12. Case Study - Web, PhoneGap, & Widgets
  • 13.
    • Write Once - Run Many
    • Keep it simple
    • Real-World use
    • Start with PhoneGap, or derivative
    Case Study - Web, PhoneGap, & Widgets Objectives
  • 14. Case Study - Web, PhoneGap, & Widgets What is PhoneGap?
    • Open Source
    • Wraps a web view with native code
      • You write your app in HTML + JavaScript
    • Provides conduits to device features
  • 15.
    • PhoneGap has its own JavaScript API
    • Each platform shares some common JavaScript, plus some custom JavaScript
    • Native code creates a web view and creates conduits between that web view and the device’s features.
      • Contacts
      • GPS, etc.
    • Developer writes a single web page
      • Initial testing in desktop browser
      • Final testing on the device
    Case Study - Web, PhoneGap, & Widgets How Does it Work
  • 16. Case Study - Web, PhoneGap, & Widgets App - Quadratic Equation Solver
    • Quadratic Equation: ax^2 + bx + c = 0
    • Easy JavaScript
    • No persistence
    • No native device dependencies (GPS, contacts, etc.).
    • Meaningful on the web, and on mobile devices
    • Nice control point -
      • Is there a market for something this simple?
      • It shouldn’t get any easier than this
  • 17. Case Study - Web, PhoneGap, & Widgets Safari
  • 18. Case Study - Web, PhoneGap, & Widgets Safari to Devices
  • 19. Case Study - Web, PhoneGap, & Widgets Android PhoneGap
  • 20. Case Study - Web, PhoneGap, & Widgets Nokia S60 Widget
  • 21. Case Study - Web, PhoneGap, & Widgets Palm Pre (Web OS) ~Widget
  • 22. Case Study - Web, PhoneGap, & Widgets iPhone PhoneGap
  • 23. Case Study - Web, PhoneGap, & Widgets BlackBerry Widget
  • 24.
    • Approach works for lots of the platforms
    • This app is currently on iPhone, Android, Ovi app stores
    • Unexpected Benefit
      • Created a little web-based app emulator as sales tool
    • Used Dashcode as WYSIWYG editor
    • Writing ‘Fixer’ code to change Dashcode implementation with cross-platform implementation
    Case Study - Web, PhoneGap, & Widgets What Went Well
  • 25. Case Study - Web, PhoneGap, & Widgets What Went Badly
    • Not 100% cross platform yet - but close.
    • Learning the common ground of HTML between browsers
      • Very difficult to work with older browsers.
    • Common Storage Model (cookies vs. SQL vs. other)
    • Asynchronous disconnect
      • Difficult to program when one device handles something, like storage, synchronously, but another handles it asynchronously
    • Lack of means to call soft numeric keypad, numlock, etc.
    • Track ball vs. keypad vs. tapping = impedance mismatch
  • 26. Case Study - Web, PhoneGap, & Widgets What Was Unexpected
    • Accessing Device Features (GPS, Contacts, etc) is almost a solved issue
    • JavaScript compatibility is a huge challenge
    • Layout compatibility is also a huge challenge
      • Different HTML capability
      • Different Screen sizes
    • Build scripts made it tolerable
      • Nearly every device has a variations on themes
        • Icon image (various sizes)
        • Title
        • Version
  • 27. Recommendations
  • 28. Recommendations What to Know...
    • Know your final platforms / devices
      • Desktop Browser, BlackBerry, Android, Etc.
    • Know which technologies you need
      • Contacts, GPS, High Speed Graphics, etc.
    • Know input modes
      • Numeric Keypad, QWERTY, Trackball, Rockers, etc.
    • Know your aptitude towards making custom extensions
      • Do you need support, or can you hack your own extensions?
    • Know your budget
      • Can you buy your way out of difficulty?
  • 29. Recommendations What to Do... It depends... Budget Platform Access Native Technology Responds to Money Responds to Hacking Titanium ( Appcelerator) $$ x X X Rhomobile $$ x X X J2ME Polish $$ x X x Pure WebApp X Web, PhoneGap, Widget X x X Flash 10.1 (pre-beta) $$ X X
  • 30. Conclusion
  • 31. Conclusion
    • Know what you are getting yourself into
    • Be ready to make trade-offs
    • Keep watching the technologies for new developments
  • 32. Thank You
    • 10 November, 2009
    • JJ Rohrer
    • Elegant Technologies, LLC
    • eleganttechnologies.com/blog/etr
    • [email_address]
  • 33. Extra: Widget vs. PhoneGap
    • Widgets are web wrappers written by the device maker
      • This is like PhoneGap, except that device specific
      • Not common API
      • Usually very complete, robust, documented

×