How to suck at developing a web app, when you’re not a web shop

1,146 views
1,108 views

Published on

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.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,146
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Note this talk is mostly around a failure in a contractual & business sense, not so much in a technical sense.
  • I heart skiing, hiking, and my famiyTechie & coder, turned managerWrote first program at age 8 (in BASIC)Very involved in the NZCS & heaps of Waikato business groupsManaging Director of Gravity Computing
  • I heart skiing, hiking, and open sourceTechie & coder, turned managerWrote first program at age 8 (in BASIC)Very involved in the NZCS & heaps of Waikato business groupsManaging Director of Gravity Computing
  • No idea that things were going wrong until it was WAY too lateNo logical way to fix the situation once things had gone wrong
  • How to suck at developing a web app, when you’re not a web shop

    1. 1. Eric Light<br />@RhyvenNZ<br />ContactMe@EricLight.com<br />
    2. 2. Audience Check<br />Developers? (Duh...)<br />Entrepreneurs?<br />Project Managers?<br />
    3. 3. Audience Check<br />Developers? (Duh...)<br />Entrepreneurs?<br />Project Managers?<br />
    4. 4. How to suck at developing a web app, when you’re not a web shop.<br />On contracts, <br />missed deadlines, <br />and working with friends<br />Eric Light<br />@RhyvenNZ<br />ContactMe@EricLight.com<br />
    5. 5. How to suck<br />On contracts, <br />missed deadlines, <br />and working with friends<br />Eric Light<br />@RhyvenNZ<br />ContactMe@EricLight.com<br />
    6. 6. A bit about Eric<br />
    7. 7. (Apple ][e) BASIC<br />
    8. 8. A bit about Gravity<br />Small team (techs == Jordan & Eric)<br />Software development (still mostly in BASIC omg)<br />IT Support, Server installs, etc.<br />...<br />Web Development conspicuously absent<br />
    9. 9. The Root of the Problem<br />Typical ‘technician-founded’ company<br />No systems. <br />None<br />Seriously, folks!<br />Eric was every role<br />Sales, Marketing, HR, Accounts, ZOMFG, FML<br />
    10. 10. The Inspiration<br />“I need you to call Geoffrey, and find out what he means by Ђξμδ.”<br />
    11. 11. Need a tracking system<br />
    12. 12. Brilliance!<br />Wait a minute... we’re developers!<br />
    13. 13. “Let’s build our own!”<br /><trumpets><br />
    14. 14.
    15. 15. The Plan<br />Develop a web app for job tracking<br />We were the target market<br />Must be simple, fast, cheap<br />
    16. 16. Implementation<br />Brought it to a web dev<br />Quoted 100hrs max(accepted reluctantly)<br />2 deadlines:<br />Prototype – 6 wks<br />To Market – 12 wks<br />
    17. 17. “Begin!”<br /><more trumpets><br />
    18. 18. All was hopeful...<br />The month passed...<br />
    19. 19. Welcome to Hell<br />
    20. 20. ...Half way to deadline<br />...1 day before due<br />...3 days overdue<br />...2 weeks overdue<br />“Each time I re-readthe scope I noticesomething new..”<br />“I’ve hit a bitof a snag..”<br />“I can’t figure out how to do this bit here...”<br />*crickets*<br />
    21. 21.
    22. 22. The Meeting<br />Me, the dev, plus 2 business partners<br />Another month, guaranteed<br />def quit_date: return mid-feb<br />My blunder:“We’ll make these bits part of the final”<br />
    23. 23. Quick Recap<br />Now well overdue<br />Still on prototype<br />100 hours, max<br />33% due on delivery<br />
    24. 24. D-day<br />Not really finished<br />He said it was (remember: “prototype”)<br />Payments / Billing -> final stage<br />Demanded $$ for delivered prototype <br />
    25. 25. déjà vu!<br />
    26. 26. My expenses:<br />About $6000+GST<br />His effective rate:<br />$10 per hour<br />
    27. 27. What did we do right?<br />Understood the problem clearly<br />Kept a lid on scope creep<br />Knew the target market<br />Calculated commercial viability<br />Defined a quit date (finally!)<br />
    28. 28. Where we went wrong<br />Failure to plan for failure<br />No milestones<br />No fallbacks<br />For either party<br />No prototyping<br />Working with a friend, sanscontract<br />
    29. 29. LoremIpsum<br />
    30. 30. The Road Ahead<br />
    31. 31. Early Warning Signs<br />Your wife says it’s not going to work<br />You haven’t done a paper prototype<br />You don’t have a dated chart for functionality delivery dates<br />Professionalism slips<br />*crickets*<br />
    32. 32. A haiku<br />On a pre-planned date /<br />if milestones aren’t yet met /<br />inspect the darn code!<br />
    33. 33. So remember...<br />Plan for failure– have a graceful exit!<br />Set clear milestones, with CRUD.<br />This lets you track progress very finely!<br />Your dev’s estimates are wrong.<br />So are yours.<br />Hofstadter’s Law<br />
    34. 34. Communicate<br />Communicate<br />Communicate!<br />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.<br />
    35. 35. Resources<br />These slides are at pycon.ericlight.com<br />Contractor template – email me<br />GettingITRight.co.nz<br />Business Technology Resource Centre<br />“Avoiding Project Failure”, 2003<br />CIO Magazine<br />“Lessons in Defeat”, 2011<br />
    36. 36. Thanks<br />David Richardson<br />Additional critical brain<br />Jordan Schwab <br />learning SilverStripe to resurrect the project<br />Stock.XCHNG (www.sxc.hu)<br />Imagery<br />Grant Paton-Simpson & Roger Smith<br />Letting me present to them<br />
    37. 37. “I love deadlines. I like the whooshing sound they makeas they fly by.”<br />Actual quote from my developer<br />... As well as Douglas Adams<br />
    38. 38. Question Time!<br />

    ×