Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Writing a Contract for GPL'd Code?

Cliff posted more than 7 years ago | from the dotted-t's-and-crossed-i's dept.

Software 28

An anonymous reader wonders: "I am working as an independent developer for a client I have a long relationship with, and of whom I used to be an employee. I've made informal contracts in the past for development work, but this job is much more significant. Also, the client has gone to court over software development in the past; he was in the right to do so, but I need to cover myself. The product will be released under the (L)GPL and copyrighted by me, and the client will also be agreeing to open the license and give me the copyright on some code I previously developed. I plan to consult a lawyer, but I just want a little more direction before I start investing hours. Are there any resources I should know about, beyond what the FSF has to offer?"

cancel ×
This is a preview of your comment

No Comment Title Entered

Anonymous Coward 1 minute ago

No Comment Entered


Something doesn't sound right. (1, Interesting)

EveryNickIsTaken (1054794) | more than 7 years ago | (#17872298)

Let me get this straight...

You're getting paid to write code for a client, who is then going to turn around and distribute it freely?

And after you're done with the project, he/she intends to give you ownership/copyright of prior code you've written?

Something sounds a bit fishy to me. Get a lawyer that specializes in cases like this.

Re:Something doesn't sound right. (4, Interesting)

thegrassyknowl (762218) | more than 7 years ago | (#17872410)

My memory is a little rusty (pun intended) but Rusty Russel did this with the Linux firewall code, did he not?

Re:Something doesn't sound right. (2, Interesting)

IWannaBeAnAC (653701) | more than 7 years ago | (#17872648)

This isn't fishy at all, it is common practice. There are many business that rely on just this - contracting work to add features or even develop projects from scratch under the GPL license. Cygnus (later bought out by redhat, unfortunately) is a famous example.

Re:Something doesn't sound right. (1)

EveryNickIsTaken (1054794) | more than 7 years ago | (#17872710)

Well, the fishy part is that it sounds like *only* if he takes this job on will he be given copyright for the code he has previously written. (Almost sounds like the client is holding his code hostage, so to speak.)

Re:Something doesn't sound right. (0)

Anonymous Coward | more than 7 years ago | (#17875570)

Well, the fishy part is that it sounds like *only* if he takes this job on will he be given copyright for the code he has previously written. (Almost sounds like the client is holding his code hostage, so to speak.)
In general, when you write code under contract, the contract specifies that the payer owns the copyright rather than the writer. For example, when you work for a regular company and write code during work, the company owns the copyright on the code that you wrote. This is why open source developers should get this stuff listed in the original employment contract.

Re:Something doesn't sound right. (1)

Fastolfe (1470) | more than 7 years ago | (#17890294)

Or the company rightfully owns the code and the programmer here would like to make a deal to transfer ownership to him? I don't see anything sinister here. If I wrote something really slick for a former employer, and some time later I wanted to use it, I might try to deal with them to get ownership of it (or at least a license to use it).

Re:Something doesn't sound right. (3, Insightful)

anon mouse-cow-aard (443646) | more than 7 years ago | (#17872708)

It is unusual in that it sounds to me like a company that "gets it". The company likely just wants to use the code in their business, but is not in the software business. Amazon was an early contributor to apache, because they needed a web server to run their business.

I have been in a situation where the only software available for a business need cost in the middling six digit territory, and managed to replace this application with some about 10000 lines of python scripting. Do I want to sell this application? It is not my business (we are not even a development shop, not enough of a team, need marketing, etc...) Do I want to maintain it forever? If I open source it, there is a chance that outside people will help. If we keep it in-house, we are just condemned to supporting it forever. It does not cost us anything to use a public svn repository, people have to get to whatever the development process is.

The company could be making widgets, and just need software that runs them. This could be a driver, or it could be some packaging around a linux distro for some appliance. 99% of the code would be GPL in such a case, maintaining the 1% contributed by this guy would likely just make for bad publicity if they only release the 99%.

Re:Something doesn't sound right. (1)

SlashDotAgent (700292) | more than 7 years ago | (#17873248)

If what the client needs is a new ability provided by that code, rather than a product they wish to distribute which this code is part of, then the approach seems logical. Many OSS projects, which are already large and useful, offer someone to sponsor a certain missing feature that they need. It is still releases as open source, and the client gets the feature they need, so everyone is happy.

Euh, Is that you Mr. Schwartz ? ;) (0)

Anonymous Coward | more than 7 years ago | (#17872426)

No offense intended but I don't think that asking /. about your company policies and methology is actually a fruitfull idea :-)

You've answered your own question.. (-1)

Ckwop (707653) | more than 7 years ago | (#17872684)

Go and talk to a lawyer. Their advice is insured and Slashdotters are on the whole legally ignorant. Kudos to you, however, for trying to get someone to sponsor GPLed code.


Re:You've answered your own question.. (1)

Aladrin (926209) | more than 7 years ago | (#17873006)

Jeez, RTFS. Hes going to talk to a lawyer. He is asking for pointers as to what he should be looking for and thinking about before he goes and pays a jillion dollars per hour. Having a lawyer explain copyright law to you in detail is expensive.

Really, if you dont want to answer his question, dont bother posting.

I also happen to want to know the answer to this. While I am not in this position now, I can foresee it happening in the future.

Make a contract based on functional results (4, Interesting)

Qbertino (265505) | more than 7 years ago | (#17872920)

I've done the exact same thing myself. Make a contract over the functionality and the service delivered that excludes code and implementation specs and agree verbally to GPL all parts exepct any CI and branding stuff the company uses. Think about a generic name for the GPL side of the project. Then anything that goes GPL is entirely in your hands and there's no need for a contract handling the GPL. It's a wonderfull foundation for working with larger partners. They don't have to pay further than needed, no need for both to fight wether they bought a result or some code and you don't need to feel ripped off as there's a funded GPL project out there with your name on it. It's a win-win situation.

Well, I hope you are a lawyer (1)

unassimilatible (225662) | more than 7 years ago | (#17876460)

or at least living in a jurisdiction that doesn't criminalize practicing law without a license, because you just did.

Re:Well, I hope you are a lawyer (1)

bondsbw (888959) | more than 7 years ago | (#17886256)

practicing law without a license, because you just did.
Practicing law requires an agreement between the attorney and the party being advised for legal services rendered. The attorney usually gets money in exchange for those services. No such agreement exists. This is Slashdot after all... using your logic, half of all posts should be prefixed with "IANAL but...".

Re:Well, I hope you are a lawyer (0)

Anonymous Coward | more than 7 years ago | (#17943858)

This is Slashdot after all... using your logic, half of all posts should be prefixed with "IANAL but...".
IANAL but...aren't they already?

Re:Well, I hope you are a lawyer (1)

juergen (313397) | more than 7 years ago | (#17991776)

Let's assume he is from Germany. German courts understand about common sense. There is no need to put up silly disclaimers on everything.

Obviously, he just gave a report of what he did and how it worked out. He specifically does not claim to be a laywer, and does not advise as such. Common sense dictates you cannot take a comment on slashdot as legal advice. EVER. Any German judge would laugh you out of court, and make you pay both sides fees.

Geez, not that hard really. And in case you wonder, IANAL, although I don't have to say that here in Austria either.

Write it simple (3, Insightful)

nuggz (69912) | more than 7 years ago | (#17873020)

Write out simply what you want, and see a lawyer.
It should only take a few minutes.

Anything that takes a lawyer... (1)

sd.fhasldff (833645) | more than 7 years ago | (#17876674)

Write out simply what you want, and see a lawyer. It should only take a few minutes.

Anything that takes a lawyer, takes a lot more than "a few minutes". A few HOURS, if you are lucky.

It's probably possible to cut down on the time required if you can find an existing contract that does pretty much what you need.

Ask Eben Moglen (3, Interesting)

MathFox (686808) | more than 7 years ago | (#17873138)

or one of the other experts working for the Software Freedom Law Center [softwarefreedom.org] .

As far as I see it is essential that write down that the application will be distributed under the GPL and that you'll get the copyrights on the finished work (if that's the deal.) Under the "work for hire" doctrine your employer normally gets the copyrights on your work.
Copyrights have to be transferred in writing, but a copyright transfer can be seen as payment. You could put something like: "Upon completion of the work [employer] will transfer the copyrights on ..." in your employment contract; but you should get another paper with the actual transfer.
I would not mind leaving copyrights with an employer, if I got full relicensing rights. What matters is that I can give permission to xxxBSD to use a BSD license for my code.

Disclaimer: IANAL, use this advice at your own risk. If it breaks, you may keep the pieces, etc. etc.
Remember, this is Slashdot.

Clarification? (1)

sottitron (923868) | more than 7 years ago | (#17873824)

the client has gone to court over software development in the past

Was this over software ownership, quality of development, or something else? Seems like you know this firm well and you are suspicious. Make sure your lawyer understands why so this perceived risk is covered by whatever you get in writing.

Re:Clarification? (0)

Anonymous Coward | more than 7 years ago | (#17884766)

Wow, I guess I didn't realise how long the AskSlashdot queue was. I'd almost forgotten posting this, and here it is on the front page. It just happens that the project has shifted and now I'm looking at either my develop-for-the-community GPL project or custom work to integrate a commercial, closed product. I now get to try to be impartial and help him understand what each entails.

For the curious, the previous legal matter was regarding misrepresentation of features built into very expensive proprietary software. Among other things. In the end he won not because of the validity of the claim, but largely because the consultant lost the signed contract.

The problem (2, Interesting)

GodInHell (258915) | more than 7 years ago | (#17874986)

Those who will give you advice here, probably aren't up to snuff on contract law.

Those who are up to snuff on contract law probably won't open themselves to liability by offering advice without the protection of a thorough interview, etc.

The best advice - get a lawyer, read everything twice - and.. just before you sign the contract.. ask the other party to certify that you've talked about and examined everything in the contract in the past - that they haven't added text or hidden anything from you.

Then, if they try to pull out a weird explanation in court, you have their word in front of the wittnesses to the contract to counter that weird interpretation.


Everything you listed in the summary: (2, Insightful)

JoshJ (1009085) | more than 7 years ago | (#17875190)

All that stuff- even the old code being released under the GPL and the copyright officially belonging to you (it's likely that it was not specified originally, and there could be an issue over it in the future if it isn't specified now)- all of it should go in the contract.

IANAL, so what you should do is write down everything you want in the contract, put the thing aside for a day, make sure you didn't forget anything, think about it for another day, then call the lawyer and explain the situation to him and show him the paper.

If a lawyer does draw up this contract for you.... (1)

simm1701 (835424) | more than 7 years ago | (#17883504)

Would you be so kind as to have the contract GPL'd so it can help the rest of us if we ever end up in the same situation? :)

Re:If a lawyer does draw up this contract for you. (1)

Fastolfe (1470) | more than 7 years ago | (#17890362)

The contract is likely to have enough specifics about the deal here and the state the deal is made in so as to be useless for most everyone else. Attempting to re-use someone else's contract without running it by your own attorney wouldn't be very smart, and since he is almost certainly going to have to make changes to it, why not just let him draft it from scratch?

Re:If a lawyer does draw up this contract for you. (1)

simm1701 (835424) | more than 7 years ago | (#17890506)

Edmund: "Baldrick, have you no idea what irony is?"
Baldrick: "Yes, it's like goldy and bronzy only it's made out of iron."

Process suggestions. (2, Informative)

kfogel (1041) | more than 7 years ago | (#17884308)

Will you be engaging an external development community as part of this contract? Will you be writing new code from scratch, or integrating it into an existing codebase (and if so, is that existing codebase already open source or not)?

Retaining copyright for yourself is a good idea; you can just make sure the contract grants the other party "perpetual, royalty-free, non-exclusive, irrevocable rights to use, sublicense, and distribute the software" or something like that (I am not a lawyer, though -- and you might want to take out the 'sublicense', depending on your goals, consult a lawyer about that).

I wrote a little bit about this process in

      http://producingoss.com/html-chunk/contracting.htm l [producingoss.com]

by the way.

Good luck,

Re:Process suggestions. (0)

Anonymous Coward | more than 7 years ago | (#17884818)

Thanks Karl, I'll make use of this. Mainly I'm trying to know where I am before I pay several hundred dollars to the lawyer.

There will be no immediate community involvement. The code will integrate with some other products, but only at arms-lenght.
Check for New Comments
Slashdot Account

Need an Account?

Forgot your password?

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>
Sign up for Slashdot Newsletters
Create a Slashdot Account