The mobile ecosystem&
technologicalstrategies
IVANO MALAVOLTA,PhD.
ivano.malavolta@univaq.it
Information Engineering, Computer Science and Mathematics (DISIM)
University ofL„Aquila, Italy
ABOUT ME...
{ I V A N O M A L A V O L T A }
S o f t w a r e A r c h i t e c t u r e & D e v e l o p m e n t
a p p l i e d t o
W i r e l e s s S e n s o r N e t w o r k s
M o b i l e A p p l i c a t i o n s
A u t o n o m o u s Q u a d r o t o r s
Ifyouthinkgoodarchitecture is expensive,
try badarchitecture.
...BrianFoote andJosephYoder
Focus on
HYBRID
Development
Development
strategies
The Mobile
ecosystem
ROADMAP
{ R O A D M A P }
THE MOBILEECOSYSTEM01
Mobileis the LARGEST,
most available
mass medium
THE MOBILEECOSYSTEM
{ }
TO MANKIND
LARGEST
datasource:http://www.slideshare.net/fling/mobile-20-design-develop-for-the-iphone-and-beyond
ONE SYMBOL = 20MILLION PEOPLE
HOW BIGIS THE MOBILEMARKET?
{ M A S S M E D I A ? ? ? }
datasource:http://www.slideshare.net/fling/mobile-20-design-develop-for-the-iphone-and-beyond
in 2009
HOW BIGIS THE MOBILEMARKET?
{ M A S S M E D I A ? ? ? }
in 2009
datasource:http://www.slideshare.net/fling/mobile-20-design-develop-for-the-iphone-and-beyond
HOW BIGIS THE MOBILEMARKET?
{ M A S S M E D I A ? ? ? }
datasource:http://www.slideshare.net/fling/mobile-20-design-develop-for-the-iphone-and-beyond
in 2009
HOW BIGIS THE MOBILEMARKET?
{ M A S S M E D I A ? ? ? }
Printing Press
Recordings
Cinema
Radio
Television
1
2
3
4
5
Internet6
MOBILE IS THE 7TH MASSMEDIA
{ M A S S M E D I A ? ? ? }
Mobile7
MOBILE IS THE 7TH MASSMEDIA
{ M A S S M E D I A ? ? ? }
it started at the same time as the Web
itcandoEVERYTHINGalltheothermediacan do
UNIQUE TRAIT
• Reading (and publishing)
• Play recordings
• Watch movies
• Listen to radio
• Watch TV (and streaming)
• Surf the Internet
Mobile7
UNIQUE BENEFITSOFMOBILE
{ M A S S M E D I A ? ? ? }
Apart from covering all the other media, mobile has five unique benefits
Wedon„t shareour phones with our friends
Informationis always available 24/7,even when idle
7 out of 10people sleep with their phones within reach
Universalclick-to-buy+ credit cards
Ability to create or consumecontent whenever themood
strikes
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT
CONTEXT
{ M O B I L E U N I Q U E N E S S }
Mobile appshavethe amazingcapabilitytoadd
CONTEXT
toinformation,addingimmediate relevance
towhatwearedoing righthere, rightnow
THE MOBILEGOLDENRULE
{ M O B I L E U N I Q U E N E S S }
KILLER
If you canunlockthestateof mind of your usersand start thinkingin
their context, understandinghow amobile experience will add value to
their lives,you willhavetheever-elusive…
APP
Think of your app in its context
• Whois youruser? Businessman,teenager,mum…
• Whatishappening? Are theyhanging outwithfriends?
• Whenwill heinteract? @home?@work?waiting forthe bus?
• Where ishe? Public/privatespace,inside/outside,day/night
• Whywill heuse yourapp?How doyougive Context?
• How is heusing his mobiledevice? Is thedevice held in thehand?Portraitorlandscape?
HOW CAN WEAPPLY THE MOBILEGOLDEN RULE?
{ T H E M O B I L E G O L D E N R U L E }
http://www.endomondo.com
EXAMPLE
{ T H E M O B I L E G O L D E N R U L E }
DEVELOPMENTSTRATEGIES02
Mobile Strategy =
howmuch it will costyoutodevelop yourapp?
Howmuch money?
How much effort?
How much time?
DEVELOPINGA MOBILESTRATEGY
{ D E V E L O P M E N T S T R A T E G I E S }
Mobile design and
development ISNOT CHEAP!
http://www.slideshare.net/fling/native-v-hybrid-v-web
BUSTING THE FIRSTMYTH
{ D E V E L O P M E N T S T R A T E G I E S }
Mobile design and
development ISNOT CHEAP!
http://www.slideshare.net/fling/native-v-hybrid-v-web
BUSTING THE FIRSTMYTH
{ D E V E L O P M E N T S T R A T E G I E S }
Remember, mobile is a newmedium

Don„t trytofollow “traditionalrules”sincemobile hasits ownpeculiarities:
• context,
• location, usermood
• device fragmentation
• uniqueUI rules
• ...
THE NEWRULES FORA MOBILESTRATEGY
{ D E V E L O P M E N T S T R A T E G I E S }
DIFFERENTRULES
Mobile isanever-evolving area
 todayyouarealreadyoutdated
• Forget whatyouthinkyouknowaboutmobile
– It is mostlikely incorrect
• Don’ttry toemulateotherprojects
– Focus onwhatis rightforyouruser,notwhatis right forsomeone else„s user
RULE#1
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Forget what you thinkyou know
• Don„ttrustanyreport,fact,or figurethat1-2yearsold
– It ismostlikely wrong
• Goto yourusers andaskthem questionsin person
– Don„ttrytosimply validateyourideas
• Record everything
– Yourownusers„worldswillhelpyouin focussingon theirneed
• Don„tforget toinnovate
– Trynewthings, bebold,anddon„tbeafraidtofail
RULE#2
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Believe what you see, notwhat you read
• Avoidtalkingaboutconstraints atanearly-stagebrainstormingsession
– Refer back to Rule#1 and forget what youthink youknow
• Therewill alwaysbeconstraintsin mobile,acceptit!
• Focus onstrategy first, whattheuserneeds,andlaydownthefeatures
– Then,if theconstraints become an issue, fall back to the user goals
• Thereisalwaysanalternative
RULE#3
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Constraints never come first
RULE#4
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Focus on context, goals and needs
• Defining theusers„context is thefirst thing todo
– without it, youdon„t have a mobile strategy, youhaveonly a plan of action
• Uncovertheusers’ goals
– and then tryand understand how the users„ context alters their goals
• Withgoalsunderstood,figureoutthe tasksthe userswanttoperform
• Lookforwaysto filter content bycontext
– for example: location, media, and model
RULE#5
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
You can„t support everything
• Don„t try to support everything
– Start with the devices that best represent your core customer
• The most popular might not always be the best device for your project
• Check your server logs for the devices accessing your site
– These are the first devices to target
• Go to a mobile phones store and do a little market research to find out the
recommended devices for your target customer
RULE#6
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Don„t convert, create
Great mobile products are created,neverported!
• Understand your userand his context
– Having an idea of howand when users will access your content will aid in
understanding howto bestcreatea tailored mobile experience
• Mobile is a uniquemedium
RULE#7
{ T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y }
Keepit simple
People wantto use mobile devices in asimple way
• Simplicity  fewer problems
• Easier to iterate and evolve yourapp
• Don„t tryto createa desktop softwareon a mobile!
– Adding feature after feature is aneasy trap to fall in
• Buildtheexperience aroundyour users„main need andnothingelse
NATIVE VSWEBVSHYBRIDAPPS
{ D E V E L O P M E N T S T R A T E G I E S }
There are no golden rules here…
It depends on a lot of factors, suchas
• Which type of app are you creating?
• When do you need it?
• What are your skills?
http://bit.ly/GWOaP1
A FIRST LOOT AT NATIVE VS WEB
{ D E V E L O P M E N T S T R A T E G I E S }
http://bit.ly/GWPgdm
NATIVE
{ D E V E L O P M E N T S T R A T E G I E S }
PRO
Lets you create apps with rich user interfaces and/or heavy graphics
CONS
• Development Time
• Development Cost
• Ongoing Maintenance
• No portability (apps cannot be used on other platforms)
http://bit.ly/GWOaP1
PRO
CONS
EXAMPLESOF NATIVE APP
{ D E V E L O P M E N T S T R A T E G I E S }
http://www.whatsapp.com/
http://www.ea.com/it/ipad/nfs‎
WEB
{ D E V E L O P M E N T S T R A T E G I E S }
PRO
• Offers fast development, simple maintenance, and full application portability
• Onemobile web app works onany platform
CONS
• Can„t handle heavy graphics
• Can„t access cameraormicrophone
http://bit.ly/GWOaP1
PRO
CONS
EXAMPLE OFMOBILEWEBAPP
{ D E V E L O P M E N T S T R A T E G I E S }
http://asidemag.com/
http://amazon.com/
HYBRID
{ D E V E L O P M E N T S T R A T E G I E S }
PRO
• Development speed of mobile webapps
• Deviceaccessand app store distribution of native apps
CONS
• Can„t handle heavy graphics
• Requires familiarity with a mobile framework
PRO
CONS
EXAMPLESOF HYBRIDAPP
{ D E V E L O P M E N T S T R A T E G I E S }
http://flipboard.com
http://linkedin.com
http://gmail.com
SUMMARY
{ N A T I V E V S W E B V S H Y B R I D }
DISTRIBUTION
App Store/Market
App Store/Market
Internet
#APPSTOREACH
MAJORPLATFORMS
4
1
1
APPMAINTENANCE
Difficult
Moderate
Low
DEVICEACCESS
Full(Camera, microphone,GPS,
gyroscope,fileupload,
accelerometer,etc.)
Full(Camera, microphone,GPS,
gyroscope,fileupload,
accelerometer,etc.)
Partial(GPS, gyroscope,
accelerometer,fileupload)
SKILLS/TOOLS
Objective-C,Java, C, C++,
C#, VB.net
HTML,CSS,Javascript
+ mobileapp development
framework
HTML,CSS,Javascript
Native
Hybrid
Web
MY VISION
{ D E V E L O P M E N T S T R A T E G I E S }
Mobile web seems to be the only long-termcommercially
viable content platform for mobile devices
FRAGMENTATION
{ M Y V I S I O N }
If you go native…
there are too many platforms to be supported
THE WEB
{ M Y V I S I O N }
The only medium for information and services that lasts from
over 15 years
The web is an advanced technology
• webGL
• Local storage management
• Positioning & mapping
• Real-time data
• Push
• …
DISTRIBUTION CONTROL
{ M Y V I S I O N }
Before..
Operators
Now
Device and Platform makers
Future
Developers
$$$
STOREA
STOREB
STOREC
STORED
CONSUMER EXPECTATIONS
{ M Y V I S I O N }
Users expect things to justwork
 they don„t care about what platform they have
 they simply expect that your app will be available for their
device
so… YOU HAVE TO BE CROSS-PLATFORM
WEBUBIQUITY
{ M Y V I S I O N }
The web is the only platform that
• works across devices
• apps share the same set of standards
• the same app can work also ona desktop
HYBRIDDEVELOPMENT03
PhoneGapVSCordova
{ C o r d o v a }
Adobe/Nitobi donated thePhoneGap codebase to theApachefoundation
– wideraudienceandcontributors
– Transparentgovernance
• Betterdocumentation
– Easiercontributionsforcompanies
• ApacheLicensing
 Therewasonlyone problem:
trademark ambiguity
 CORDOVA
PhoneGapis a distribution
of Apache Cordova
http://www.phonegap.com
PHONEGAP
{ H Y B R I D D E V E L O P M E N T }
The UI layeris aweb browser view
– 100% width
– 100% height
Headless webbrowser
– NoURL bar
– Nochrome
– Nowindowdecorations
– Nozooming
– Notext selection
This isaweb
browser
instance
HOW DOES PHONEGAP WORK?
{ H Y B R I D D E V E L O P M E N T }
PhoneGap
Javascript
APIprovider
forAndroid
APIprovider
foriOS
APIprovider
forWindows Phone
APIprovider
forBlacberry
Phonegap
Mobile
app
FEATURESCOVERAGE
{ H Y B R I D D E V E L O P M E N T }
http://projects.apache.org/projects/cordova.html
RECURRENTAPP ARCHITECTURE
{ H Y B R I D D E V E L O P M E N T }
The app acts as a client for user interaction
The app communicates with an applicationserver to receive data
The application server handles business logic and communicates with a back-end data
repository
THE APP
{ H Y B R I D D E V E L O P M E N T }
It generally uses the single-pageapplication model
• the application logic is inside a single HTML page
• This page is never unloaded from memory
• Data will be displayed by updatingthe HTML DOM
• data is retrieved from the application server using Ajax
THE SERVER
{ H Y B R I D D E V E L O P M E N T }
It is a classical web server
– server-side scriptinglanguage such as Java, .NET, PHP, etc…
– communication can be based on:
• RESTful services (XML, JSON, etc.)
• SOAP
– It performs business logic, and generally gets or pushes data from a separate repository
THE DATA REPOSITORY
{ H Y B R I D D E V E L O P M E N T }
It may be:
– a standard DB (usually deployed in the same machine of the application server)
– an externalAPI
Both application server and back-end repository can be provided as a service  BaaS
WHENPHONEGAP IS NOT ENOUGH...
{ H Y B R I D D E V E L O P M E N T }
Sometimes PhoneGap is not enough as is for our purposes
• unsupported feature
• heavyweight data processing is faster in native code
– ex. images manipulation
• background processing is better handled natively
– ex. Files sync
• complex business logic
 you candevelop a PhoneGap plugin
Nowadays the mobile ecosystem is
• complicated
• fragmented
• a political nightmare
RUN
AWAY!!!
CONCLUSION
however...
UNIVERSITYOFL’AQUILA- DISIMDEPARTMENT
WWW.IVANOMALAVOLTA.COM
IVANO.MALAVOLTA@UNIVAQ.IT
@IMALAVOLTA
CONTACT INFORMATION
{ I V A N O M A L A V O L T A }
IVANOMALAVOLTA

The mobile ecosystem & technological strategies

  • 1.
    The mobile ecosystem& technologicalstrategies IVANOMALAVOLTA,PhD. ivano.malavolta@univaq.it Information Engineering, Computer Science and Mathematics (DISIM) University ofL„Aquila, Italy
  • 2.
    ABOUT ME... { IV A N O M A L A V O L T A } S o f t w a r e A r c h i t e c t u r e & D e v e l o p m e n t a p p l i e d t o W i r e l e s s S e n s o r N e t w o r k s M o b i l e A p p l i c a t i o n s A u t o n o m o u s Q u a d r o t o r s Ifyouthinkgoodarchitecture is expensive, try badarchitecture. ...BrianFoote andJosephYoder
  • 3.
  • 4.
  • 5.
    Mobileis the LARGEST, mostavailable mass medium THE MOBILEECOSYSTEM { } TO MANKIND LARGEST
  • 6.
    datasource:http://www.slideshare.net/fling/mobile-20-design-develop-for-the-iphone-and-beyond ONE SYMBOL =20MILLION PEOPLE HOW BIGIS THE MOBILEMARKET? { M A S S M E D I A ? ? ? }
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
    Mobile7 MOBILE IS THE7TH MASSMEDIA { M A S S M E D I A ? ? ? } it started at the same time as the Web itcandoEVERYTHINGalltheothermediacan do UNIQUE TRAIT • Reading (and publishing) • Play recordings • Watch movies • Listen to radio • Watch TV (and streaming) • Surf the Internet
  • 12.
    Mobile7 UNIQUE BENEFITSOFMOBILE { MA S S M E D I A ? ? ? } Apart from covering all the other media, mobile has five unique benefits Wedon„t shareour phones with our friends Informationis always available 24/7,even when idle 7 out of 10people sleep with their phones within reach Universalclick-to-buy+ credit cards Ability to create or consumecontent whenever themood strikes
  • 13.
    CONTEXT CONTEXTCONTEXT CONTEXTCONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT CONTEXTCONTEXT CONTEXT CONTEXT CONTEXT { M O B I L E U N I Q U E N E S S } Mobile appshavethe amazingcapabilitytoadd CONTEXT toinformation,addingimmediate relevance towhatwearedoing righthere, rightnow
  • 14.
    THE MOBILEGOLDENRULE { MO B I L E U N I Q U E N E S S } KILLER If you canunlockthestateof mind of your usersand start thinkingin their context, understandinghow amobile experience will add value to their lives,you willhavetheever-elusive… APP
  • 15.
    Think of yourapp in its context • Whois youruser? Businessman,teenager,mum… • Whatishappening? Are theyhanging outwithfriends? • Whenwill heinteract? @home?@work?waiting forthe bus? • Where ishe? Public/privatespace,inside/outside,day/night • Whywill heuse yourapp?How doyougive Context? • How is heusing his mobiledevice? Is thedevice held in thehand?Portraitorlandscape? HOW CAN WEAPPLY THE MOBILEGOLDEN RULE? { T H E M O B I L E G O L D E N R U L E }
  • 16.
    http://www.endomondo.com EXAMPLE { T HE M O B I L E G O L D E N R U L E }
  • 17.
  • 18.
    Mobile Strategy = howmuchit will costyoutodevelop yourapp? Howmuch money? How much effort? How much time? DEVELOPINGA MOBILESTRATEGY { D E V E L O P M E N T S T R A T E G I E S }
  • 19.
    Mobile design and developmentISNOT CHEAP! http://www.slideshare.net/fling/native-v-hybrid-v-web BUSTING THE FIRSTMYTH { D E V E L O P M E N T S T R A T E G I E S }
  • 20.
    Mobile design and developmentISNOT CHEAP! http://www.slideshare.net/fling/native-v-hybrid-v-web BUSTING THE FIRSTMYTH { D E V E L O P M E N T S T R A T E G I E S }
  • 21.
    Remember, mobile isa newmedium  Don„t trytofollow “traditionalrules”sincemobile hasits ownpeculiarities: • context, • location, usermood • device fragmentation • uniqueUI rules • ... THE NEWRULES FORA MOBILESTRATEGY { D E V E L O P M E N T S T R A T E G I E S } DIFFERENTRULES
  • 22.
    Mobile isanever-evolving area todayyouarealreadyoutdated • Forget whatyouthinkyouknowaboutmobile – It is mostlikely incorrect • Don’ttry toemulateotherprojects – Focus onwhatis rightforyouruser,notwhatis right forsomeone else„s user RULE#1 { T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y } Forget what you thinkyou know
  • 23.
    • Don„ttrustanyreport,fact,or figurethat1-2yearsold –It ismostlikely wrong • Goto yourusers andaskthem questionsin person – Don„ttrytosimply validateyourideas • Record everything – Yourownusers„worldswillhelpyouin focussingon theirneed • Don„tforget toinnovate – Trynewthings, bebold,anddon„tbeafraidtofail RULE#2 { T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y } Believe what you see, notwhat you read
  • 24.
    • Avoidtalkingaboutconstraints atanearly-stagebrainstormingsession –Refer back to Rule#1 and forget what youthink youknow • Therewill alwaysbeconstraintsin mobile,acceptit! • Focus onstrategy first, whattheuserneeds,andlaydownthefeatures – Then,if theconstraints become an issue, fall back to the user goals • Thereisalwaysanalternative RULE#3 { T H E N E W R U L E S F O R A M O B I L E S T R A T E G Y } Constraints never come first
  • 25.
    RULE#4 { T HE N E W R U L E S F O R A M O B I L E S T R A T E G Y } Focus on context, goals and needs • Defining theusers„context is thefirst thing todo – without it, youdon„t have a mobile strategy, youhaveonly a plan of action • Uncovertheusers’ goals – and then tryand understand how the users„ context alters their goals • Withgoalsunderstood,figureoutthe tasksthe userswanttoperform • Lookforwaysto filter content bycontext – for example: location, media, and model
  • 26.
    RULE#5 { T HE N E W R U L E S F O R A M O B I L E S T R A T E G Y } You can„t support everything • Don„t try to support everything – Start with the devices that best represent your core customer • The most popular might not always be the best device for your project • Check your server logs for the devices accessing your site – These are the first devices to target • Go to a mobile phones store and do a little market research to find out the recommended devices for your target customer
  • 27.
    RULE#6 { T HE N E W R U L E S F O R A M O B I L E S T R A T E G Y } Don„t convert, create Great mobile products are created,neverported! • Understand your userand his context – Having an idea of howand when users will access your content will aid in understanding howto bestcreatea tailored mobile experience • Mobile is a uniquemedium
  • 28.
    RULE#7 { T HE N E W R U L E S F O R A M O B I L E S T R A T E G Y } Keepit simple People wantto use mobile devices in asimple way • Simplicity  fewer problems • Easier to iterate and evolve yourapp • Don„t tryto createa desktop softwareon a mobile! – Adding feature after feature is aneasy trap to fall in • Buildtheexperience aroundyour users„main need andnothingelse
  • 29.
    NATIVE VSWEBVSHYBRIDAPPS { DE V E L O P M E N T S T R A T E G I E S } There are no golden rules here… It depends on a lot of factors, suchas • Which type of app are you creating? • When do you need it? • What are your skills? http://bit.ly/GWOaP1
  • 30.
    A FIRST LOOTAT NATIVE VS WEB { D E V E L O P M E N T S T R A T E G I E S } http://bit.ly/GWPgdm
  • 31.
    NATIVE { D EV E L O P M E N T S T R A T E G I E S } PRO Lets you create apps with rich user interfaces and/or heavy graphics CONS • Development Time • Development Cost • Ongoing Maintenance • No portability (apps cannot be used on other platforms) http://bit.ly/GWOaP1 PRO CONS
  • 32.
    EXAMPLESOF NATIVE APP {D E V E L O P M E N T S T R A T E G I E S } http://www.whatsapp.com/ http://www.ea.com/it/ipad/nfs‎
  • 33.
    WEB { D EV E L O P M E N T S T R A T E G I E S } PRO • Offers fast development, simple maintenance, and full application portability • Onemobile web app works onany platform CONS • Can„t handle heavy graphics • Can„t access cameraormicrophone http://bit.ly/GWOaP1 PRO CONS
  • 34.
    EXAMPLE OFMOBILEWEBAPP { DE V E L O P M E N T S T R A T E G I E S } http://asidemag.com/ http://amazon.com/
  • 35.
    HYBRID { D EV E L O P M E N T S T R A T E G I E S } PRO • Development speed of mobile webapps • Deviceaccessand app store distribution of native apps CONS • Can„t handle heavy graphics • Requires familiarity with a mobile framework PRO CONS
  • 36.
    EXAMPLESOF HYBRIDAPP { DE V E L O P M E N T S T R A T E G I E S } http://flipboard.com http://linkedin.com http://gmail.com
  • 37.
    SUMMARY { N AT I V E V S W E B V S H Y B R I D } DISTRIBUTION App Store/Market App Store/Market Internet #APPSTOREACH MAJORPLATFORMS 4 1 1 APPMAINTENANCE Difficult Moderate Low DEVICEACCESS Full(Camera, microphone,GPS, gyroscope,fileupload, accelerometer,etc.) Full(Camera, microphone,GPS, gyroscope,fileupload, accelerometer,etc.) Partial(GPS, gyroscope, accelerometer,fileupload) SKILLS/TOOLS Objective-C,Java, C, C++, C#, VB.net HTML,CSS,Javascript + mobileapp development framework HTML,CSS,Javascript Native Hybrid Web
  • 38.
    MY VISION { DE V E L O P M E N T S T R A T E G I E S } Mobile web seems to be the only long-termcommercially viable content platform for mobile devices
  • 39.
    FRAGMENTATION { M YV I S I O N } If you go native… there are too many platforms to be supported
  • 40.
    THE WEB { MY V I S I O N } The only medium for information and services that lasts from over 15 years The web is an advanced technology • webGL • Local storage management • Positioning & mapping • Real-time data • Push • …
  • 41.
    DISTRIBUTION CONTROL { MY V I S I O N } Before.. Operators Now Device and Platform makers Future Developers $$$ STOREA STOREB STOREC STORED
  • 42.
    CONSUMER EXPECTATIONS { MY V I S I O N } Users expect things to justwork  they don„t care about what platform they have  they simply expect that your app will be available for their device so… YOU HAVE TO BE CROSS-PLATFORM
  • 43.
    WEBUBIQUITY { M YV I S I O N } The web is the only platform that • works across devices • apps share the same set of standards • the same app can work also ona desktop
  • 44.
  • 45.
    PhoneGapVSCordova { C or d o v a } Adobe/Nitobi donated thePhoneGap codebase to theApachefoundation – wideraudienceandcontributors – Transparentgovernance • Betterdocumentation – Easiercontributionsforcompanies • ApacheLicensing  Therewasonlyone problem: trademark ambiguity  CORDOVA PhoneGapis a distribution of Apache Cordova http://www.phonegap.com
  • 46.
    PHONEGAP { H YB R I D D E V E L O P M E N T } The UI layeris aweb browser view – 100% width – 100% height Headless webbrowser – NoURL bar – Nochrome – Nowindowdecorations – Nozooming – Notext selection This isaweb browser instance
  • 47.
    HOW DOES PHONEGAPWORK? { H Y B R I D D E V E L O P M E N T } PhoneGap Javascript APIprovider forAndroid APIprovider foriOS APIprovider forWindows Phone APIprovider forBlacberry Phonegap Mobile app
  • 48.
    FEATURESCOVERAGE { H YB R I D D E V E L O P M E N T } http://projects.apache.org/projects/cordova.html
  • 49.
    RECURRENTAPP ARCHITECTURE { HY B R I D D E V E L O P M E N T } The app acts as a client for user interaction The app communicates with an applicationserver to receive data The application server handles business logic and communicates with a back-end data repository
  • 50.
    THE APP { HY B R I D D E V E L O P M E N T } It generally uses the single-pageapplication model • the application logic is inside a single HTML page • This page is never unloaded from memory • Data will be displayed by updatingthe HTML DOM • data is retrieved from the application server using Ajax
  • 51.
    THE SERVER { HY B R I D D E V E L O P M E N T } It is a classical web server – server-side scriptinglanguage such as Java, .NET, PHP, etc… – communication can be based on: • RESTful services (XML, JSON, etc.) • SOAP – It performs business logic, and generally gets or pushes data from a separate repository
  • 52.
    THE DATA REPOSITORY {H Y B R I D D E V E L O P M E N T } It may be: – a standard DB (usually deployed in the same machine of the application server) – an externalAPI Both application server and back-end repository can be provided as a service  BaaS
  • 53.
    WHENPHONEGAP IS NOTENOUGH... { H Y B R I D D E V E L O P M E N T } Sometimes PhoneGap is not enough as is for our purposes • unsupported feature • heavyweight data processing is faster in native code – ex. images manipulation • background processing is better handled natively – ex. Files sync • complex business logic  you candevelop a PhoneGap plugin
  • 54.
    Nowadays the mobileecosystem is • complicated • fragmented • a political nightmare RUN AWAY!!! CONCLUSION however...
  • 55.