nitobi/phonegap at bootup 2011
TRANSCRIPT
Nitobi/PhoneGapA serious look at serious business.
coincidence?
a meme is born
follow along...
@andrecharland@brianleroux
@nitobi@phonegap
2007-ish
Nitobi moving from products to services.
two choices
specialization or agnosticism
specialize
Know one thing well.
agnostic
‣ generalized devs (tricky to do)‣ hire specialists (expensive to do)
pragmatic
Be of the web.
detractors of web techare an endangered species
Tanner Glass leaves them be.
web tech stack
• the new frontline for browser wars is js engine execution
• this leading to server impls like NodeJS
• also seeing huge grfx perf improvements for things like WebGL
Ruby on Rails?
how we do
• billable; hourly --- NO FIXED BIDS EVAR
• track our time to the minute
• estimates are in the spirit of literal meaning of the word
• iterate; weekly or daily builds
crucial factors
• revision control
• unit tests
• issue tracking
• automated daily/weekly builds
non technical factors
• UX and IxD own the product
• Ship a min viable product
• YAGNI
Ship EARLY
• if a client wants it in a month see what can be launched in two weeks
• long hours are detrimental to success: CUT SCOPE
Our office is mobile
• basecamp to keep clients honest
• git and github for issues, rcs, collab
• harvest/coopapp for time tracking
• google docs for other artifacts
we’ll throw out all those tools if a client has an existing system in place
key to agnosticism
Stay on top of new tech. Listen to the devs.
2008
mobile web trending
time to build our acumen
• @davejohnson started hacking his BlackBerry
• @infil00p ordered himeself a G1
• rest of us coveted our man jewellery iPhones
http://blogs.nitobi.com/brock/2008/08/07/unofficial-announcement-of-phonegap/
Aug 7, 2008
byproduct simple rules
1. find a tough problem
2. *attempting* to solve it is more than anyone else is doing
3. you have just created value
4. sometimes you can turn value into money
new problems
• now our business is 75% services
• those services were all over the map but none where in mobile
continued to build the story and acumen
• 20% time hacking
• related passion projects
• informed our clients of our mobile war stories
evolution
• phonegap/android came a month later
• phonegap/blackberry a month after that
• we now support:
• ios, android, bb, symbian, webos, bada
• soon: meego, wp7
solve problem when you have them.
• git and github is fantastic. really you should be using it. (until you shouldn’t)
• added a wiki when we needed docs
• added a mailing list when we needed to support ppl using the software
• formal docs came last year
licensing
• MIT/BSD
• Apache
growing up
• taking outside contributers
• having a formal release schedule
• planning our future battles
two types of tech problems
• science
• big ball of mud
science
• distributed map/reduce
• mapping the human genome
• putting a gyroscope into orbit in one shot on a multibillion dollar budget
big ball of mud
• mvc framework for language X
• unit test frameworks for language X
• dom library
• any impedance mismatch, really
take away
• tech deprecates: you do not have to
• foster learning
• use devs wisely; ask them about passion projects
YOUR tech deprecates
• maintenance is not a chore
• grand rewrites are paths to failure
• you need advocates that are customers
marketing
• not free but damn cheap
• speak at confs
• give away as much IP as possible
• identify byproducts of value and champion
marketing cont..
• blogs last forever: urls
• tweets connect ppl
• 3 min shitty screencast > polished docs
dev happyness
• devs create value writing code
• do everything you can to maximize that time inc 20% time
• NO OVERTIME.
• free them of noise, meetings, etc
• give them the best tools, confs, etc
• team w/ a rad UX / IxD person
dev happyness 2
• don’t hire ‘rockstars’: create them
• foster DISPASSIONATE devs
• critical thinking > marketing dept zealotry
• eradicate attachment to anything: ALL TECH DEPRECATES
• have fun with it.
new direction
• mullet business model
• services that feed products that create services
Questions? Code? Hockey time nao?