Slashdot Mirror


What Happens When Open Source And Work Collide?

Rob Kaper asks: "When being assigned to make changes to the Web site statistics program for one of the sites our company hosts, I was suprised to find that the site was using my own (open source and GPL-ed) program, which I had written long before I started to work at the company. Between my employment and the assignment to update the program for work I have been working on a new, improved version in my spare time. Many of the changes I am implementing or have planned to implement are the same as the ones the company would like as well. I am kind of puzzled and not sure how to continue. What will happen to the copyrights when I start working on the program during work time? Could I include those changes into my open source project? Would I have to reimplement them in my spare time?" Updated (Read on...)

"Since the program is GPL-ed I would like to think that all changes should be out there and ready to to be remerged in my home tree in the first place, but I would prefer to avoid a conflict of interest. The employer who introduced my code into the company no longer works there and I am not too sure that the managers give a damn about the GPL. A lawsuit to enforce it would not be an ideal situation.

So, any suggestions?"

Updated 5/14 by C : Signal 11 asks this semi-related question which many folks have already touched on, but this offers a different look at the issues involved: "I am in something of a quandry - I have been offered a position which I am very interested in, but the confidentiality agreement states that any inventions created during my employment become the property of my employer. This apparently includes works I create which do not use company resources. This concerns me - what claims can an employer legitimately enforce in a confidentiality agreement with regards to my 'intellectual property', and to what end? This is apparently a standard arrangement for employment in many high-tech organizations and applies to many of us." now we've dealt with this question in several Slashdot articles before, and the resounding answer was a chorus of "Watch that contract!" as you can prevent a lot of these problems by renegotiating with your potential employer, but what rights do employers have for writing such strong contracts. Do employers actually have the right to implement such clauses in employee contracts? I've heard it mentioned before (even here) that you can't sign away basic rights, and the rights to what you create on your own time and on your own equipment using your own knowledge sounds pretty basic to me. Thoughts?

10 of 147 comments (clear)

  1. Write FSF - now! by Seth+Finkelstein · · Score: 5

    The people most competent to advise you are undoubtably the Free Software Foundation. You need to get relevant help immediately. Your work contract with your company almost certainly states that anything you do while being paid by them belongs to the company. It is much better to have the licensing issues ironed-out before the changes are made than after the fact.

  2. Get it in writting by SnapperHead · · Score: 4

    I would sy the most important thing is to talk it over with your boss(s) and get it in writting. This way, if there ever where any problems, then you have proof and something to fall back on. If you feel that this could lead to a real problem, talk to a lawyer. What ever you do, I would make sure you have some sort of a written aggrement stating what you are doing and who owns it.

    --
    until (succeed) try { again(); }
  3. GPL and your work by ajs · · Score: 4

    The company can require that you keep the changes proprietary unless you do them on your own time. The GPL is a set of rules for how you treat people to whom you distribute. If the company tells you not to distribute this new version, then they are well within their rights to do so (unless your contract says otherwise).

    That said however, I suggest you talk to the folks that you work for, explain that this is your program from prior employment and that you want to contribute this work back just as you contributed it to them in the first place. If they don't like that sort of reasoning, then I suggest you don't want to work for them, and it's a very good market for coders right now....

  4. Isn't it clear? by platypus · · Score: 4

    your company doesn't want to distribute the code => they are not violating the GPL in any case
    you do that in your work time => they can deny you the right to distribute the patches, cause they have the (copy-)rights to the portions of the code you did in your worktime.

    This seems to be a typical case where releasing company work under GPL makes extreme sense, because they already have seen the quality of OSS-code (the old version of your software).

    But IMO (IANAL etc.) you would have a problem if you released the code you did in your worktime without the companies permission, just because it plainly isn't your code.

  5. This is a GOOD situation by redelm · · Score: 5

    In all crisis is opportunity. Why talk of suing? It's a very good thing they're using your web software, because it makes you much more valuable. Just know what's yours and don't let yourself get pressured.

    What I would do is immediately go to the manager, and tell him that you've noticed they're using your GPL software, and you're happy about this. They have right to use it. Tell him you can save him alot of time just implementing the later GPL updates that give most of the enhancements he wants.

    For the other updates, he has a choice to make: either put them under GPL since they are derivative works, or negotiate a separate nonGPL licence from you if he wants to distribute them as closed sw. Get paperwork either way. If no-one else has contributed GPL patches to your project, you should still be able to grant this licence. Of course, you'd be happy to work on either.

    I wouldn't mention that you can work on non-distributed, in-houe enhancements. They might later decide to distribute them as closed, and then you'd have to sue. Having offered a second licence and being rebuffed would give you a much stronger position in this suit.

    You cannot be forced into giving away your copyright any more than he can be forced into signing his house or car over to the company. Especially since you had that property before you came to the company, so there can be no dispute about ownership. Put it in exactly those terms.

    The manager will have losts of questions about the GPL, and will need to consult your company's legal people. Give him time. It's a new concept for business.

  6. Company intellectual property contract by caveman · · Score: 3

    We have a particularly obnoxious clause in our contracts here that state that any source code we produce while in the employ of the company becomes their intellectual property. We are occasionally remended by middle management that this even means private projects, at home, during non-office hours.

    Whether this particular clause is enforceable (and given the way English law works, it probably is) this means that I am stuck in a conflict of interests if I work on GPL'd software.

    This said, we use Linux within a number of products, and while our own source code is obviously private, I do keep a log of what the other programmers are using, to make sure we don't break the GPL.

    We've written device driver code, and I've had to explain modules to our developers, so we can keep the source secret (and the management happy), as I beleive that writing an in-kernel driver requires source code release under the GPL (is that correct?). If so, some companies (such as M-Systems with their DiskOnChip driver) are breaking it. I don't wish to join them.

    Unfortunately, for now, I'm stuck in a situation where I can't use GPL'd code in projects, except via libraries via LGPL, because my boss won't let source code out of the building. In those rare instances where we have had to reveal source code (such as in some defense contracts) he's insisted on it being modified by doing things like stripping comments, or running it through cobfusc (A C obfuscator (we wrote a similar thing for FORTRAN))

  7. Be direct and open by sjames · · Score: 3

    The only way to resolve this is to state the problem flat out to your manager and seek a waiver on your employment contract. The company you work for now really has no reasonable room for complaint since it has benefitted from the fact that you GPLed the code in the first place. They will continue to benefit since you have already thought about and done some of the planning for the improvements they want in your personal time.

    Keep in mind that it is ENTIRELY possable that there will be no problem at all. Do be sure that if you signed any sort of employment agreement that you get the waiver in writing. The company shouldn't mind. After all, they wanted your agreement in writing.

    If the copmpany does have a problem with any of this, then I would consider leaving. Employment is (ideally) an equitable agreement between equals. If something like this is a problem, then they must not see it that way.

  8. Re:Talk to your management by Munky_v2 · · Score: 3
    he actually gives his property to his employer for free. I would not do that.

    I have to agree here, most companies have an intellectual property clause that states anything you design while even working for them becomes there's. I would simply tell them that the program they are using is GPLd and that to continue using it, they need to sign a waiver stating that the program is yours and they cannot claim intellectual property rights to it. If they won't do it, I personally would tell them that I don't want to do any more work on the program for them, as it is GPLd and you feel it belongs to the community, not them.


    Munky_v2
    "Warning: You are logged into reality as root..."

    --
    Jay
  9. Get your employer to sign something like this by raarts · · Score: 5
    This is a standard form supplied by the FSF exactly for these kind of situations.

    I'm myself a PHB and when one of my employees asked me to sign it, I did it without hesitation. You may have some trouble explaning to them the GPL concept, but throwing some Geek buzz-words around (like Linux), and pointing to some NASDAQ successes (RedHat) may help.

    And another thing: encourage them to ask around in their social network.

    Good Luck!

  10. Ideally, modify employment agreement b4 starting by jsm · · Score: 4
    I realize this is too late for your current situation, but:

    I do only contract work. At the start of every contract, there is a set of papers to sign, usually including an agreement that anything I write while employed by the company is owned by them. I almost always modify this, and employers have always agreed so far.

    When signing employment agreements, always review them carefully and never be afraid to modify parts that make you uncomfortable. Don't sign things you don't agree with (anywhere in your life, not just employment). Contracts are supposed to protect both sides, not just one. Very often, employers have no problem with reasonable changes, but you have to ask. Of course, you should try to come across as reasonable and friendly, not argumentative or problematic.

    The change I normally make is to protect a) software or routines I've already written, that I may use or extend in the current project, and b) general-purpose routines I may write while on the job, even if they're brand new (I frame those as "extending my existing libraries"). To make the employer comfortable, I grant them a permanent license to use, modify, or distribute what I write (there may be exceptions depending on the situation), but I retain ownership. If they think they're giving something away for free, I make it clear that they're benefitting from the work I've done at past employers, and that the tradeoff to them is more than worth it-- they get immediate benefit from my past work, while their own potential loss is questionable at best. It's reasonable to argue that the best arrangement for all parties (you and multiple clients) is for you to retain ownership of it all while granting liberal licenses to each client.

    Note that IANAL, and none of my agreements have been tested in court, and I hope they never are.

    Aw, heck... here's the actual addendum text I added to my most recent contract:

    Addendum regarding section 6.B (Intellectual Property):

    Section 6.B is subject to the following exceptions and conditions:

    Agency_Foo and Client understand that Employee brings to this job various software tools, libraries, and the like ("Tools"), which have been previously developed by Employee, either while working for previous clients, or on Employee's own. During and after this Agreement, Employee will retain all ownership, right, title, and/or interest in these Tools. Client will retain a permanent license to use, distribute, and modify these Tools as needed, including but not limited to the use of Tools in everything Employee worked on during this Agreement, and for all related development subsequent to this Agreement. It is understood that Employee may extend or modify Tools during this Agreement, and this addendum holds true for those extensions and modifications, i.e. that Employee retains rights over them but Client retains a permanent license for them.

    The intent of this addendum is to ensure that both Employee and Client can use these Tools during or after this Agreement, without restriction.

    I used words and phrases defined elsewhere in the agreement, so modify the language to fit the existing contract in your situation (a smooth fit with existing language makes it sound less agressive too). You might change it to grant more or less to your client. I never had this reviewed by a lawyer, but it might be worth it at some point.