I have worked with a client for two weeks who knows nothing about the complexity of programming a CMS. After two weeks, our relationship has gone from mildly discomforting to the point where I have said "forget this, I quit if you are going to act like this".

Problem is we have two week's worth of code developed (on my server luckily). I emailed him and said that I should keep the downpayment and he can get the code. I think he can find someone overseas to finish up my tasks within a few days as the project is about 80% done. He seems to think that is unfair and wants the code AND the downpayment back.

What rights or what avenues should I take to resolve this? What would you do? I would not like to give the code back as I do not feel that he should receive something I have spent two weeks developing for free. I feel that if he gets the downpayment back I have every right to keep the code and destroy it.

Seeking honest answers from fellow programmers. Any help is greatly appreciated.

  • 20
    Talk to a lawyer. You don't want to be the one to breach the contract first. – FrustratedWithFormsDesigner Mar 29 '11 at 16:16
  • 1
    what does the contract say ? Utimately this is where the fine print will either screw you over or win the day. This said, Frustrated's advice is sound. Take the contract to a lawyer and check with him. – Newtopian Mar 29 '11 at 16:25
  • i just signed a very short two page NDA that says nothing about an event like this - where i don't complete the work but have working code. – user21555 Mar 29 '11 at 16:42
  • 5
    First point, get a lawyer, show him or her the NDA and describe the situation. (In most places in the US, ask your local Bar Association for a referral.) You need to know where the legalities are, because you very much want to stay on the right side of them. Second place, use better contracts in the future. Third place, as a freelancer you'll be stiffed for work now and then; if you can't tolerate that you shouldn't be in the field. – David Thornley Mar 29 '11 at 16:52
  • You need better contracts. I would also suggest finishing the project and then spend sufficient time thinking over why you ended in this situation in the first place. – user1249 Mar 29 '11 at 20:09

If you think you're 80% done, and you can't stand working with him another minute, there is probably another 80% to do. I don't mean you're not as done as you think, just that the last 20% really does take 80% of the time and especially when someone keeps changing their mind or asking for "small addons" that require you to go back and redo fundamental things.

There are five ways this can go:

  1. you take a deep breath and agree to finish it with some substantial change - a more relaxed schedule, no more changes, a higher overall fee, he takes communication training, whatever. This might happen.
  2. everybody walks away. You keep the downpayment and the code, he gets nothing. He's unlikely to agree to this even if it's fair.
  3. you find the person to finish it for him, hand it all over to that person, and keep the downpayment as compensation for designing it and getting it started. He might agree to that, which really is not very different from #2, but sounds different.
  4. you give him his downpayment back and you give him the code you wrote. While this sounds insane, people ask for this basically the way they ask to have a meal comped in a restaurant. While they have received some value, they don't want to pay a single penny for it, as compensation for whatever unpleasantness came with the value.
  5. return everything to how it was at the start - he gets the downpayment back, you keep the code which you then destroy because it's worthless to you. Financially this is the same as #4 but you didn't make him feel happier.

I would recommend #1 if it's possible. If not, choose 3 over 2 and 4 over 5. They have the same financial impact with a happier client. You can feel you took the moral high ground and did all you could to make him happy in a nasty situation. You gain a great story to tell others about your nasty client and how you were the good guy in the end. In the case of #3, you might even get repeat business or a referral from it some day.

| improve this answer | |

I'm no lawyer but if you had referred to the down payment as a retainer then it would be yours and the code would be his. I would even think that the down payment is essentially a retainer, but it really depends on the situation (many details I don't know).

Best advice: if you have not already burned the bridges then don't quit. Finish the job and learn from it.

| improve this answer | |
  • yes but what if he demands his down payment back - then would he also have the right to get the code he essentially didn't pay for? – user21555 Mar 29 '11 at 16:25
  • i just signed a very short two page NDA that says nothing about an event like this - where i don't complete the work but have working code. – user21555 Mar 29 '11 at 16:43
  • 2
    If he demands the downpayment back, I would not give him any deliverables. What kind of merchant lets you get your money back for a "return" and still keep the goods? Talk to a lawyer, but with the code and cash in hand, you are in the stronger position to negotiate. – Jim Mar 29 '11 at 16:57

We usually try to agree and handle these things in advance. Having a formal contract in advance is the best way to go and gives you and the client a sense of stability and comfort. But in the end, there is no contract that can handle the way that someone behaves. And at the end of the day, that is one of the things that makes a project to succeed or fail.

As for your current situation, if you don't have a formal contract signed by both parties, hold on to your ground, don't give him the code unless he agrees to give away the downpayment.

| improve this answer | |

I disagree with going to a lawyer first... You're going to have to pay some money, or a lot, and that's going to make your client get a lawyer and pay some money, or a lot, and you're both going to dig in, get entrenched, and get entirely unreasonable.

Life's too short to be a whipping boy, or work in misery. Just give him his money back, and keep the code.

| improve this answer | |

My only thought here is that if it was you that decided to terminate the arrangement, you may run into problems trying to keep the money if the client seeks legal help. The client gave you the down-payment with the understanding that the job would be finished.

On the other hand, if it was the client that terminated the arrangement, then I would think you are perfectly justified in sending him the code and keeping the money.

That being said, I think the best way to handle the situation would be to try everything in your power to hold onto the job. I'm not saying you should get hosed on the deal, but it would be wise to at least have some email documentation demonstrating how you are trying to resolve the situation without walking away, as well as documenting any possible scope-creep that has no doubt caused the current situation.

| improve this answer | |

Talking with a lawyer to see where you stand legally before you make any decision or say anything further is a wise move. In addition, think hard about the reputation implications of the decision you make. Whether or not you're in the right will not salvage your reputation if your client spreads word that you don't follow through, can't program, are difficult to work with, etc. In social matters (for example, business networking), appearance is frequently more important than fact, sadly.

| improve this answer | |

Good answers. Don't do anything vindictive/childish or on marginal legal ground. Don't consider the problem as belonging either to them alone, or to you. Consider it your common problem, and try to find a common solution.

But more important than that, think like a salesman. Every relationship has a momentum, which can be positive or negative. If it is negative, you have an adversarial relationship, they are not happy, and neither are you. If you're trying to sell them something, they're not going to buy it, or at least not happily. If it is positive, they like you and trust you and consider you a member of their team. When they want to buy, they want to buy from you.

There is nothing phony about this. You like them, and you like them sincerely, and they like you in return. That doesn't mean they have no faults. They're like anyone else. If you find you can't have this kind of relationship with them, you should find an amicable parting and look for another client. Your reputation is at stake.

| improve this answer | |