AndroidTO deck
-
Upload
chaseman -
Category
Technology
-
view
310 -
download
0
Transcript of AndroidTO deck
Chris Haseman Building Software in the Mobile Age
Building Software in the Mobile Age
Chris Haseman
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Patterns for developing and releasing Android software
‣ Tricks for designing and building beautiful software
‣ Ways we use to engage with our users and protect our rating
‣ Why New Yorkers are so insufferable
What I’d like to talk about
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Why should you care?
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Re-written from scratch
‣ From a web-view to fully native
‣ Crossed 10 million downloads
‣ From a 3.6 to 4.3 star application
‣ Mobile apps are now a significant amount of Tumblr’s daily traffic
2 years at Tumblr
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Development
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Small Group (3 Full Time Developers)
‣ 1 Designer and 1 Production Designer
‣ 1 Pointy-Haired Manager (me)
‣ No in-house QA
‣ No Project or Product Managers
size matters not...Our Android Team
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Developers should work like managers...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Developers need large swaths of unscheduled time managers break the day up into hourly chucks
‣ Meeting Windows: On Arrival, Before Lunch, After Lunch, Just before end-of-day
‣ Developers should poll for new information while Managers are interrupt driven. There is a large difference
‣ Be flexible when possible on meeting times
optimizing for different goalsNope
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Scheduling is Easy!
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Programmers always estimate for the best case
‣ When planning, we think only of actually writing the code
‣ Few factor in changes, review, testing, or documentation
‣ Time padding for these is important, but BE CAREFUL
‣ “We’ll ship when it’s ready.” Only works for Blizzard
‣ “The developers set these dates!” is a cop-out
it’s one of the toughest parts of softwareScheduling really is hard
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
It’s ok to deliver a bit late...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Trust is your only currency. No one understands what you’re working on but you
‣ Gain it by hitting your dates, shipping features with no surprises, and good communication
‣ Lose it by over or under estimating, sneaking in major refactors, hiding or obfuscating bugs, or avoiding responsibility
‣ Learn how to screw up well
as my father always irritated me by sayingYou’re as good as your word
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Maker vs ManagerLearn How to ScheduleBuild and Maintain Trust
Development
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Side effects of doing this well may include:
LeadershipPromotions
or Eventual Management
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Design
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
The designs should be final before developers
build them
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ It’s not finished until it ships
‣ Remember, change requires TIME!
‣ Developers, it’s on you to call out major changes
‣ Pixel perfection is essential, but you should try to polish once
‣ Consistent, correct margins make the difference between good applications and great ones
Good design requires dialogDesigns are never final
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Designers: Customize Everything
Developers: Customize Nothing
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Bad Managers:“Make it look like the iPhone...”
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ 100% adherence to the standards defaults is boring
‣ 100% customization is confusing, particularly with navigation
‣ Designers, be aware of the costs of your customizations
‣ Developers, communicate time concerns
‣ Devs, never say “No”. Designers, never accept “No”.
‣ For Reference: One developer at Tumblr spends one week per release on margins alone. We’re working on fixing that.
Break the rules, learn them firstInnovate on Purpose
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Numbers aren’t essential...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Install Flurry, Localytics, Mixpanel, or Google Analytics
‣ Figure out how to track the behavior you want
‣ Check and see if you made positive user change
‣ Watch out for short term number bias
‣ Invest the time for good, consistent event tracking
‣ Numbers are your only weapon against bad ideas, especially your own
Your gut is crap at making softwareNumbers are essential
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Communicate about CreativityCustomize often but with Care
Validate your Assumptions
Design
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Beautiful software takes time, but the
payoffs are immense
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
The Market
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Nothing beyond this point is helpful unless you...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Do
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
not
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
build
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
shitty
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
android
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
applications
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
...seriously
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ A good rating requires building a community
‣ dump as much time into responding as possible
‣ learn everything you can from the 1-star reviews
‣ Remember those analytics? Use them to triage the rage
‣ at tumblr... the feels run strong
the play store is the only tool you haveTalk to your users!
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Mobile teams should be deploying to production
constantly...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Launch betas when feasible
‣ Do not take your beta testers or early adopters for granted
‣ Test before you release anything, internal or external
‣ Use Google’s staged roll-out
‣ Bugs will show up fast, keep a calm head but react quickly
‣ Bake. Your. Software. When it’s ready, put it in the oven for a week
Nope
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Rating Nags are Annoying
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
‣ Our daily average rating went from 3.6 to 4.5, overnight!
‣ Timing is everything catch people at a happy moment
‣ Be glib, positive, and friendly in your language
‣ Never ask them more than once in a 6 month period
‣ Ask for help, don’t demand it, but don’t beg for it either
‣ Your users are rooting for you, help them express it!
...incredibly effectivethey are also effective
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Engage your UsersBeta Test, Slow Roll, Watch
Ask your users to show some love
The Market
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Treat your users well, and they will reward
you
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
I’m tired of developers being black boxes
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Programmers, learn to communicate. As a
boss, help your programmers get better
at it
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
I am sick of seeing ugly Android software
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
It can be beautiful, spend the time to make it so
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
I hate it when good applications get a bad
name
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Ask your users for help when it’s appropriate. Use data to recognize and ignore the trolls
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Lastly, I have some bad news...
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Android development is HardYou, in this room, help
eachother!
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
Make incredible things, none of you has any
excuse to do otherwise
Wednesday, October 23, 13
Chris Haseman Building Software in the Mobile Age
@haseman
Thank you!
Wednesday, October 23, 13