Subject: Re: Freeing my code... need some guidance
From: "Ben Tilly" <btilly@gmail.com>
Date: Sat, 10 Jan 2009 16:26:52 -0800

On Sat, Jan 10, 2009 at 2:50 PM, Simon <turner25@gmail.com> wrote:
[...]
>  The project needs to be licensed in a way that will not "harm" or slowdown
> or cause anything negative to my employer, they should even be able to
> continue building on top of it after I leave the company.  I used to really
> believe in closed-source and private licensing, but I gave it all up to
> freedom.  However, one fact remains and it is that I would like my name to
> be remembered as the initiator of this project.  My employer must also have
> no rights to remove my own rights on those files and they should become
> "their property" (as my contract says), but they would still be limited to
> the rights in the license.

Woah.  Back up.  Your contract says that your employer owns the work
you do for them.  That means, literally, that your employer owns it.
Period.

You don't get to dictate or bind them in any way, shape or form.  You
have no ownership of that code you wrote.  *Perhaps* you can convince
them to do what you want, but I wouldn't count on it.  Please don't
try to ignore this fact because if you do then you can get yourself
into pretty serious trouble, very quickly.

>  I would also like to develop my own projects on the side (possibly start my
> own software company one day) and build my future projects upon this one.
>  My commercial applications will be published in binary form and source will
> not be released until a later date, under the same license.

If you wish future projects of yours to use this code, you need to get
permission from your employer.  Because your employer owns the
copyright, not you.  As for projects on the side, you need to consult
your contract and local state law.  A competent IP lawyer would be
invaluable.  Because depending on where you live and what your
contract says, code developed on your own time with your own resources
might belong to you, or might belong to your employer.  To name 2
examples, in California it belongs to you, and you can't sign it away.
 In New York it belongs to your employer, and this fact is usually
reiterated in your contract.

[...]
>  I think what I have written above states all I feel and I think the new 3
> clause BSD license would suit it well. "must retain the above copyright
> notice" would make my name hold up into the future and "Redistribution and
> use in source and binary forms, with or without modification, are permitted
> provided..." would fit the idea of giving all rights.

There is no point wasting time thinking about what copyright license
you wish to put on code you don't have copyright to.

[...]
> 2) What about the contract I signed with my employer that says something
> very strong like "whatever is written on the hard disk of the company is
> theirs and they have all rights on it", etc...  I understand that if I drop
> a copy of Apache, or libSDL or whatever licenced work, this clause in my
> contract would have no effect.  So if i drop my own code, licenced with the
> 3 clause BSD license (or a modification of it), would it work the same way?

If it says something like that then it means that anything you write
for them is a work for hire and they have the copyright on it.  End of
story.  But nothing you can write in a contract can make a copy of
Apache that you drop on the hard drive theirs because you don't have
the right to sign over a copyright belonging to a third party.  Which
is why dropping third party code in doesn't magically give them
copyright ownership of it.

But be careful with this.  Because if they think they own copyright to
anything that goes on the hard drive and you copy someone else's open
source code into their codebase, they can easily wind up in accidental
violation of the license.  Unless you make sure that everyone is very
clear about what third party code does not belong to them, you are
creating a potential legal liability for them.

>  Last thing, I am young and inexperienced in the legal world, i read it
> well, but there are many details I don't know about and I might be missing
> some important points.  Please let me know if you think I might be
> interested in any other details I haven't mentioned.  I think I would
> basically set my stuff as Public Domain, but I like being protected by a
> license like the 3-BSD.

You appear to be missing the doctrine of a "work for hire".  Which
says that code written for an employer belongs to that employer and
not to you.

Usual disclaimer.  I am not a lawyer and this is not legal advice.
However if you want to proceed in any way then you need to get a
lawyer and get some good legal advice from someone who is familiar
with your local jurisdiction.

Cheers,
Ben