| 12:09 am on Apr 14, 2009 (gmt 0)|
We mostly charge by the project.
Why would someone pay you to write 100 lines of code that your competitor can do in 20 lines, and have to pay you 5 times as much?
To me, charging per line of code would be similar to McDonald's charging by the number of calories in each food item.
| 12:28 am on Apr 14, 2009 (gmt 0)|
lol point taken.
So Do you have tips on properly bidding for a project? I am not asking for trade secrets but some ideas.
I guess I look at something with the regards of how long I think it will take me to complete the requested tasks. But when you have no real idea, what do you fallback to? In that situation what formula do you use? If anything other than experience and screwing yourself in the past to come up with a price that is fair to both you and the client.
I have been taking on more risky projects recently with the hopes of additional income stuff I would have backed away from a year ago so I find myself in uncharted territory.
Thanks for the reply
| 1:21 am on Apr 14, 2009 (gmt 0)|
|I can do x amount in one hour vs you can do x more/less in the same hour. |
I don't see this as a deficiency of hourly work. The amount of work you can accomplish in an hour depends on your judgment and experience. The amount you are worth per hour increases with more experience and better judgment. If on some portion of a project you don't think you're working up to the standard of the hourly rate you're charging, you can do some of the work at no charge and note so on the bill. Not likely to receive any complaints about that.
|...am having trouble figuring out how long it will take. The code I am working with is pretty poorly written and once I start working on it I have no idea of what issues I will run into. |
I see this as another argument in favor of billing by the hour, since it is your experience and judgment they are paying for, especially if the full scope of the work can't be anticipated in advance.
There are diplomatic ways to tell the client that the existing code is likely to present unforeseen difficulties, without unnecessarily bashing the previous programmer.
If a client is overly paranoid about hourly billing, that to me is a warning flag about them, since it reflects something about their world view, or about the environment they are used to existing within, and thus possibly about their potential behavior.
An hourly rate is easy to justify if you can deliver preliminary work product after a short time, which they can evaluate and decide if they want to keep you working on the project.
Those are just my opinions, and not particularly strongly held ones. I'm interested in seeing the other advice you receive.
| 11:39 am on Apr 14, 2009 (gmt 0)|
You nailed it as far as I'm concerned.
Diplomacy goes a long way ... keep your mouth shut instead of bashing previous work. We don't always know the situation or boundaries under which the previous programmer(s) worked. Or if they were related/family! You never know if the owner's kid had his hands in there at some point and just didn't change any "author" information in the code comments. You bash away openly to your client and the next thing you know you are eating crow. Take the high road and keep your frustration and comments to yourself, your client doesn't want to hear them anyway as he has to tend to problems of his own. That's why you are being hired in the first place.
If the project is difficult to break down, then offer a price range and perhaps even a phase approach. Break down the work into milestones that you can indeed project more precisely. For those areas of uncertainty, add an unforeseen contingency percentage.
| 6:55 pm on Apr 14, 2009 (gmt 0)|
You are right, bashing the competition to the client is unprofessional at the least and at the worst will cost you the job. IMO it can undermine your credibility in the whole process. So we all agree on that.
I guess it comes down to the fact I still have more to learn and since I am taking on riskier jobs means I will learn more, faster (crosses fingers).
Everyone's input has been valuable to me and I do appreciate the time and well thought out answers.