Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Showing with 1 addition and 0 deletions.
  1. +1 −0  LICENSE
View
1  LICENSE
@@ -1,4 +1,5 @@
Copyright (c) 2009, Snap Framework authors (see CONTRIBUTORS)
+Copyright (c) 2010, Google, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without

37 comments on commit 5e4850d

@wlangstroth

Google can't just be listed among the contributors in your stead?

@gregorycollins

I thought about that but it isn't a person.

@wlangstroth

Except that it is. In the US (and pretty much everywhere else), a corporation is a legal personality, which is why a corporate entity can sue and be sued. It doesn't need to be a "natural" person. Besides, mightybyte is the most obvious contributor after you in 2010, and Google can't subsume his contribution just by planting a flag. Your contribution is traceable through the git log, so if you add Google to the contributors list (and keep yourself in, because Google's claim presumably doesn't predate your employment agreement) then you don't have to make it appear as though the other contributors have been stripped of their respective claims to copyright (also traceable through the git log).

Naturally, the above does not constitute legal advice.

@kennethreitz

Did someone in management come forward and say this? There's usually an exception clause. I would ask about this case specifically. I doubt Google wants their name on every project you produce. That would be horrible PR. And the fact that a link to this commit is at the top of hacker news proves that.

@gregorycollins

It's fine, I signed the contract after all. The project is BSD-licensed, it doesn't really matter who owns the copyright.

@GICodeWarrior

There is an interesting California labor code to protect against just this.
http://www.wikinvest.com/stock/SuperGen_(SUPG)/California_Labor_Code_2870_Invention_Own_Time_Exemption

@gregorycollins

Thanks for the advice, but I don't work in California.

@btilly

I strongly advise you to contact Chris DiBona. He can tell you how to go about getting Google's permission to work on this.

Yes, there is a process, but it is fairly fast and quite reasonable. Google knows that it is in everyone's interest that Google employees can work on fun open source stuff, and they only say no for good reason.

@cdibona

He did, actually. He explicitly has permission to release code into this project, albeit with a google copyright. We sometimes allow people to keep copyright, but it takes longer to arrange that permission, and since it's BSD, he chose to get back to simply programming rather than wait. It makes sense, honestly.

@cdibona

Oh, I'd like to point out that the addition of a copyright google line only covers that code written by googlers, it doesn't somehow magically apply to other peoples code, or Gregory's code before he was a Googler. That would be wrong.

@jamessanders
Collaborator

It seems like considering the statement above, retaining the "Snap Framework authors" part and adding Google to contributors list would make the most sense. The copyright may only be symbolic but many people who work hard contributing to open source projects may not enjoy the idea of a large corporation getting the credit.

@cdibona

If there is any question, the 'share' of credit that Google deserves is at this point quite small.

@johnl

cdibona: Ah, so Google's copyright only magically applies to his code. phew!

He chose to give Google copyright of code he wrote on his own time because he'd otherwise have to stop coding while he waits for permission, and you think that makes some kind of honest sense? What else of Google's employees stuff do Google get to own? If they get into debt, does Google share that too?

@cdibona

Johnl, you should go read what I wrote on HN. It's Saturday and I'm splitting attention too much as it is.

@jamessanders
Collaborator

I didn't even notice this little patch had made it as a leading story on HN, I seriously have no idea why someone would feel the need to turn this into some sort of public controversy.

johnl: your hostility is unwarranted at this point.

cdibona: would the compromise I recommended above be feasible in your opinion?

@johnl

Do Google own what you write on HN? ;)

@kragen

Here's what cdibona wrote on HN:

So, under California law, which is probably the most liberal in the United States coving IP, you are prescribed from competing with your employer even on your own time or on your own equipment. This is reinforced in industry employment agreements, including Google's (my employer)

Most employers take the position that everything you do in the space is logically competitive. Recognizing that, we, Google, make it very easy to get permission to open source things, but under Google copyright.

We have a process for releasing under your own copyright, but it is not as flexible. That said, we've cleared about 200 (75% of those requested) projects in the last year for copyright release.

It's easy to get knee-jerk about this and get upset, but recognizing the nature of IP in a company and acting on it is infinitely better than pretending the problem doesn't exist and then, in the future, retroactively claiming copyright when convenient. The latter leads to lawsuits and unfair restraints on creativity and competition.

This system works. We've released 10s of millions of lines of code into thousands of open source projects. It protects the employees and it protects Google and the price is a bit of complexity and the odd thread like this.

Also, thanks to this system, Googlers can work on Google equipment and during their 20% on these kinds of projects, which is clearly useful and recognizes that people who work on open source almost universally do so without regard to the machinery or network they use.

@kragen

My own point of view is that of course it's unjust if employers are able to claim copyright on work that their employees wrote outside of work hours without using company equipment, and that everyone reading this thread should work to reform your state or country's laws so that they are more like California's in this matter, but even California's law isn't as ironclad a protection as explicit agreement on Google's part, because I'm sure there's some way snap-server could be construed to relate to Google's business.

It would be better if Google simply quitclaimed any copyright interest in snap-server over to Gregory, but of course that would even cover stuff he does at work, and it makes sense that there's an approval process for that.

@gregorycollins

Holy crap. The situation is quite simple:

  • pre-existing work I contributed to this project remains under my copyright

  • contributions other people make to this project remain under their own copyrights

  • contributions I make to this project subsequent to November 2010 are under Google copyright

  • nobody should really give a shit about this because a) I freely agreed to this even though Google has a process where I could have asked to retain my own copyright because b) the code is BSD licensed and you can use it however you like regardless of who owns the copyright.

The only thing this would potentially make more difficult for me is if I wanted to re-license the code under some other terms. But I would have to obtain permission from our other contributors to do that anyways.

@kybernetyk

We must abolish the enslavement machine that Google is!

@mightybyte
Owner

Re: Greg's last comment. IANAL, but from what I understand Greg's last bullet point item B doesn't make sense because at any time the copyright owner can choose to license the work in any way he/she/it sees fit. So just because it's BSD now doesn't mean the copyright owner can't revoke that at a later date. I don't think that changes the situation at all because Greg did agree to it, but I think it's a point of interest.

@gregorycollins

@jsz: yes, indeed. How dare they provide me with a generous salary and reasonable working conditions, including the ability to work on my own projects on company time should I so choose. Please be ensured that I am leafing through my copy of "Das Kapital" to try to find ways to tear down the oligarchy as we speak. We have nothing to lose but our chains etc

@mightybyte: I am not the sole copyright owner, you hold copyright on your contributions and others hold copyright on their code also. We have all (implicitly, anyways) agreed to license this code under BSD terms. If the code were to be relicensed in any way it would require agreement from each and every copyright holder, because I don't have a right to relicense your code under different terms: you've licensed it to me and everyone else under a specific set of conditions and I don't have a right to change those.

It doesn't happen often but I can point to at least a couple of projects who decided to change license and had to go through an intense amount of paperwork to make it happen. Mercurial, for instance, decided to add a line saying "or any later version" to their GPL v2 license; I had maybe a two-line patch in there from a year prior but Matt Mackall still contacted me (and every other copyright holder/contributor) with legal paperwork to sign to authorize the change.

Incidentally this is why the FSF insists on copyright assignment paperwork.

@GICodeWarrior

It hasn't been tested in court with a MIT or BSD style license, but changes to the license terms would likely be a fork rather than apply to old versions of the existing software. The rationale is that the current code has been released under the current license and since there is no expiration on the license, any copies of the current code perpetually fall under the included license.
http://www.freebsd.org/doc/en/articles/bsdl-gpl/article.html#LICENSE-CANNOT

Further, the Google copyright only applies to specific code (as mentioned by cdibona). So only that specific code could be affected by any unilateral decision by Google (ie. Google can't relicense the entire project).

@mightybyte
Owner

@gregorycollins

Yeah, I'm aware that we'd all have to agree. And I have seen projects require that all contributers assign their copyrights to some umbrella organization.

@GICodeWarrior

I was unaware of the perpetual licensing thing. It certainly seems reasonable, but it also seems that this conflicts a bit with the common occurrence of companies changing their license agreements as happens frequently in the software industry.

I guess I would have to study law to really learn about this, but it strikes me as funny at how tenuous, fragile, and undefined all this stuff is...but the system seems to work reasonably.

@kragen

mightybyte: generally open-source licenses are irrevocable — the copyright owner can permit new things but cannot rescind the licenses that they have already granted. There are some countries in which that isn't true and some countries in which it's still an open question.

@omidify

Where have we gone to be "okay" with a corporate entity owning product created on our own time.

@gregorycollins

bigohms: we have gone to a place with umpteen decades of precedent and case law, where we are bound by the terms of legal contracts we willingly sign?

@omidify

yup, and that's a matter of personal decision.

@gregorycollins

Right, so you took your seat in the peanut gallery today because.....?

@omidify

The seats were cheap.

@wlangstroth

I'd just like to apologize if it seemed as though I was trying to stir up a hornets nest with my original comment, or contradicting anything that cdibona has said, which to my mind is not only a reasonable position, but fairly obvious. The most serious objections here seem to have come from those who have not read cdibona's comments carefully.

@commentizer

@mightybyte: You are incorrect about nearly everything with regards to copyright law. When I license a chunk of code to you under a license, I cannot unilaterally change that decision. Once code is GPL, or BSD, or whatever, that version of the code remains so forever. I can license it under different conditions as well. So if I have GPL-licensed code, I can also license it BSD, or vica-versa. That doesn't revoke the previous license. I'm also under no obligation to license future bits of code the same way. So if I ship Foominator 1.0 under the GPL, and I am the sole copyright holder, I can ship Foominator 2.0 under a proprietary license. People can continue to develop based on my GPLed 1.0 code.

Short story is there's nothing to see here. Google and everyone else is behaving reasonably, given our legal system. Move along.

@mightybyte
Owner

@commentizer

Thanks for the corrections. I was incorrect about the durations of licenses, but it sounds like I was correct that the copyright holder is the one with license control. However, if you license code under the GPL and it remains so forever, how can you license it under BSD? It would seem that they are not compatible. (Obviously this isn't the case for future code though.)

@rryan

mightybyte: Think of it like this: If you are the copyright owner of a work, imagine you have an unlimited number of un-licensed copies in your pocket. When you choose to distribute a version of your code. You take a copy out of your pocket, slap a license on it -- say BSD, and you distribute that. Since you own the copyright, at any time, you can choose to take another copy of the work out of your infinite pool, and put a different license on it, say GPL. The work is now available to the public with two licenses, GPL and BSD. This is generally how dual-license schemes work.

Mozilla Firefox, for example, is available under 3 licenses -- the MPL, the GPL, and the LGPL. It's like a license buffet -- you take Firefox under whichever license is preferable to you. MySQL has the 'Community Version' (GPL) and the proprietary version. The proprietary version comes with a special license that allows you to embed MySQL in a product without having the GPL extend to the rest of your product (and also stipulates you pay Oracle $$).

The only person capable of choosing the license under which a work is distributed is the copyright holder. If a work is available under multiple conflicting licenses, that's totally fine, because if you choose to receive a copy of the work, you pick the license that you would like to receive the work under out of the available ones.

Sorry for the rambling explanation, basically it's totally fine for a work to be licensed under multiple licenses, but only the copyright holder can do that. If a number of people own the copyrights to a work, then you need everyone's unanimous agreement to distribute the work under a new license. And even if everyone decided to change the license of the work (say for version 2.0) they cannot un-license version 1.0 from whatever license they distributed it under (well, unless the license specifically said that, which no OSI license does AFAIK).

@sampablokuper

@gregorycollins re: your response to @bigohms.

You were willing to agree to that contract term, but many people regard as sacrosanct the principle that what a person creates with his/her resources during his/her own time belongs to him/her - or is at least a collective good, rather than becoming the property of a specific third party - and that an employment contract that violates this principle is morally abhorrent.

It's a slippery slope. Suppose Google gradually started increasing the contractual restrictions they impose on their employees' private activities; at what point would you say, "That's not OK. Unless they really don't value their personal freedom, people ought to prefer employment elsewhere than contract terms like these."?

I know, I know: money's a factor too; you've made clear the salary played a part in your decision. Some people will sign away their grandmothers - or worse - for a good price. But do you think it's ethical to ask people to do so?

There's a line between rewarding employees for the contributions they make to an organisation in the course of their employment (a good thing) and bribing them to give up their rights over what they do outside that course of employment, and it appears, from the comments above, Google has crossed that line and - more shockingly - feels no qualms about doing so.

To those of us who haven't seen Google's employment contracts, this is newsworthy. If I'm not mistaken, that's why Jacob Kaplan-Moss, Zed Shaw & others have seen fit to tweet links to this page.

@jamessanders
Collaborator

how about we change the copyright line to "Copyright (c) 2010, Google, Inc. and Snap Framework authors (see CONTRIBUTORS)" and move on with our lives.

@cdibona

Sure, you could also just add google to the CONTRIBUTORS file (and not put google on the same level as the Snap Framework authors)

Please sign in to comment.
Something went wrong with that request. Please try again.