11

Possible Duplicate:
Hand over source code to customer

I have developed a couple of form based windows application in vb.net for a client and they all work well and he paid me through a freelance site. I have handed over the executable and the setup to the client and all was well. Now the client wants the source code for the application. Is there a general practice on sharing the source code with the client?

Please note - the client never mentioned he needs the source code and he is now asking for it after a week after the app was completed and he made the payment.

I don't mind sharing the source code, but I am not sure if I should. This probably means the client would not hire me again and the bigger question is the source code really his property?

This question may have been asked a few times, but I cannot still draw a conclusion on what is right.


update

To answer some of the questions:

  1. The source code was not mentioned at all. There was no exclusive contract signed except for the usual agreement of the freelance site.
  2. I am not sure if software development comes under work for hire and is it valid for users outside of the US?
  3. The reason for not sharing the source code was this was a very small project and I got paid for a mere few hours. So if I have an option then definitely I would want to keep the source code to myself as that gives a possibility of the client coming back. The application works flawlessly and the code is solid. Also, the task that the client wanted to achieve was very challenging and I would not like other programmers (competitors) to know how I achieved it.

So unless I get the confirmation that the source code is purely the property of the client, I would not be willing to share it.

Tec
  • 111

7 Answers7

27

In my experience, the source code IS typically handed over.

The reason for this is that the person hiring you is buying your time to write source code. Usually if someone only gets the application and NOT the source code, they are buying a license to use the software, which is essentially what you're doing giving him the executable, but retaining all the source code.

That being said, what is written in the contract? If it doesn't say specifically, then it's a legal gray area. Legal gray areas mean that you probably can't get sued, and the only thing that's really on the line is your relationship with the client and your reputation.

Ryan Hayes
  • 20,109
15

This probably means the client would not hire me again...

Why? Do you think they won't hire you because of the poor quality of the code, or do you think that once they've got the code they don't need you anymore?

If the code is lousy, consider this a lesson learned and do a better job next time. On the other hand, if the code is solid, why wouldn't they want to work with you again? They may want to add features to whatever you did, and who better to do that than the guy who wrote the code in the first place? Or they may have other projects in the works, and the happier they are with your work the more likely they'll be to want to keep working with you.

BTW, I agree with the other two posts. I'm no lawyer, but it sounds like this was a straight work for hire arrangement, and that usually means that the code is theirs.

Caleb
  • 39,298
12

On "work made for hire" projects, it's not a matter of sharing the source code, the source code belongs to them. For example, on the vWorker site, under Legal, it says: "Employer will receive exclusive and complete copyrights to all work purchased." The source code is part of the deliverable.

I don't know which freelancer site you did this through, but it's likely they have similar language.

tcrosley
  • 9,621
4

If your goal is to do more work for this client, give them the source code. It's a small project and the client will go to someone else just to spite you. I know I would

Since there was no agreement, give the client the code, but get a written agreement that you are allowed to use, sell, alter, for personal or future work.

If you were paid by the hour, you can charge for your time to put the code together and send to the client.

JeffO
  • 36,956
0

My first thought was not, but then reading the other responses, it is usually assumed that if you pay for some "custom" software package they own it.

If this was a purchase or license then yes, you would own the code, but this was not case here.

The company is likely asking for it so they can maintain it going forward. They may have some internal person, they may use you again, or someone else. Their opinion of you will likely have a lot more to do with how well you worked with them, how good the deliverables were, and how much they liked working with you personally.

Bill Leeper
  • 4,115
  • 17
  • 20
0

I'd argue that it depends, as others have said, on the contract in place primarily. Check that first. That will be the key determining factor. If it doesn't specifically state that all of the work, including IP and source code belongs to the client, then check the rules of your country/state. In Australia, for example, in a lot of fields, such as this, unless the IP is spe

0

In my experience this is common. As stated this should be agreed in advanced, and written in the contract. But he bought your programming time, and the product should be his\hers.

For future contracts: The source code is your insurance. So give out an executable, for testing and seeing that you have done what you where asked to. And just after the payment, you give out the code. That way the client sees that you have done the job, but s\he can't extend it in the future without paying you. (And all requirement change sooner or later)

Ramzi Kahil
  • 1,089