A client is paying me to write a program for them. This program could be useful to many people though, so after they've paid me, I'm thinking of putting the program and source code online for free.

But the client who paid me may think it's mean because they had to pay for the program, but everyone else gets it for free.

Another idea is to wait a couple of years and then put it on the internet.

What would be the best practice?

  • 2
    look at your contract, what does it say about Intellectual property? Do they own the code or you? I assume this is included in the contract, if not there will always be room for discussion and you shouldn't: damn right the client might feel unhappy for paying for something you just released for free :'D Commented Oct 8, 2017 at 4:43

6 Answers 6


Yes. It's exceptionally unethical in most instances unless it's agreed upon prior to the work being performed.

In all probability the only reason this "program" was created was due to the client paying you to create it. Any client paying you only to then have you turn around and release, the product they paid for, for free is going to be very, very, very upset. Possibly even so much as to consider legal recourse.

In addition, the contract for the work may mean you don't own the Intellectual Property (IP) and would be essentially distributing it against the rights you have. No way of knowing this without seeing the contract.

In the end, the one thing you can be absolutely certain of is such an action will spark horrible word-of-mouth for your services from the client who paid you.

(I'm honestly amazed this is even a consideration.)


It is not "exceptionally unethical" as previously answered. Ethics has nothing to do with it as it is a matter of property. Just because a client pays you to develop a program for them does not automatically convey to them some ethical right of ownership to the work. After all it is the fruit of your labor. The property ownership is all that matters and that depends on the circumstances.

First, and this should go without saying, the only advice you should take seriously is that from an intellectual property lawyer in your jurisdiction. (I am not one.)

In the US, if you are the copyright owner of source code then you can license that work however you wish. You can sell it to Alice today and then give it to Bob tomorrow. You can license it to Acme Inc. as open source next week and then license it to Bell Corp. using a proprietary agreement next year. Being your property it is yours to dispense with as you see fit.

But you may have surrendered that right to the client. In my own independent contract work for software companies I have not yet seen a consulting agreement that did not explicitly convey the intellectual property ownership of my work to the client. In fact they are usually quite verbose on the matter and cast a wide net just to be sure with language such as "all rights, title, interests, secrets, etc" and then "in perpetuity". If you signed such an agreement with your client then you are bound by that and any attempt to resell the work later would be theft from the client and possibly fraud to the buyer.

However if you did not agree to such terms then the client does not necessarily have an implied ownership of your work. In the US for example you would need to refer to the appropriate state laws concerning work for hire and shop rights, again with the help of an IP lawyer. Much of it depends on precedence. Even if the client does have implied ownership you might find they don't care. Or they may be willing to sell you back the rights for reasonable compensation. (I have done that!) Get such indifference or deals in writing and then you will be able to freely market your work "guilt free".


Normally such matters should be discussed beforehand. A development-contract should always clearly state ownership and exclusivity!

What you could do, is reach out to the client and see what he thinks of your Idea. Especially after some time has passed, he may also be interested in any further development open-sourcing can bring. Also, you could include him in the credentials like:"This source code was developed by X and sponsored by Y-Company" Maybe he´ll like the Marketing-effect?

If you have an open discussion I don´t see a problem, but you should be prepared to get a "No".


Where are you located? Where is the party that is hiring you located? Much of the advice in this column so far would be quite illegal in the United States, and potentially so even if you are not located in the US. In the US, if you are hired to develop software, then that work is considered for hire, which means that unless the contract states otherwise, 100% of the ownership and legal rights go to the company that hired you. You do not own the code, they do, you just programmed it. If you release the code, that could result in some serious legal trouble for you.


Thoroughly read your contract, is there any condition like this? If there is, you can't use it. If not than you can use it.

But let me ask you one question.

Are you really thinking about it?

Just think that if you are client, you paid some money to the developer for your product. You are going to do social media marketing, SEO etc. for making that product famous. But suddenly you find an open source code or a product, the same like your paid product. What will come first to your mind?

What would you do?

  • If there is nothing in the contract, it does not mean you can do what you want. There may still be (trade)laws or the reasonable assumption of a different inherent meaning of the contract that kick in, even if there is nothing specified in writing.
    – Daniel
    Commented Oct 25, 2017 at 12:23

You must not put it up in open.

If still you feel a strong need to publish the code or solution, you must a priori ask the relevant client for their comfort and convenience.

  • Hi Rishi, what about the contract? Do you have information you can add to back this answer up as the correct one?
    – jmort253
    Commented Nov 14, 2017 at 9:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.