I've been working on some piece of software while being "employed" by company A. I now want to continue working on the same software while being employed by company B. Company B wants the software to become open-source to prevent any future legal issues between company A and them. I will consult company A's lawyer to make sure it's fine by them, but I suspect it will be alright as company A is actually a public university which looks favorably on industry connections.

However, I am concerned by potential competitors getting access to that code before we make its results public. Is it possible to make the software open-source without sharing it with anyone but company B (neither in binary nor source form), or do I have to publish the software the minute it is made open-source or shared with anyone?

If the answer depends on the specific open-source license used, please be kind and provide details about the differences.

  • Why Open Source? Just make sure that both Company A and Company B are fully aware that they have a non-exclusive license to use your software... No need to publish it, not even to them if you don't want to. Commented Aug 22, 2011 at 9:02
  • @Marjan I don't know what a non-exclusive license really means, all I know is that making it open-source was a requirement by company B. Perhaps there are more consequences of making it open-source they were interesting in, other then preventing legal issues with company A? I honestly do not know, but it might be worth asking them.
    – Oak
    Commented Aug 22, 2011 at 9:05
  • ask them, they cannot force you to make your software open-source. A ridiculous requirement if you ask me. As fof non-exclusive: it's what you get with each software package you buy that is not developed solely for you. I think Company B is concerned that Company A may be under the impression that you handed over the copyright to your software to them and may sue company B if you also give it to company B. So, ask Company B what their real concern is (instead of what solution they want = open source), and have the contracts with company A checked by a lawyer and renegotiate as needed. Commented Aug 22, 2011 at 9:09
  • Also: read some actual licenses of software you bought. Though boring, it can help you to get a feel for the normal wording of such beasts. Commented Aug 22, 2011 at 9:10
  • @Marjan to be clear, the point is to continue development of the software while being employed at company B, so I suspect what I need is something stronger than a non-exclusive license to use. I actually don't mind the open-source part, since that means any work I invest in the software while being employed by company B will remain available to anyone else, if in the future I do choose to release the software to the public.
    – Oak
    Commented Aug 22, 2011 at 9:15

5 Answers 5


Which license do you plan to use ? Because the terms may vary. I will copy/paste an extract from the GPL faq I used in another question (relevant if you decide to use this license) :

Does the GPL require that source code of modified versions be posted to the public?

The GPL does not require you to release your modified version, or any part of it. You are free to make modifications and use them privately, without ever releasing them. This applies to organizations (including companies), too; an organization can make a modified version and use it internally without ever releasing it outside the organization.

But if you release the modified version to the public in some way, the GPL requires you to make the modified source code available to the program's users, under the GPL.

Thus, the GPL gives permission to release the modified program in certain ways, and not in other ways; but the decision of whether to release it is up to you.

If you choose the GPL, it means you just need to release the source code when you release the software.

But it is you who decides when to release your software.

  • Hmm, it looks like the key here is what the definition of "public" is, since I do share my code... but I guess it's safe to assume that sharing my code with one specific company does not mean "releasing it to the public".
    – Oak
    Commented Aug 22, 2011 at 9:10
  • "the GPL requires you to make the modified source code available to the program's users" so as long as it isn't available for everyone, you don't need to give access to the code to everyone, just to A if they use your modified version. Commented Aug 22, 2011 at 10:31

Did you work on the software during 'work' hours or as a personal project? If it was during work hours company B just want to cover their backsides as if company A turn round and claim as it was done on their time, it's their software and thank you very much for the cheque.

However if you get a sign off from company A to say that they're more than happy to let you use it however you want then great, if not you can say the source is open and just not publish it anywhere. I have loads of open source projects on my drive, but I won't be putting them online.

  • +1 for whether the work was done on personal time or not - that is very often a HUGE concern in these matters.
    – user
    Commented Aug 22, 2011 at 9:47
  • @Michael, yes, plus whether the work was done on/with company provided resources (hardware, software, etc). It is one of the reasons that I ensure that anything I do in personal projects is done on my own machines and with software licensed to me... Commented Aug 22, 2011 at 10:30
  • I'd definitely say the work was done on "work hours", but as I said, I don't think company A - a university - will mind turning it into open-source.
    – Oak
    Commented Aug 22, 2011 at 10:40
  • Hopefully they'll be supportive, but if they're not check your contract from them for a section about intellectual property ownership. A lot of companies will throw it in just so they can legally assert their right to the software in court if they have to. Commented Aug 22, 2011 at 10:44
  • 1
    @Oak: Working for a university I can say this is not your decision to make regarding whether or not they will 'mind'. Discuss it with them and leave it at that plain and simple.
    – Chris
    Commented Aug 22, 2011 at 11:32

You don't have to make it open-source whilst working on it for Company B. Company A has the right to do whatever they want with the source code you produced for them- including giving it to company B. It doesn't have to be everyone or no-one.


As the author of the source you can put it under two licenses. One can be the LGPL, while the other is the exclusive, closed-source deal you want with company B.

Go ahead and post the LGPL code on Github. You can even give the project a reasonable sounding name, or just give it a code name. The source will be out there, but you will still be able to enhance it using the company B license, and these changes you will not have to share on Github.

Then, if company A realizes it wants to charge fees (really, it's only company B that is concerned about this possibility) then you are in the end game and will need to switch to the open version. You are worried about keeping a competitive edge, but how you execute and work on this is far more important, and no one understands the code base or the problem as well as you do anyway.


If you are the copyright holder, you can do whatever you like. That's because the only one who can sue you for a license violation is the copyright holder, and if you are the copyright holder, unless you are schizophrenic, nobody can sue you.

If you use the GPL license, you have three choices: One, you can accompany every copy that you distribute with the source code. Then nobody in the world can demand anything from you. If I download your application and forget to download the source as well, I have no right to ask you for it. So that is what you should do: Always give people the application and the source code together, then you have no legal obligation whatsoever.

Two, every copy of your application is accompanied by a promise to deliver the source code. That's NOT what you want, because in that case everybody in the world has the right to ask you for the source code, whether they got the application from you or not.

Three, doesn't apply to you, if you distribute an unmodified copy of someone else's GPL product, and that someone else has application and source available for download, then you can distribute the unmodified copy and point to that other person or organisation.

In any case, anybody who has the application and source code can pass them on to anybody they like. (If they don't have the source code, only if case 3 applies).

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.