Assistance With Android:
    Tactical to Strategic
    by Mark Murphy, CommonsWare
Overview

• The Android ecosystem
• Getting assistance for engineers
• Getting assistance for businesses
The Way It Was

• Proprietary mobile operating systems
 • Few experts, all internal
 • Low expectations from users
 • No e...
The Age of Android

• Smartphones...
• ...and beyond
 • Tablets
 • TVs and set-top boxes
 • Cars, etc.
The Good, The Bad, and the Ugly



  • Good: More experts
  • Bad: Higher expectations
  • Ugly: More competition
Flattening the Learning Curve


 • You need answers -- that’s
   understandable
 • More importantly, you need to climb the...
Tactical to Strategic

• Tactical: What engineers need to get their
  job done
• Strategic: What managers and executives
 ...
Axes of Help
• Speed
 • Live vs. asynchronous
• Backing
 • Official, professional, community
• Cost
 • Free, paid
Android Google Groups

• SDK Development
 • android-beginners
 • android-developers
• Source Code/Platform Development
 • ...
StackOverflow

• Posting Tips
 • Use #android tag
 • Provide a nice source listing – will be
    formatted
  • Include stac...
StackOverflow

• Interaction Tips
 • Unrelated questions: post new
 • Accept answers!
 • Use comments wisely
IRC
• Internet Relay Chat
 • irc.freenode.net, #android-dev channel
 • Monitored by real live Googlers!
 • Office hours
• S...
Contacting Google
• Not Easy
• Device Manufacturers: should already have
  channels established
• Big ISVs: probably alrea...
Miscellaneous Channels

• ForceClose
• Smaller community boards
• Android issue tracker
 • http://b.android.com
What Not To Do
• Direct Semi-Random Contact
 • Googlers
 • Other folk
• Expect Something for Nothing Always
 • More likely...
Issue Reporting Tips
• Sample Code
 • Fragments at worst
 • Complete demonstration projects where
    possible
 • Outside ...
Issue Reporting Tips
• Stack Traces
 • adb logcat, DDMS, DDMS perspective in
    Eclipse
 • Need the “Caused by” portion o...
Tips for Asking Questions

• Choose Proper Question Level
 • Down-in-the-weeds
   • Good for very tactical questions
   • ...
Tips for Asking Questions

• Choose Proper Question Level
 • High-level development approach
   • Better if this is an are...
Tips for Asking Questions

• Tie Into Your Identity Strategy and Tactics
 • Public Disclosure
   • “Brand names” likely to...
Tips for Asking Questions
• Tie Into Your Identity Strategy and Tactics
 • Personal Email
   • Not recommended, particular...
Tips for Asking Questions

• Patience is a Virtue
 • Timing
   • Groups, StackOverflow not immediate
   • Easy on the “bump...
Tips for Asking Questions

• Patience is a Virtue
 • Answers
   • Not all answers are created equal, in
      terms of qua...
Tips for Asking Questions


• Follow Through
 • StackOverflow: accept answers
 • Groups/IRC: thank those who provide
    go...
Tips for Asking Questions

• Turnabout is Fair Play
 • Try to figure out how you can contribute
    back
   • In kind: answ...
Strategic Support

• More involved
 • Not just a question here or there
• Two key questions
 • What do you need?
 • What d...
Device Firmware

• What You Need
 • Targeted assistance in getting you past
    driver issues, etc.
  • Full “cradle to gr...
Device Firmware

• What You Should Look For
 • Prior experience with altering the
    firmware
 • Full-scale support with t...
Firmware Modifications
• What You Need
 • Help in creating custom UI layer (HTC
    Sense, MOTOBLUR, SE Rachael, etc.)
 • H...
Firmware Modifications

• What You Should Look For
 • Experience in working on the firmware
    outside of device drivers
 •...
Security Model

• What You Need
 • Help in making Android enterprise-ready
   • Remote wipe
   • Usage monitoring
   • Red...
Security Model

• What You Should Look For
 • Deep ties to core Android dev team
 • Solution that has a chance of being wi...
App Preloads / Remixes

• What You Need
 • More apps than come with Android by
    default
 • Apps targeted to your partic...
App Preloads / Remixes
• What You Should Look For
 • Well-respected apps on the Android
    Market
   • For the apps
   • ...
Google Acceptance

• What You Need: the Android Market
 • Pass the CTS
 • Faithfully run third-party applications
 • Work ...
Google Acceptance

• What You Should Look For
 • Firms that have helped others build
    production devices that were gran...
Alternative Markets

• What You Need
 • Way to capture revenue for you and your
    partners, instead of for Google and
  ...
Alternative Markets
• What You Should Look For
 • Firms with existing markets or
    demonstrated market technology
   • D...
Open Source

• What You Need: clear understanding of
  your obligations
 • Kernel modifications (GPLv2)
 • Contributions to...
Open Source

• What You Should Look For
 • OSS experience
   • Legal
   • Internal development
 • Collaborative developmen...
Developer Relations
• What You Need
 • Developers interested in creating apps
    that work well on your device
   • Uniqu...
Developer Relations

• What You Should Look For
 • Minimum: people with demonstrated
    ability to recruit, retain develo...
All The Other Things...

• Revenue model
• Sales/marketing
• Distribution and channels
• Buzz (PR, social networks, etc.)
Summary

• Getting assistance has two ingredients
 • Knowing what questions you should be
    asking
 • Knowing where to g...
Contact Info

• http://commonsware.com
• mmurphy@commonsware.com
• http://commonsware.com/blog
• Twitter: commonsguy
• +1....
Upcoming SlideShare
Loading in …5
×

Assistance with Android: Tactical to Strategic

1,299 views
1,244 views

Published on

On the tactical side, presents the best ways of getting help with Android application development. On the strategic side, presents issues OEMs face when adopting Android and what to look for when finding somebody to help overcome those issues. From a May 2010 presentation in Lund, Sweden.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,299
On SlideShare
0
From Embeds
0
Number of Embeds
20
Actions
Shares
0
Downloads
19
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Assistance with Android: Tactical to Strategic

  1. 1. Assistance With Android: Tactical to Strategic by Mark Murphy, CommonsWare
  2. 2. Overview • The Android ecosystem • Getting assistance for engineers • Getting assistance for businesses
  3. 3. The Way It Was • Proprietary mobile operating systems • Few experts, all internal • Low expectations from users • No extensibility
  4. 4. The Age of Android • Smartphones... • ...and beyond • Tablets • TVs and set-top boxes • Cars, etc.
  5. 5. The Good, The Bad, and the Ugly • Good: More experts • Bad: Higher expectations • Ugly: More competition
  6. 6. Flattening the Learning Curve • You need answers -- that’s understandable • More importantly, you need to climb the learning curve quickly • Outside assistance to flatten that curve
  7. 7. Tactical to Strategic • Tactical: What engineers need to get their job done • Strategic: What managers and executives need to make right decisions for Android adoption • Spectrum between them, not polar states
  8. 8. Axes of Help • Speed • Live vs. asynchronous • Backing • Official, professional, community • Cost • Free, paid
  9. 9. Android Google Groups • SDK Development • android-beginners • android-developers • Source Code/Platform Development • android-platform • android-porting • All Moderated!
  10. 10. StackOverflow • Posting Tips • Use #android tag • Provide a nice source listing – will be formatted • Include stack traces, screenshots, etc.
  11. 11. StackOverflow • Interaction Tips • Unrelated questions: post new • Accept answers! • Use comments wisely
  12. 12. IRC • Internet Relay Chat • irc.freenode.net, #android-dev channel • Monitored by real live Googlers! • Office hours • Standard Netiquette • Don't barge in on a discussion – tough to follow
  13. 13. Contacting Google • Not Easy • Device Manufacturers: should already have channels established • Big ISVs: probably already have ways to reach into Google • Small ISVs: work with a device manufacturer
  14. 14. Miscellaneous Channels • ForceClose • Smaller community boards • Android issue tracker • http://b.android.com
  15. 15. What Not To Do • Direct Semi-Random Contact • Googlers • Other folk • Expect Something for Nothing Always • More likely to timeanswers if you give answers from get to time • Be Overly Abstract
  16. 16. Issue Reporting Tips • Sample Code • Fragments at worst • Complete demonstration projects where possible • Outside of StackOverflow, consider using a code-paste site
  17. 17. Issue Reporting Tips • Stack Traces • adb logcat, DDMS, DDMS perspective in Eclipse • Need the “Caused by” portion of trace • Other Symptoms • Screenshots?
  18. 18. Tips for Asking Questions • Choose Proper Question Level • Down-in-the-weeds • Good for very tactical questions • Only works if you are really comfortable with the material and are having some API difficulties
  19. 19. Tips for Asking Questions • Choose Proper Question Level • High-level development approach • Better if this is an area you know little about • Allows others to contribute corresponding high-level advice
  20. 20. Tips for Asking Questions • Tie Into Your Identity Strategy and Tactics • Public Disclosure • “Brand names” likely to get more help • May get incoming questions (e.g., device manufacturers)
  21. 21. Tips for Asking Questions • Tie Into Your Identity Strategy and Tactics • Personal Email • Not recommended, particularly if you have a unique name • Unique Email • Best if you need to shroud your identity
  22. 22. Tips for Asking Questions • Patience is a Virtue • Timing • Groups, StackOverflow not immediate • Easy on the “bumps” • IRC real-time but perhaps limited
  23. 23. Tips for Asking Questions • Patience is a Virtue • Answers • Not all answers are created equal, in terms of quality • Try to avoid being dogmatic
  24. 24. Tips for Asking Questions • Follow Through • StackOverflow: accept answers • Groups/IRC: thank those who provide good answers
  25. 25. Tips for Asking Questions • Turnabout is Fair Play • Try to figure out how you can contribute back • In kind: answer questions from others • Other “returns on investment” • Pay it forward
  26. 26. Strategic Support • More involved • Not just a question here or there • Two key questions • What do you need? • What do you look for in assistance?
  27. 27. Device Firmware • What You Need • Targeted assistance in getting you past driver issues, etc. • Full “cradle to grave” assistance with device development and manufacture
  28. 28. Device Firmware • What You Should Look For • Prior experience with altering the firmware • Full-scale support with the right relationships, plus the Android expertise
  29. 29. Firmware Modifications • What You Need • Help in creating custom UI layer (HTC Sense, MOTOBLUR, SE Rachael, etc.) • Help in modifying standard apps • Help in advancing Android proper • Example: dual camera support
  30. 30. Firmware Modifications • What You Should Look For • Experience in working on the firmware outside of device drivers • Mobile UX expertise, if not supplied by you
  31. 31. Security Model • What You Need • Help in making Android enterprise-ready • Remote wipe • Usage monitoring • Reduced end-user configurability
  32. 32. Security Model • What You Should Look For • Deep ties to core Android dev team • Solution that has a chance of being widely adopted or incorporated into mainstream Android
  33. 33. App Preloads / Remixes • What You Need • More apps than come with Android by default • Apps targeted to your particular market or usage model
  34. 34. App Preloads / Remixes • What You Should Look For • Well-respected apps on the Android Market • For the apps • For the authors • Solid UX and experience to do more of the same
  35. 35. Google Acceptance • What You Need: the Android Market • Pass the CTS • Faithfully run third-party applications • Work within “Google Experience” limitations
  36. 36. Google Acceptance • What You Should Look For • Firms that have helped others build production devices that were granted the Android Market • Firms with good working relationships with Google
  37. 37. Alternative Markets • What You Need • Way to capture revenue for you and your partners, instead of for Google and Google’s partners • Way to deal with not getting the Android Market
  38. 38. Alternative Markets • What You Should Look For • Firms with existing markets or demonstrated market technology • Device portion is comparatively easy! • Firms demonstrating ability to recruit developers to list on their markets
  39. 39. Open Source • What You Need: clear understanding of your obligations • Kernel modifications (GPLv2) • Contributions to Android open source project (contribution agreement)
  40. 40. Open Source • What You Should Look For • OSS experience • Legal • Internal development • Collaborative development expertise
  41. 41. Developer Relations • What You Need • Developers interested in creating apps that work well on your device • Unique hardware characteristics • Developers interested in creating apps that work well for your market • Specific target languages
  42. 42. Developer Relations • What You Should Look For • Minimum: people with demonstrated ability to recruit, retain developer communities • Ideal: rock star = somebody whose name brings you credibility at grassroots level
  43. 43. All The Other Things... • Revenue model • Sales/marketing • Distribution and channels • Buzz (PR, social networks, etc.)
  44. 44. Summary • Getting assistance has two ingredients • Knowing what questions you should be asking • Knowing where to get the answers
  45. 45. Contact Info • http://commonsware.com • mmurphy@commonsware.com • http://commonsware.com/blog • Twitter: commonsguy • +1.484.350.4004

×