Upload
dn
View
106
Download
2
Tags:
Embed Size (px)
DESCRIPTION
How to suck at developing a web app, when you’re not a web shop. (Subtitled “Friends, contracts, and missed deadlines.”). Eric Light is managing director of Gravity Computing, a software development firm in Hamilton, who specialise in bringing efficiency to business processes with clever software design. He is an active member of the Waikato Chamber of Commerce, a member of the NZ Open Source Society, Associate Member of the New Zealand Computer Society, and is also Chairman of the branch committee of the Waikato branch of the NZCS.An overview of some of our most blatant failings when we attempted to develop a cloud-app through an external contractor, coming from a suitably-embarrassed business owner and ex law student.
Citation preview
Eric Light@[email protected]
Audience Check
Developers? (Duh...)
Entrepreneurs?
Project Managers?
Audience Check
Developers? (Duh...)
Entrepreneurs?
Project Managers?
How to suck at developing a web app, when you’re
not a web shop.
On contracts, missed deadlines, and working with friends
Eric Light@[email protected]
A bit about Eric
(Apple ][e) BASIC
A bit about Gravity
Small team (techs == Jordan & Eric)
Software development (still mostly in BASIC
omg)
IT Support, Server installs, etc.
...
Web Development conspicuously absent
The Root of the Problem
Typical ‘technician-founded’ company› No systems.
NoneSeriously, folks!
Eric was every role› Sales, Marketing, HR, Accounts, ZOMFG,
FML
The Inspiration
“I need you to call Geoffrey, and find out what he means by Ђξμδ.”
Need a tracking system
Brilliance!
Wait a minute... we’re developers!
“Let’s build our own!”
<trumpets>
The Plan
Develop a web app for job tracking
We were the target market
Must be simple, fast, cheap
Implementation
Brought it to a web dev
Quoted 100hrs max(accepted reluctantly)
2 deadlines:› Prototype – 6 wks› To Market – 12 wks
“Begin!”
<more trumpets>
All was hopeful...
The month passed...
Welcome to Hell
“Each time I re-readthe scope I noticesomething new..”
“I’ve hit a bitof a snag..”
“I can’t figure out how to do this bit here...”
*crickets*
...Half way to deadline
...1 day before due
...3 days overdue
...2 weeks overdue
The Meeting
Me, the dev, plus 2 business partners
Another month, guaranteed
def quit_date:return mid-feb
My blunder:“We’ll make these bits part of the final”
Quick Recap
Now well overdue
Still on prototype
100 hours, max
33% due on delivery
D-day
Not really finished
He said it was(remember: “prototype”)
Payments / Billing -> final stage
Demanded $$ for delivered prototype
déjà vu!
My expenses:About $6000+GST
His effective rate:
$10 per hour
What did we do right?
Understood the problem clearly
Kept a lid on scope creep
Knew the target market
Calculated commercial viability
Defined a quit date (finally!)
Where we went wrong
Failure to plan for failure› No milestones› No fallbacks› For either party
No prototyping
Working with a friend, sans contract
LoremIpsum
The Road Ahead
Early Warning Signs
Your wife says it’s not going to work
You haven’t done a paper prototype
You don’t have a dated chart for functionality delivery dates
Professionalism slips
*crickets*
A haiku
On a pre-planned date /if milestones aren’t yet met /inspect the darn code!
So remember...
Plan for failure – have a graceful exit!
Set clear milestones, with CRUD.› This lets you track progress very finely!
Your dev’s estimates are wrong.› So are yours.
Hofstadter’s Law
Communicate›CommunicateCommunicate!
Say: If I don’t enforce a term, it doesn’t change the contract, and I can still enforce it any time in the future.
Resources
These slides are at pycon.ericlight.com› Contractor template – email me
GettingITRight.co.nz
Business Technology Resource Centre› “Avoiding Project Failure”, 2003
CIO Magazine› “Lessons in Defeat”, 2011
Thanks
David Richardson› Additional critical brain
Jordan Schwab › learning SilverStripe to resurrect the
project Stock.XCHNG (www.sxc.hu)
› Imagery Grant Paton-Simpson & Roger Smith
› Letting me present to them
“I love deadlines. I like the whooshing sound they make
as they fly by.”
Actual quote from my developer... As well as Douglas Adams
Question Time!