12.08.07

PHP and Time Estimates

Posted in General Site Stuff at by jason.michael

Whether you are developing an application with PHP, Java, or Ruby, applications always take time to develop.  I think many customers of custom programming underestimate the time required to build, test, and deploy new applications.  They have no concept of how much time it takes to put a program together.  Often, I have seen programming firms underestimate their time, stating to the customer that a project is small and should not take long to do, yet they move forward in denial, getting the project done, but not truly charging the customer for the number of hours the project really took.  This practice is a black mark on the industry - it doesn’t help the programmers get paid for the time the really spent, and the customer is kept in the dark as to exactly how much time the project took, and thus go from project to project expecting to only pay X amount of dollars for X amount of little time for a smaller project and not find satisfaction in the quotes.

I had a customer this year whom I grossly underestimated my time on a project.  Actually, I had two of these customers, each battling for my time.  I started working on the first customer’s project, thinking it would be done in a snap, only to find that the logistics of the project were more than just one person could handle.  I ended up having to pay for some additional workers, which ate up all my initial funding…. The customer wouldn’t pay me more, and I was running out of money as a business, so I had to take on additional small jobs just to keep my electricity and Internet connection going.  Then the second customer, whom I thought just needed a simple Joomla install with the exact content of their current website installed, turned around and provided new content and wanted not just a few changes, but TONS of changes made to a template they purchased - changes that went far beyond what the template was designed for.  I ended up learning how to trick out Joomla to do just about anything I wanted it to do in the process, but a 2-3 week project ended up requiring 6 months - no profit in that…
The customer kept making remarks, early on about how more time would need to be used sometimes to get maximum results and get a smaller profit, but honestly, I lost all my profit on his little project in the first 16 hours.  I have logged over 400 hours on his site now, and unfortunately the contract I have in place only allows me to charge him $200 for the whole project - 50 cents per hour, if even that.

So as I continue to write code, I am finding that it is only fair to not underestimate and not be in denial about time and the cost of time on one’s business and the business of your customer. If you think you can get something whipped up in 15 minutes - honestly, every minute adds up and it could very well take 20-30 minutes, plus 15 more minutes of testing and bug fixes.  That 15 minutes turns into 45 - 60 minutes, quickly.  So if the project might take an hour, just multiply it by 3, just in case for your estimate.

Also, when estimating, put every single detail down in paper as to what you’re expecting to do for the customer.  You might not estimate down to the detail level for the customer to see, but at least keep a running tally for the overall estimate, then multiply this by a percentage based upon how familiar you are with the type of project.  If its something new, just multiply by 300%.  If you don’t get the job, maybe its best.  If it is something you’re familiar with, still factor in some unexpected curveballs the customer will throw at you - if they’re too severe, dont be a nice guy - tell the customer it will cost extra, and have them pay it up front, or at least half the amount for the new work done outside of the original, agreed upon spec.  This will make sure the customer thinks things through before throwing you every pitch they have (curveball, slider, knuckleball, change up).

12.17.06

Yum just sucks for Fedora Core 3

Posted in General Site Stuff at by jason.michael

12.15.06

Game Creation with PHP - Planning and deisgn of an MMRPG

Posted in General Site Stuff at by jason.michael

11.30.06

Game Creation with PHP - Our Database

Posted in PHP at by jason.michael

11.25.06

Amazon API Affiliate Script using PHP - Version 2 of a bad posting

Posted in PHP at by jason.michael

11.23.06

Import MySQL script file with your own PHP script to Import MySQL

Posted in PHP at by jason.michael

Game Creation with PHP - Introduction

Posted in PHP at by jason.michael

Setup of this site

Posted in General Site Stuff at by jason.michael