Ask HN: Cancel a Freelancing Contract Honorably?
I have been working for 3 weeks on what originally started out being a straightforward 2 week, sub-$1000 contract. I bid more than the other bidders but got the contract because of my experience with the math the project uses.
It took 2 weeks just to make the mockup, because they had me endlessly doing GUI tweaks instead of core back-end work. There was a steep learning curve for iOS because Apple UI widgets sometimes work in custom ways that break expectations. I spent many more days in stack overflow than expected. I fully accept responsibility for underestimating the mockup phase of the project.
However, it's becoming clear that I may not be able to finish this project. There is a language barrier which is hindering my ability to communicate my experience, so they not interested in my design advice. I'm torn between doing what they want and doing it well, because I'm having trouble with the idea of putting my name on work I don't believe in.
There is also a financial barrier. I've already donated a week of my labor and simply can't afford to continue. So far I've received 1/4 of the total as an up-front payment. I've been unable to meet the 50% milestone because the GUI doesn't match their expectations. I probably have 2-5 days more work to finish the back-end, if/when I get to it.
So my question is, does any of this matter? Should I just finish the contract exactly how they want it? Should I ask to switch to an hourly rate? Should I cancel the contract somehow on the freelance site and risk ruining my reputation there? I'm planning to go ahead and finish, using the lost month as a lesson. But I need to know how to write my proposals going forward to protect myself.
P.S. I had an odd feeling going into this contract, but ignored the warning signs.
P.P.S. I had been tracking my hours casually in a text file for the other contracts before this, but for this one, I have no record of my hours.
Thanks
I think the reason people get away with that is because $500 goes MUCH farther in some countries than it does in the US, and so those coders actually can absorb a bunch of bullshit/new requirements in these fixed fee projects and still make money.
A lot of times the less money they have or are willing to allocate, the less reasonable they are. Probably because they don't understand programming and/or are just not happy people, because they are stressed out running a small business without a lot of margin. Or they don't have a lot of money because they are unreasonable people.
I would say walk a fine line in what you are saying, do your best, but start letting them know right away how much money you are losing and that you can't continue for much longer. I would be nice to them (even though they don't really deserve it) and try to get them to agree to let you work on it just to a point where it is ready to transfer to a different programmer. Tell them they may be better off with someone at a country with a much lower cost of living who can absorb the new requirements and tweaks and still pay rent or whatever.
Also remember that you can give the other party a poor rating and review on the site as well, so that is not a completely one-way street.
I am going to try to move up to the $3000-5000 range and I want to be prepared, because if I find myself in a hole there, it will be 10x harder to dig myself out.
It would be nice if we had a resource like "pitfalls to avoid as a contractor" with some real life examples that would tend to only be learned through experience. For example, I had no idea that GUI programming was so time consuming. I had basically written it off as being "just design" so I didn't take it seriously.
But it's sort of like painting a house, the real work is in prep, stripping, priming, cleanup, buying tools and brushes, training, just on and on. The actual painting only takes a few hours. I think that's why people scoff at the idea that painting a house costs thousands of dollars.
That's how this project has been for me, so I'd love to hear more insights like that.
You call that a lawyer.
> with some real life examples
Walk for one hour in a single direction and these real-life examples stop being relevant. That's why you go to a local lawyer.
This project sounds like a mess. Since it is a sub-$1000 project, I would just give them their money back and let them know that it's just not working out.
In my experience, it's better to get out of these situations as soon as possible before you waste any more time.
In the future, I would get a list if requirements up-front and give them a quote based on those requirements. If they start making any wacky changes, immediately let them know that you will be charging per-hour (on top of the base quote).
In fairness, they have not asked for anything outside the original sketch. But if there are 10 GUI elements, they want 8 of them to work either in a desktop-fashion or a way not supported by iOS (check out some of the UIScrollView discussions on stack overflow to see how difficult it is to do things like intercept touches on subviews and have them work with gestures). So tasks that sound easy can quickly become days-long to implement.
I hadn't considered giving them their money back, that's a good idea though. We just bought an appliance from a repairman on craigslist that turned out to be a knock-off and the guy wouldn't accept a return. I considered that unprofessional, so may need to keep a stash to pay back milestones...
In the future, save flat-fee contracts for situations where all the details are spelled out before you begin work. Letting the customer exercise discretion over details ramps up hours tenfold.