SlideShare ist ein Scribd-Unternehmen logo
1 von 43
Downloaden Sie, um offline zu lesen
Planning your
         Dream Mobile
          Application
          In 2384729396847 easy steps



sean@for-each.com
Powered by:




              Your app platform is not the target,
              it’s the way to achieve your target



                  “Business opportunities are like buses,
                   there’s always another one coming“
                              – Richard Branson
Powered by:




                    Parameters to consider
       • Features
              – Any unique requirements/features?
              – Hardware requirements (external barcode
                scanner? Credit card scanner? Printer?)




                          MOBILE PAYMENT MARKET TO HIT $100
                                      BILLION
Powered by:




                     Parameters to consider
       • Market share
              – Mass               Q3 2012
                                ANDROID: 75%
                distribution?     IOS: 14.9%
                Boutique?          BB: 4.3%
                                SYMBIAN: 2.3%
              – Areas,          WINPHONE: 2%
                languages,
                culture
Powered by:




                     Parameters to consider
       • Monetize
              – Are you selling the app or earning money from the
                app?
              – Free / Premium or maybe FreeMium?
       • App eco-system
              – Habits users are familiar with (Windows phone)
Powered by:




                     Parameters to consider
       • Development resources
              – The human resource (supply and demand)
              – Licensing & distribution
       • Branding
              – What the platform tells about your app?
                Android-masses? BlackBerry-work? iOS-fashion?
       • Future
              – The million dollar question!
Powered by:




                      … And the wrong
                       considerations
       • “Everybody I see has iPhones! That’s my
         market share I’m aiming…”
       • “I have a BlackBerry device and I love it! Lets
         start by developing to it”
       • “I know Android development, I’ll start with it”
       • “iPhone users buy more apps than Android
         users buy”
Powered by:




              The question is not what’s the
              best OS version, It’s what the
              best OS version that fits you.

                     “By failing to prepare,
                    you are preparing to fail”
                         – Benjamin Franklin
Powered by:




                Understanding your app
                 version compatibility
       • Higher versions = richer capabilities
       • Higher versions = reaching fewer users
       • Think of it this way – If you write your
         document in “Microsoft Word 2013”, users
         running “Word 2003” can’t open it.
       • The goal – to achieve maximum market share
         while keeping maximum capabilities
Powered by:




               Designating the right version
     • Each
       platforms has
       different
       fragmentation
     • It’s easy to see
       the
       differences…
Powered by:




                  Behind the scenes
       • The version isn’t always what the end user
         experience, It’s also the tools and
         technologies the programmer is given to work
         with
       • Using newer versions shortens your
         development time and keeps your staff up-to-
         date with today market
       • But then again… less users reach…
Powered by:




                    So what would
                     you choose?




                iOS 5
              iOS 6
Powered by:




                Great apps need great
              distribution opportunities
Powered by:




                                  Types
              1. Private
              2. Public

              • Each platform has it limitations
              • Your app structure might depend on it
              • It might improve your app security
Powered by:




                     Public distribution type
              • It’s not necessarily a monopoly like Apple’s
                “AppStore”.
              • Android for instance has two major players in the
                market – Google’s “Play” & Amazon’s “AppStore”
Powered by:




                      Private distribution type
              •   Usually for apps designated to run “in house”
              •   Probably custom made for business special needs
              •   Sometimes it’s sold as a bundle of App + Device
              •   Might be temporary for beta testing purposes

              • Private distribution = Private update mechanism,
                Remote auditing, Remote crash handling
Powered by:




              Most application are living online.
              What does it take to make it right?

                       An iPod, a phone, an internet mobile
                 communicator... these are NOT three separate
               devices! And we are calling it iPhone! Today Apple is
                    going to reinvent the phone. And here it is.
                                    - Steve Jobs
Powered by:




                       Connectivity
       • Remember those days you had shaky
         connectivity? Internet crashes or very low
         bandwidth?
       • With that risk in mind you should plan every
         step in your application. Code & Usability.
       • What are your offline abilities you offer for
         your user?
Powered by:




              This lecture is about mobile,
                  not “smart phones”.


                     “Yesterday’s home runs
                    don’t win today’s games”
                            - Babe Ruth
Powered by:




                       When you say mobile
                     device, what do you mean?
       • Lets take Android for example.
         What definition fits best?
              – “Smart phone OS”? (Nope. Has tablets.)
              – “Hand held devices OS”? (Nope. Has other)
              – So.. Just a “Mobile OS”? YES!
       • What’s the unique features of a mobile
         platform? In today world – no rules!
Powered by:




              Android
Powered by:




                  You’ve got a great idea!
              How are you going to fit it all into
                     a mobile screen?

                    “Simplicity is the ultimate form of
                              sophistication”
                              - Leonardo da Vinci
Powered by:




               Common layout decisions
       • Portrait? Landscape? Should I support them
         both?
       • How to best express the application contents
         on various device types?
       • Is the development compatible for both
         iPhone (smart phone) and iPad (tablet) ?
Powered by:




               Smart phone vs. Tablet
       • They both offer the same features, so the
         differences are mainly in the layout design
       • Don’t save money by deciding “I’ll start
         developing to smart phone and then move on
         to tablet”
       • You should go the extra mile to make your
         market share bigger. Never say “no” to users
         wishing to download your app
Powered by:




              TABLET COMPATIBILITY
              LEVEL 1 - NONE
Powered by:
Powered by:




                      TABLET COMPATIBILITY
              LEVEL 2 – TABLET COMPATIBLE WITH
                   BASIC LAYOUT CHANGES
Powered by:




                   TABLET COMPATIBILITY
              LEVEL 3 – FULL COMPATIBILITY
Powered by:




                      UX (User experience)
       • Being mobile consumers doesn’t qualify us as
         UX experts
       • Consulting UX mobile designer is crucial
       • Everyone that is involved in the application
         development process should learn the basic
         principals and practice them in their expertise
         area
Powered by:




                Working under the limited
              resources of a mobile device



               “There is no reason anyone would want a
                       computer in their home”
                            - Ken Olson, 1977
Powered by:




                        Know your limits
       •      Limited computer power
       •      Limited storage
       •      Relies on battery power
       •      Network bandwidth is expensive
Powered by:




                     Work with those limits
       •      Limited computer power -> calculate on server
       •      Limited storage -> know where to store
       •      Relies on battery power -> don’t over work
       •      Network bandwidth is expensive -> offer the
              user the ability to control it
Powered by:




                     Questions you might want
                          to ask yourself
       •      Can I cache some of the data? For example pictures
       •      Do I have to check the exact GPS right now?
       •      Is my data structure efficient?
       •      Is my main algorithm optimized?
       •      Am I asking too much API requests from servers?
       •      Am I recycling the data I’m creating in a good sense?
       •      Am I maximizing the best native libraries?
       •      Did I close all the resources I’ve used?
Powered by:




              Protect yourself and your users
                      (at least try to)


               “The only truly secure system is one that is powered
               off, cast in a block of concrete and sealed in a lead-
                           lined room with armed guards”
                                  – Gene Spafford
Powered by:




                  Common security practices
       • Guard against malicious input
       • Secure access to the application
       • Encrypt sensitive configuration data
       • Security of the persistent storage
       • Data on the wire
       • Enforce a strong password policy
       • Limit the processing to something realistic e.g. large
         searches
       • Auditing and logging
       • Beware of buffer overruns
Powered by:




                ... And some mobile considerations

       • Less
         permission
         you ask =
         Easier
         gaining user
         trust
Powered by:




               Machen Sie Ihren Benutzernamen
                        zu Hause fühlen,
              selbst bei 2.00, und selbst wenn sie
                      nicht zahlen 1,999 $,
              egal ob es in der Mitte 12.08 regnen
Powered by:




                   Let’s take a closer look…
                       Make your user feel at home,
              even at 2AM, and even if they didn't pay $1.999,
               no matter if it's raining in the middle of 08/12

       Machen Sie Ihren Benutzernamen zu Hause fühlen,
     selbst bei 2.00, und selbst wenn sie nicht zahlen $1,999,
                egal ob es in der Mitte 12.08 regnen
Powered by:




                   On what localization areas
                       should we focus
       •      Text
       •      Numbers
       •      Date-time
       •      Currency
Powered by:




                 Geographic targeting
       • The key for good localization is knowing your
         target or targets
       • You can target your app distribution to specific
         markets
Powered by:




                              How does it work
              When you write             When a user runs
              your application:          your application:
              You create a set of        The Android system
              default resources, plus    selects which resources
              alternatives to be used    to load, based on the
              in different locales.      device's locale.
Powered by:




                           How does it work
       • Preparing to localization Is simple and should be
         a common programming practice in your app
         even if you don’t plan in the near future to
         expend it
       • Good to know:
              – You should localize not only the app itself, but the app
                page on the market as well
              – Client-Server model (localized responses)
              – RTL – it’s not that simple (changing layout)
sean@for-each.com

Weitere ähnliche Inhalte

Was ist angesagt?

Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Boris Chan
 
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)Lab Mobile Filkom UB
 
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...Sherry Budziak
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsAidan Tierney
 
Pass the i pad please - 5 Lessons for Creating Great Tablet Experiences
Pass the i pad please - 5 Lessons for Creating Great Tablet ExperiencesPass the i pad please - 5 Lessons for Creating Great Tablet Experiences
Pass the i pad please - 5 Lessons for Creating Great Tablet ExperiencesAnswerLab
 
Boris Chan - FITC SCREENS - Becoming Social By Default on Mobile
Boris Chan - FITC SCREENS - Becoming Social By Default on MobileBoris Chan - FITC SCREENS - Becoming Social By Default on Mobile
Boris Chan - FITC SCREENS - Becoming Social By Default on MobileBoris Chan
 
Kentico Technical Learning - Responsive Design with Kentico CMS 7
Kentico Technical Learning - Responsive Design with Kentico CMS 7Kentico Technical Learning - Responsive Design with Kentico CMS 7
Kentico Technical Learning - Responsive Design with Kentico CMS 7Thomas Robbins
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Henny Swan
 
Momo shanghai with nuance sept19 2011
Momo shanghai with nuance   sept19 2011Momo shanghai with nuance   sept19 2011
Momo shanghai with nuance sept19 2011Bruno Bensaid
 
Multi Channel Publishing
Multi Channel PublishingMulti Channel Publishing
Multi Channel PublishingJoe Welinske
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10Almog Koren
 
The mobile ecosystem & technological strategies
The mobile ecosystem & technological strategiesThe mobile ecosystem & technological strategies
The mobile ecosystem & technological strategiesIvano Malavolta
 
Introduction to mobile accessibility
Introduction to mobile accessibilityIntroduction to mobile accessibility
Introduction to mobile accessibilityJon Gibbins
 
iOS Human Interface Guidlines for iOS-Platforms
iOS Human Interface Guidlines for iOS-PlatformsiOS Human Interface Guidlines for iOS-Platforms
iOS Human Interface Guidlines for iOS-PlatformsMartin Ebner
 
iPhone / iPad - Human Interface Guidelines
iPhone / iPad - Human Interface GuidelinesiPhone / iPad - Human Interface Guidelines
iPhone / iPad - Human Interface GuidelinesMartin Ebner
 
Human Computer Interface Guidelines
Human Computer Interface GuidelinesHuman Computer Interface Guidelines
Human Computer Interface GuidelinesMartin Ebner
 
Human Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsHuman Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsMartin Ebner
 
Android
AndroidAndroid
Androiddavs7
 
HTML5 or Native Apps: Which Will it Be?
HTML5 or Native Apps: Which Will it Be?HTML5 or Native Apps: Which Will it Be?
HTML5 or Native Apps: Which Will it Be?jwhatcott
 

Was ist angesagt? (20)

Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010Best Mobile UI Practices - FITC Mobile 2010
Best Mobile UI Practices - FITC Mobile 2010
 
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)
01 - Peluang Entrepreneurship Kreatif Digital (Herman Tolle)
 
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...
Is That a Mobile Template or Responsive Design? Identify Which Mobile Strateg...
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & Trends
 
Pass the i pad please - 5 Lessons for Creating Great Tablet Experiences
Pass the i pad please - 5 Lessons for Creating Great Tablet ExperiencesPass the i pad please - 5 Lessons for Creating Great Tablet Experiences
Pass the i pad please - 5 Lessons for Creating Great Tablet Experiences
 
Boris Chan - FITC SCREENS - Becoming Social By Default on Mobile
Boris Chan - FITC SCREENS - Becoming Social By Default on MobileBoris Chan - FITC SCREENS - Becoming Social By Default on Mobile
Boris Chan - FITC SCREENS - Becoming Social By Default on Mobile
 
Mobile hci
Mobile hciMobile hci
Mobile hci
 
Kentico Technical Learning - Responsive Design with Kentico CMS 7
Kentico Technical Learning - Responsive Design with Kentico CMS 7Kentico Technical Learning - Responsive Design with Kentico CMS 7
Kentico Technical Learning - Responsive Design with Kentico CMS 7
 
Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)Mobile Accessibility (MobA11y)
Mobile Accessibility (MobA11y)
 
Momo shanghai with nuance sept19 2011
Momo shanghai with nuance   sept19 2011Momo shanghai with nuance   sept19 2011
Momo shanghai with nuance sept19 2011
 
Multi Channel Publishing
Multi Channel PublishingMulti Channel Publishing
Multi Channel Publishing
 
QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10QuickSoft Mobile Tips & Tricks 11-03-10
QuickSoft Mobile Tips & Tricks 11-03-10
 
The mobile ecosystem & technological strategies
The mobile ecosystem & technological strategiesThe mobile ecosystem & technological strategies
The mobile ecosystem & technological strategies
 
Introduction to mobile accessibility
Introduction to mobile accessibilityIntroduction to mobile accessibility
Introduction to mobile accessibility
 
iOS Human Interface Guidlines for iOS-Platforms
iOS Human Interface Guidlines for iOS-PlatformsiOS Human Interface Guidlines for iOS-Platforms
iOS Human Interface Guidlines for iOS-Platforms
 
iPhone / iPad - Human Interface Guidelines
iPhone / iPad - Human Interface GuidelinesiPhone / iPad - Human Interface Guidelines
iPhone / iPad - Human Interface Guidelines
 
Human Computer Interface Guidelines
Human Computer Interface GuidelinesHuman Computer Interface Guidelines
Human Computer Interface Guidelines
 
Human Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile ApplicationsHuman Interface Guidlines for Mobile Applications
Human Interface Guidlines for Mobile Applications
 
Android
AndroidAndroid
Android
 
HTML5 or Native Apps: Which Will it Be?
HTML5 or Native Apps: Which Will it Be?HTML5 or Native Apps: Which Will it Be?
HTML5 or Native Apps: Which Will it Be?
 

Ähnlich wie Planning your Dream Mobile App

BLUG 2013 - Mobile Application Delivery - Choices, choices, choices
BLUG 2013 - Mobile Application Delivery - Choices, choices, choicesBLUG 2013 - Mobile Application Delivery - Choices, choices, choices
BLUG 2013 - Mobile Application Delivery - Choices, choices, choicesRené Winkelmeyer
 
Understanding the Complex Mobile Landscape
Understanding the Complex Mobile Landscape Understanding the Complex Mobile Landscape
Understanding the Complex Mobile Landscape R2integrated
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for itTim McGovern
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting SmallAndrew Smith
 
Mobile Apps for Events - PCMA Heartland
Mobile Apps for Events - PCMA HeartlandMobile Apps for Events - PCMA Heartland
Mobile Apps for Events - PCMA HeartlandJessica Levin
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Indiginox
 
3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptxBOSC Tech Labs
 
Android : Evolution or Revolution
Android : Evolution or RevolutionAndroid : Evolution or Revolution
Android : Evolution or RevolutionSanjiv Malik
 
Mobile developement
Mobile developementMobile developement
Mobile developementLilia Sfaxi
 
Mobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersMobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersJohn Jardin
 
Native Vs HTML5 Apps
Native Vs HTML5 AppsNative Vs HTML5 Apps
Native Vs HTML5 AppsAppAcademy
 
Mobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsMobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsTim McGovern
 
Mobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentMobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentTAG_education
 
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPIntroduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPKeyLimeTie
 
Adapting Expectations to Fit a Mobile Workflow
Adapting Expectations to Fit a Mobile WorkflowAdapting Expectations to Fit a Mobile Workflow
Adapting Expectations to Fit a Mobile WorkflowJoseph Labrecque
 
Become a mobile developer from scratch
Become a mobile developer from scratchBecome a mobile developer from scratch
Become a mobile developer from scratchRuben Goncalves
 
Mobile app development
Mobile app developmentMobile app development
Mobile app developmentaction.vn
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for itTim McGovern
 
Webview: The fifth element
Webview: The fifth elementWebview: The fifth element
Webview: The fifth elementFernando Cejas
 

Ähnlich wie Planning your Dream Mobile App (20)

BLUG 2013 - Mobile Application Delivery - Choices, choices, choices
BLUG 2013 - Mobile Application Delivery - Choices, choices, choicesBLUG 2013 - Mobile Application Delivery - Choices, choices, choices
BLUG 2013 - Mobile Application Delivery - Choices, choices, choices
 
Understanding the Complex Mobile Landscape
Understanding the Complex Mobile Landscape Understanding the Complex Mobile Landscape
Understanding the Complex Mobile Landscape
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for it
 
Consider Starting Small
Consider Starting SmallConsider Starting Small
Consider Starting Small
 
Mobile Apps for Events - PCMA Heartland
Mobile Apps for Events - PCMA HeartlandMobile Apps for Events - PCMA Heartland
Mobile Apps for Events - PCMA Heartland
 
Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?Why Do Mobile Projects Fail?
Why Do Mobile Projects Fail?
 
3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx3 Types Of Mobile Apps.pptx
3 Types Of Mobile Apps.pptx
 
Android : Evolution or Revolution
Android : Evolution or RevolutionAndroid : Evolution or Revolution
Android : Evolution or Revolution
 
How... Do you know?
How... Do you know?How... Do you know?
How... Do you know?
 
Mobile developement
Mobile developementMobile developement
Mobile developement
 
Mobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developersMobile Blast - Mobile strategy for developers
Mobile Blast - Mobile strategy for developers
 
Native Vs HTML5 Apps
Native Vs HTML5 AppsNative Vs HTML5 Apps
Native Vs HTML5 Apps
 
Mobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOsMobile opportunity and options - for CIOs
Mobile opportunity and options - for CIOs
 
Mobile App vs Mobile Web Development
Mobile App vs Mobile Web DevelopmentMobile App vs Mobile Web Development
Mobile App vs Mobile Web Development
 
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOPIntroduction to iPhone App Development - midVentures DESIGN+DEVELOP
Introduction to iPhone App Development - midVentures DESIGN+DEVELOP
 
Adapting Expectations to Fit a Mobile Workflow
Adapting Expectations to Fit a Mobile WorkflowAdapting Expectations to Fit a Mobile Workflow
Adapting Expectations to Fit a Mobile Workflow
 
Become a mobile developer from scratch
Become a mobile developer from scratchBecome a mobile developer from scratch
Become a mobile developer from scratch
 
Mobile app development
Mobile app developmentMobile app development
Mobile app development
 
Mobile opportunity and options for it
Mobile opportunity and options   for itMobile opportunity and options   for it
Mobile opportunity and options for it
 
Webview: The fifth element
Webview: The fifth elementWebview: The fifth element
Webview: The fifth element
 

Planning your Dream Mobile App

  • 1. Planning your Dream Mobile Application In 2384729396847 easy steps sean@for-each.com
  • 2. Powered by: Your app platform is not the target, it’s the way to achieve your target “Business opportunities are like buses, there’s always another one coming“ – Richard Branson
  • 3. Powered by: Parameters to consider • Features – Any unique requirements/features? – Hardware requirements (external barcode scanner? Credit card scanner? Printer?) MOBILE PAYMENT MARKET TO HIT $100 BILLION
  • 4. Powered by: Parameters to consider • Market share – Mass Q3 2012 ANDROID: 75% distribution? IOS: 14.9% Boutique? BB: 4.3% SYMBIAN: 2.3% – Areas, WINPHONE: 2% languages, culture
  • 5. Powered by: Parameters to consider • Monetize – Are you selling the app or earning money from the app? – Free / Premium or maybe FreeMium? • App eco-system – Habits users are familiar with (Windows phone)
  • 6. Powered by: Parameters to consider • Development resources – The human resource (supply and demand) – Licensing & distribution • Branding – What the platform tells about your app? Android-masses? BlackBerry-work? iOS-fashion? • Future – The million dollar question!
  • 7. Powered by: … And the wrong considerations • “Everybody I see has iPhones! That’s my market share I’m aiming…” • “I have a BlackBerry device and I love it! Lets start by developing to it” • “I know Android development, I’ll start with it” • “iPhone users buy more apps than Android users buy”
  • 8. Powered by: The question is not what’s the best OS version, It’s what the best OS version that fits you. “By failing to prepare, you are preparing to fail” – Benjamin Franklin
  • 9. Powered by: Understanding your app version compatibility • Higher versions = richer capabilities • Higher versions = reaching fewer users • Think of it this way – If you write your document in “Microsoft Word 2013”, users running “Word 2003” can’t open it. • The goal – to achieve maximum market share while keeping maximum capabilities
  • 10. Powered by: Designating the right version • Each platforms has different fragmentation • It’s easy to see the differences…
  • 11. Powered by: Behind the scenes • The version isn’t always what the end user experience, It’s also the tools and technologies the programmer is given to work with • Using newer versions shortens your development time and keeps your staff up-to- date with today market • But then again… less users reach…
  • 12. Powered by: So what would you choose? iOS 5 iOS 6
  • 13. Powered by: Great apps need great distribution opportunities
  • 14. Powered by: Types 1. Private 2. Public • Each platform has it limitations • Your app structure might depend on it • It might improve your app security
  • 15. Powered by: Public distribution type • It’s not necessarily a monopoly like Apple’s “AppStore”. • Android for instance has two major players in the market – Google’s “Play” & Amazon’s “AppStore”
  • 16. Powered by: Private distribution type • Usually for apps designated to run “in house” • Probably custom made for business special needs • Sometimes it’s sold as a bundle of App + Device • Might be temporary for beta testing purposes • Private distribution = Private update mechanism, Remote auditing, Remote crash handling
  • 17. Powered by: Most application are living online. What does it take to make it right? An iPod, a phone, an internet mobile communicator... these are NOT three separate devices! And we are calling it iPhone! Today Apple is going to reinvent the phone. And here it is. - Steve Jobs
  • 18. Powered by: Connectivity • Remember those days you had shaky connectivity? Internet crashes or very low bandwidth? • With that risk in mind you should plan every step in your application. Code & Usability. • What are your offline abilities you offer for your user?
  • 19. Powered by: This lecture is about mobile, not “smart phones”. “Yesterday’s home runs don’t win today’s games” - Babe Ruth
  • 20. Powered by: When you say mobile device, what do you mean? • Lets take Android for example. What definition fits best? – “Smart phone OS”? (Nope. Has tablets.) – “Hand held devices OS”? (Nope. Has other) – So.. Just a “Mobile OS”? YES! • What’s the unique features of a mobile platform? In today world – no rules!
  • 21. Powered by: Android
  • 22. Powered by: You’ve got a great idea! How are you going to fit it all into a mobile screen? “Simplicity is the ultimate form of sophistication” - Leonardo da Vinci
  • 23. Powered by: Common layout decisions • Portrait? Landscape? Should I support them both? • How to best express the application contents on various device types? • Is the development compatible for both iPhone (smart phone) and iPad (tablet) ?
  • 24. Powered by: Smart phone vs. Tablet • They both offer the same features, so the differences are mainly in the layout design • Don’t save money by deciding “I’ll start developing to smart phone and then move on to tablet” • You should go the extra mile to make your market share bigger. Never say “no” to users wishing to download your app
  • 25. Powered by: TABLET COMPATIBILITY LEVEL 1 - NONE
  • 27. Powered by: TABLET COMPATIBILITY LEVEL 2 – TABLET COMPATIBLE WITH BASIC LAYOUT CHANGES
  • 28. Powered by: TABLET COMPATIBILITY LEVEL 3 – FULL COMPATIBILITY
  • 29. Powered by: UX (User experience) • Being mobile consumers doesn’t qualify us as UX experts • Consulting UX mobile designer is crucial • Everyone that is involved in the application development process should learn the basic principals and practice them in their expertise area
  • 30. Powered by: Working under the limited resources of a mobile device “There is no reason anyone would want a computer in their home” - Ken Olson, 1977
  • 31. Powered by: Know your limits • Limited computer power • Limited storage • Relies on battery power • Network bandwidth is expensive
  • 32. Powered by: Work with those limits • Limited computer power -> calculate on server • Limited storage -> know where to store • Relies on battery power -> don’t over work • Network bandwidth is expensive -> offer the user the ability to control it
  • 33. Powered by: Questions you might want to ask yourself • Can I cache some of the data? For example pictures • Do I have to check the exact GPS right now? • Is my data structure efficient? • Is my main algorithm optimized? • Am I asking too much API requests from servers? • Am I recycling the data I’m creating in a good sense? • Am I maximizing the best native libraries? • Did I close all the resources I’ve used?
  • 34. Powered by: Protect yourself and your users (at least try to) “The only truly secure system is one that is powered off, cast in a block of concrete and sealed in a lead- lined room with armed guards” – Gene Spafford
  • 35. Powered by: Common security practices • Guard against malicious input • Secure access to the application • Encrypt sensitive configuration data • Security of the persistent storage • Data on the wire • Enforce a strong password policy • Limit the processing to something realistic e.g. large searches • Auditing and logging • Beware of buffer overruns
  • 36. Powered by: ... And some mobile considerations • Less permission you ask = Easier gaining user trust
  • 37. Powered by: Machen Sie Ihren Benutzernamen zu Hause fühlen, selbst bei 2.00, und selbst wenn sie nicht zahlen 1,999 $, egal ob es in der Mitte 12.08 regnen
  • 38. Powered by: Let’s take a closer look… Make your user feel at home, even at 2AM, and even if they didn't pay $1.999, no matter if it's raining in the middle of 08/12 Machen Sie Ihren Benutzernamen zu Hause fühlen, selbst bei 2.00, und selbst wenn sie nicht zahlen $1,999, egal ob es in der Mitte 12.08 regnen
  • 39. Powered by: On what localization areas should we focus • Text • Numbers • Date-time • Currency
  • 40. Powered by: Geographic targeting • The key for good localization is knowing your target or targets • You can target your app distribution to specific markets
  • 41. Powered by: How does it work When you write When a user runs your application: your application: You create a set of The Android system default resources, plus selects which resources alternatives to be used to load, based on the in different locales. device's locale.
  • 42. Powered by: How does it work • Preparing to localization Is simple and should be a common programming practice in your app even if you don’t plan in the near future to expend it • Good to know: – You should localize not only the app itself, but the app page on the market as well – Client-Server model (localized responses) – RTL – it’s not that simple (changing layout)