Which License Should I Use?

Steven D'Aprano steve at REMOVETHIScyber.com.au
Sat Nov 26 11:01:52 CET 2005

On Fri, 25 Nov 2005 11:30:46 -0800, mojosam wrote:

> I guess I don't care too much about how other people use it.

Then probably the best licence to use is just to follow the lead of
Python. For that sort of small program of limited value, I put something
like this in the code:

Copyright (c) 2005 Steven D'Aprano.
Released under the same license as used by Python 2.3.2 itself. 
See http://www.python.org/psf/license.html for details, and 
http://www.python.org/2.3.2/license.html for the full text of the license.

I use that as a no-brainer licence: it is weaker than but compatible with
the GPL, and requires less documentation.

> I will be doing the bulk of the coding on my own time, because I need to
> be able to take these tools with me when I change employers. However,
> I'm sure that in the course of using these tools, I will need to spend
> time on the job debugging or tweaking them.  I do not want my current
> employer to have any claim on my code in any way.  Usually if you
> program on company time, that makes what you do a "work for hire". I
> can't contaminate my code like that.  Does that mean the GPL is the
> strongest defense in this situation?

Not at all.

I am not a lawyer and this is not legal advice, but I suggest that your
*only* defence will be to get your employer to sign a legal agreement
acknowledging that you own the code. If you like, offer them a perpetual
royalty-free non-exclusive licence to use the code, and explain how using
your own code will make you more productive in their time.

If they refuse, then you must absolutely keep a cast-iron barrier between
what you develop in your own time and what you develop in theirs. To be
safe, I wouldn't even *use* that code in their time: if your productivity
suffers, that's their choice.

As an alternative, consider that who owns the copyright doesn't matter. If
your employer insists on keeping the copyright, get permission from them
to distribute the code under an open source licence. Then you can take it
with you when you leave, and still use it. 

Unless you explicitly sign them away (and even that is legally dubious)
you still retain the "moral rights" to the code, even if copyright is
owned by your employer: you can still say "I wrote this".

Please note that merely putting the code under a GPL or other OSS licence
is NOT sufficient -- they must agree to let you DISTRIBUTE the code.
Merely being under the GPL does not make it compulsory to distribute the
code, and if you distribute software copyrighted by your employer without
their permission, the fact that is GPLed is not going to save you.

Getting permission to put it up on the corporate website might be
sufficient, but if it were me, I'd insist on an agreement allowing me to
take the code with me when I leave. (This is only necessary if your
employer owns the copyright.)

It need not be a complicated agreement: I recently signed a copyright
transfer agreement for some employees who left the company to start their
own company. The agreement was less than two pages long.


More information about the Python-list mailing list