Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Building apps for India

Building apps for India

Being a mobile first country, India opens up a lot of opportunities for app developers. Want to review some options to make most of them? Please go through this deck which was created for “Building apps for India” session at #appfest2016

Speaker:
Arun Babu A S P
https://in.linkedin.com/in/arunasp

Arun Babu A S P

July 15, 2016
Tweet

More Decks by Arun Babu A S P

Other Decks in Technology

Transcript

  1. Why? › 2014 - 140 million - Cisco › 2015

    - 210 million - Ericsson › 2016 Feb - 220 million - Counterpoint
  2. Why? › 2014 - 140 million - Cisco › 2015

    - 210 million - Ericsson › 2016 Feb - 220 million - Counterpoint › 2020 - 702 million - Cisco
  3. Why? › 2014 - 140 million - Cisco › 2015

    - 210 million - Ericsson › 2016 Feb - 220 million - Counterpoint › 2020 - 702 million - Cisco › 2021 - 810 million - Ericsson
  4. What? › Cross tier cities › Literacy, wealth disparity ›

    Same product - different expectations › Spread of vernacular users
  5. Google’s list › Connectivity › Device Capability › Data Cost

    › Battery Consumption › Content › Commerce
  6. Stay slim! Stay humble! › Choose libraries intelligently › Apply

    proguard carefully › Remove redundant resources
  7. Stay slim! Stay humble! › Choose libraries intelligently › Apply

    proguard carefully › Remove redundant resources › Ask permission only if necessary
  8. Stay slim! Stay humble! › Choose libraries intelligently › Apply

    proguard carefully › Remove redundant resources › Ask permission only if necessary › Avoid multidex at any cost
  9. Onboarding › Keep bare minimum steps › Let user choose

    critical preference › Let app predict other preferences
  10. Onboarding › Keep bare minimum steps › Let user choose

    critical preference › Let app predict other preferences › Set theme for Splash screen
  11. Login / Sign up › Delay till first transaction ›

    Prefer mobile number with OTP › Look for slim and fast SDK options
  12. Login / Sign up › Delay till first transaction ›

    Prefer mobile number with OTP › Look for slim and fast SDK options › Provide an option to login as Guest
  13. Responsive UI › Flatten UI hierarchy › Build custom UI

    components › Reuse UI components as much
  14. Responsive UI › Flatten UI hierarchy › Build custom UI

    components › Reuse UI components as much › Avoid fancy animations
  15. Errors are not exceptions › No connection found › Slow

    connection › No content found › Server error / Invalid response
  16. First steps › Cancel out of scope requests › Eliminate

    redundant fields › Extend login session automatically
  17. First steps › Cancel out of scope requests › Eliminate

    redundant fields › Extend login session automatically › Send only fitting size images
  18. First steps › Cancel out of scope requests › Eliminate

    redundant fields › Extend login session automatically › Send only fitting size images › Adjust number of threads
  19. Prioritize requests › P1 - Most important request › P2

    - Other lightweight requests › P3 - Icon, zip, media, etc.,
  20. Prioritize requests › P1 - Most important request › P2

    - Other lightweight requests › P3 - Icon, zip, media, etc., › P4 - Background updates
  21. Prioritize requests › P1 - Most important request › P2

    - Other lightweight requests › P3 - Icon, zip, media, etc., › P4 - Background updates › P5 - Analytics - beacons, events
  22. Become user’s friend › ConnectivityManager.isActiveNetworkMetered › Build lite or no

    image mode › Process screens in LIFO order › Batch multiple requests / HTTP 2.0
  23. Engagement › Let user configure notifications › Make it easy

    to share via popular channels › Support deep link to each content page
  24. Engagement › Let user configure notifications › Make it easy

    to share via popular channels › Support deep link to each content page › Log & solve top x% crashes every sprint
  25. Engagement › Let user configure notifications › Make it easy

    to share via popular channels › Support deep link to each content page › Log & solve top x% crashes every sprint › Exploit staged roll-out option well
  26. Personalization › Learn from usage pattern › Allow user to

    block / unblock stuffs › Let navigation to related content be easy
  27. Personalization › Learn from usage pattern › Allow user to

    block / unblock stuffs › Let navigation to related content be easy › Build option for user to delete history
  28. Personalization › Learn from usage pattern › Allow user to

    block / unblock stuffs › Let navigation to related content be easy › Build option for user to delete history › Stay ethical
  29. Testing › Automate, automate & automate › Manually test for

    min. config device › Include top used devices from user base
  30. Testing › Automate, automate & automate › Manually test for

    min. config device › Include top used devices from user base › Include special (notorious) devices
  31. Testing › Automate, automate & automate › Manually test for

    min. config device › Include top used devices from user base › Include special (notorious) devices › Airplane, Elevator and 2G testing
  32. Monetisation › Prefer S2S over client side SDK › Choose

    native ads as much › Evaluate client SDK before using
  33. Monetisation › Prefer S2S over client side SDK › Choose

    native ads as much › Evaluate client SDK before using › Always keep ON/OFF switch at backend
  34. Thank U! Arun Babu A S P Love building apps

    with best user experience. https://in.linkedin.com/in/arunasp https://www.facebook.com/arunbabuasp