Mobile
PHPDay 2012 - Social tag #phpday
Chi siamo?
 Stefano Mainardi
      @stefanomainardi
      stefano@twinbit.it



 Founder of                and
 I’m a PHP developer
Chi siamo?
 Paolo Mainardi
      @paolomainardi
       paolo@twinbit.it



 Founder of               and
 I’m a PHP developer
Quanti di voi utilizzano Drupal?
Quanti di voi sviluppano
 applicazioni mobile?
Target OS        Development OS          Language
  Apple iOS            OSX                Objective-C

   Android              *                     Java

RIM Blackberry     Windows, OSX      HTML, JS, CSS / JAVA

Windows Phone        Windows           .NET / Silverlight

 Samsung Bada        Windows                 C++

  HP WebOS              *         HTML, CSS, JS (Also: Nodejs)

Symbian, Meego          *                  C++ (Qt)
It’s time to build your mobile
            strategy
It’s time to build your mobile
            strategy
Strategy questions


Support for which devices?
Graphic intensive?
Cross platform?
Custom UX/UI?
Budget?
Define your strategy in advance, before thinking about the
                       technology


                          Strategy
Define your strategy in advance, before thinking about the
                       technology


                          Strategy


                                      Technology
Cosa intendiamo per “App”?




       Native                    HTML5                  Hybrid

     Android: Java            Mobile Framework
iPhone, iPad: Objective-C   jQuery Mobile, Sencha   Titanium, Phonegap
                                    Touch
Cosa intendiamo per “App”?




                                                           :-)




       Native                    HTML5                  Hybrid

     Android: Java            Mobile Framework
iPhone, iPad: Objective-C   jQuery Mobile, Sencha   Titanium, Phonegap
                                    Touch
Native app

                                  Pros                     Cons

                            Can be more immersive       Requires install


                                                    Multiple apps for various
                                Performance
                                                            platforms

                                                     Takes longer to deploy
                               Direct access to
                                                        changes/update
       Native                     Hardware
                                                     (AppStore nightmare)


     Android: Java
iPhone, iPad: Objective-C
HTML5 App


     Pros                                             Cons

    No install                                     Slow performances

Single code-base to                               non-native interface
 multiple platforms
                                              subject to connectivity issues
Drupal friendly



                           HTML5

                        Mobile Framework
                      jQuery Mobile, Sencha
                              Touch
Hybrid app

     Pros                   Cons

No new API to learn
                         Sometime slow
speaks our language
                          performances
  (JS, HTML, CSS)

                      New API to learn (only
Good performance
                           Titanium)


One app to multiple
    platforms

Drupal friendly                                    Hybrid


                                               Titanium, Phonegap
What is Phonegap?


         Application container that allows you to build natively
              installed apps using HTML, CSS & Javascript
Supported Platforms
Generate installable application in the cloud


             “Say goodbye to SDKs, compilers and hardware.”
Generate installable application in the cloud


             “Say goodbye to SDKs, compilers and hardware.”
Features
           Accelerometer   Geolocation

              Camera         Media

             Capture       Notification

             Compass         Storage

            Connection

             Contacts

                File
What is Titanium?


                    Titanium App (JS)
What is Titanium?


                         Titanium App (JS)




                    Native applications
Native SDK installation required
Features
           Accelerometer   Geolocation

              Camera         Media

             Capture       Notification

             Compass         Storage

            Connection

             Contacts

                File
PhoneGap is a web app that runs in a   Titanium is a pure JavaScript API that
     native web browser view                   creates native code


    HTML5, CSS, and JavaScript                   Better performances
Web service
Web service

    Native
     App
Web service

    Native
     App
We need to move away from the short-sighted
vision of the web as a collection of html pages
The web is, and has always been, a collection of requests and
        responses, with pages being only a subset.
DEMO TIME!
Questions?
Rimaniamo in contatto!


 Stefano Mainardi              Paolo Mainardi
    stefano@twinbit.it           paolo@twinbit.it
twitter : @stefanomainardi   twitter : @paolomainardi
Grazie!

Mobile Drupal

  • 1.
    Mobile PHPDay 2012 -Social tag #phpday
  • 2.
    Chi siamo? StefanoMainardi @stefanomainardi stefano@twinbit.it Founder of and I’m a PHP developer
  • 3.
    Chi siamo? PaoloMainardi @paolomainardi paolo@twinbit.it Founder of and I’m a PHP developer
  • 4.
    Quanti di voiutilizzano Drupal?
  • 5.
    Quanti di voisviluppano applicazioni mobile?
  • 9.
    Target OS Development OS Language Apple iOS OSX Objective-C Android * Java RIM Blackberry Windows, OSX HTML, JS, CSS / JAVA Windows Phone Windows .NET / Silverlight Samsung Bada Windows C++ HP WebOS * HTML, CSS, JS (Also: Nodejs) Symbian, Meego * C++ (Qt)
  • 11.
    It’s time tobuild your mobile strategy
  • 12.
    It’s time tobuild your mobile strategy
  • 13.
    Strategy questions Support forwhich devices? Graphic intensive? Cross platform? Custom UX/UI? Budget?
  • 14.
    Define your strategyin advance, before thinking about the technology Strategy
  • 15.
    Define your strategyin advance, before thinking about the technology Strategy Technology
  • 16.
    Cosa intendiamo per“App”? Native HTML5 Hybrid Android: Java Mobile Framework iPhone, iPad: Objective-C jQuery Mobile, Sencha Titanium, Phonegap Touch
  • 17.
    Cosa intendiamo per“App”? :-) Native HTML5 Hybrid Android: Java Mobile Framework iPhone, iPad: Objective-C jQuery Mobile, Sencha Titanium, Phonegap Touch
  • 18.
    Native app Pros Cons Can be more immersive Requires install Multiple apps for various Performance platforms Takes longer to deploy Direct access to changes/update Native Hardware (AppStore nightmare) Android: Java iPhone, iPad: Objective-C
  • 19.
    HTML5 App Pros Cons No install Slow performances Single code-base to non-native interface multiple platforms subject to connectivity issues Drupal friendly HTML5 Mobile Framework jQuery Mobile, Sencha Touch
  • 20.
    Hybrid app Pros Cons No new API to learn Sometime slow speaks our language performances (JS, HTML, CSS) New API to learn (only Good performance Titanium) One app to multiple platforms Drupal friendly Hybrid Titanium, Phonegap
  • 22.
    What is Phonegap? Application container that allows you to build natively installed apps using HTML, CSS & Javascript
  • 23.
  • 24.
    Generate installable applicationin the cloud “Say goodbye to SDKs, compilers and hardware.”
  • 25.
    Generate installable applicationin the cloud “Say goodbye to SDKs, compilers and hardware.”
  • 26.
    Features Accelerometer Geolocation Camera Media Capture Notification Compass Storage Connection Contacts File
  • 28.
    What is Titanium? Titanium App (JS)
  • 29.
    What is Titanium? Titanium App (JS) Native applications
  • 30.
  • 31.
    Features Accelerometer Geolocation Camera Media Capture Notification Compass Storage Connection Contacts File
  • 32.
    PhoneGap is aweb app that runs in a Titanium is a pure JavaScript API that native web browser view creates native code HTML5, CSS, and JavaScript Better performances
  • 33.
  • 34.
    Web service Native App
  • 35.
    Web service Native App
  • 36.
    We need tomove away from the short-sighted vision of the web as a collection of html pages
  • 37.
    The web is,and has always been, a collection of requests and responses, with pages being only a subset.
  • 38.
  • 39.
  • 40.
    Rimaniamo in contatto! Stefano Mainardi Paolo Mainardi stefano@twinbit.it paolo@twinbit.it twitter : @stefanomainardi twitter : @paolomainardi
  • 41.