Hacker News new | past | comments | ask | show | jobs | submit login

Disclosure: I work at Google (but not on Fuchsia), and I contribute quite a bit to open-source projects.

Disclaimer: I'm not a lawyer, this is not legal advice, etc.

I'm not sure what you mean by "you grant a license to Google to use it in non-proprietary code" — was that a typo and did you mean "proprietary"? In any case, Apache/BSD/MIT licensed code can already be used in proprietary code, the CLA does not change that.

The Google ICLA you cited [1] is basically the same as the ASF ICLA [2]; the gist is that you retain copyright of your contributions, you're not giving up your copyright — i.e., it's a copyright license, not a copyright assignment (as some other CLAs are).

And, naturally, anyone can fork it if they wish, or distribute proprietary, non-open-source versions of an Apache/BSD/MIT-licensed project, subject to appropriate attributions, if required, by the relevant licenses.

However, neither you (nor Google) can claim copyright over the entire project, because the copyrights are held by the relevant contributors. Changing the license for the entire project requires agreement from all copyright holders — for example, see what LLVM had to do when they chose to add a clause to their license [3].

[1] https://cla.developers.google.com/about/google-individual

[2] https://www.apache.org/licenses/icla.pdf

[3] https://llvm.org/foundation/relicensing/




>> If you submit code, you grant a license to Google to use it in non-proprietary [sic, I assume] code.

> it's a copyright license, not a copyright assignment

>> So, at some point, once users and developers are locked in, Google can make later versions closed and proprietary enough to stop clones.

> you're welcome to fork it if you wish, or distribute proprietary, non-open-source versions of the code

It sounds like you're agreeing completely with everything the parent said.


Sorry for not making it more clear; I was responding to the statement:

> Not really open. If you submit code, you grant a license to Google to use it in non-proprietary code.[1] So, at some point, once users and developers are locked in, Google can make later versions closed and proprietary enough to stop clones.

The CLA does not change anything about the license, and does not prevent or make it possible (or easier) to make proprietary versions of the software (or your contributions) — all those conditions are in the license itself, the CLA does not override or amend any terms of the license.

In other words, you can make the same argument about any Apache, BSD, or MIT software, while the poster is claiming that it's the CLA that enables making future releases proprietary, which is why I pointed out that the Google CLA is the same as the ASF CLA.

If the argument is that Apache/BSD/MIT licenses are "not really open" because they allow incorporating them into proprietary software without releasing code, that's a different argument and is really a distinction between the "permissive" licenses like Apache/BSD/MIT and the "copyleft" licenses like GPL, but again, that has nothing to do with the CLA.


That's a very fair point. Thanks for clarifying.


The thing is that anyone can make that fork and use the code on a proprietary system, not only google. The same that apple did with the mach kernel and any other one could have done.


[flagged]


Given the comment you're replying to, this counts as a personal attack. We ban accounts that do that, so please don't.

Even as a top-level post this is a bad comment for HN, regardless of how one feels about Google. Please don't post unsubstantive comments here.

https://news.ycombinator.com/newsguidelines.html


Everyone knows how much the Google haters opt for a company that actively patents most trivial stuff and arguably contributes much less to open source.


> And, naturally, anyone can fork it if they wish, or distribute proprietary, non-open-source versions of an Apache/BSD/MIT-licensed project, subject to appropriate attributions, if required, by the relevant licenses.

so, basically you submit free labor for the use by for-profit corporations, but you dont get those same freedoms to do so on your own devices, got it

personally, i wouldnt mind so much if users of submitted code were payed "dividends" for ones labor when used in propriatary for-profit services/products, but seing as that is not the case, well, i cannot abide...


The point is that when a non-Googler contributes code, it’s non-proprietary since the non-Googler is by definition a non-Googler. What the CLA does not prohibit is proprietary use—- your lengthy answer. The OP makes the point that Google will find a way to use public contributions for Google’s own profit.

The sheer size of the response above, let alone content, is what creates the tone of “talking past the customer” which is what has alienated so many people from Google. The problem I’ve repeatedly experienced in Google open source and as a Google Cloud customer (contract with Google FDEs on-site) is that Googlers just don’t listen. You can’t trample the customer with your own narrative no matter how correct and elegant it is. You can disagree, but you can’t deny the feelings of others. It just doesn’t work that way.


Disclaimer: I'm not a lawyer and this is not legal advice.

I've added a clarification separately, please take a look there first: https://news.ycombinator.com/item?id=23365469

> The point is that when a non-Googler contributes code, it’s non-proprietary since the non-Googler is by definition a non-Googler.

I think we are using different definitions of "proprietary". I'm using it to mean "non-open-source" [1], and you're using it to mean "employed by a specific company" (or something else); can you please clarify what you mean or rephrase what you're trying to say?

> What the CLA does not prohibit is proprietary use—- your lengthy answer. The OP makes the point that Google will find a way to use public contributions for Google’s own profit.

That's not the purpose of a CLA; that's the purpose of a project's license. That was the point of my post. Anyone can take a project with an Apache/BSD/MIT license (whether or not the project has a CLA, it's orthogonal), make a proprietary product from it, distribute it, sell it, etc. and they would be just fine doing it, without also sharing any of the source.

To put it another way, a CLA cannot restrict proprietary or commercial use of a patch or contribution, if the underlying project license is Apache/BSD/MIT, because all those licenses already allow commercial use, incorporating software into proprietary / closed-source products, etc. Such a CLA would be incompatible with the project's license.

I've never seen an Apache/BSD/MIT project where the CLA (and only the CLA) prohibits commercial / proprietary / closed-source or any other use cases — if you have an example or two, could you please point them out? I'm very curious to see how this would work in practice, because this seems like a strong contradiction, so I would be interested to see how this plays out in practice.

[1] https://en.wikipedia.org/wiki/Proprietary_software


I think a nice example that could help clarify the situation is the CLA that Canonical uses; if I remember correctly they reserve to themselves the right to change the license of community contributions.


Looking at the Canonical CLA [1], you're right that it allows Canonical the right to relicense contributions under any other license:

> 2.3 Outbound License

> Based on the grant of rights in Sections 2.1 and 2.2, if We include Your Contribution in a Material, We may license the Contribution under any license, including copyleft, permissive, commercial, or proprietary licenses. [...]

However, please note that my original comment [2] was asking for a CLA which prevents usage in a proprietary setting, while the project is under a permissive license like Apache/BSD/MIT (emphasis added):

> I've never seen an Apache/BSD/MIT project where the CLA (and only the CLA) prohibits commercial / proprietary / closed-source or any other use cases — if you have an example or two, could you please point them out?

[1] https://ubuntu.com/legal/contributors/agreement

[2] https://news.ycombinator.com/item?id=23365535


It was not directly a reply to that case, it was meant to say that even if the license was GPL so that a proprietary fork was forbidden, a CLA could make it so that only the owner of the project is allowed to use your contributions as proprietary.

It was an example of a case where a CLA could have caused what was imputed by the original comment.


That's a fair point, thanks for the clarification.


I've responded to the CLA / licensing issues in a separate sibling comment (https://news.ycombinator.com/item?id=23365535); this comment is to respond to the rest of your post as it's a separate topic that's important in its own right.

> The OP makes the point that Google will find a way to use public contributions for Google’s own profit.

That's an opinion on motivations, not a statement of fact, so I am not agreeing or disagreeing with that. My comment was only about CLAs and open-source licensing, and what each of them enables you to do (or not) with someone else's source code, and how your contributions may be used by others after you submit them, not a statement or response to their opinion.

> The sheer size of the response above, let alone content, is what creates the tone of “talking past the customer” which is what has alienated so many people from Google. The problem I’ve repeatedly experienced in Google open source and as a Google Cloud customer (contract with Google FDEs on-site) is that Googlers just don’t listen. You can’t trample the customer with your own narrative no matter how correct and elegant it is.

I'm sorry you've had negative experiences in the past, and I'm sorry to read that my response on the distinction between CLA & open-source licenses came across as not listening or talking past the customer — that was not the intent at all.

If you're open to it, I'm happy to chat with you separately (you can easily find me on Twitter or LinkedIn and send me a message) whether you want to discuss this topic, or your other experiences with Google open-source projects, or Google Cloud, and I can try to help, or just listen. If not, that's fine, no worries.

> You can disagree, but you can’t deny the feelings of others. It just doesn’t work that way.

I'm sorry that came across as not listening; my comment was only to clarify the notion of CLAs and how they relate to open-source licenses, without delving into business goals and future roadmaps (which I have no visibility into, nor control of, in this case).

Everyone is entitled to their opinions or feelings on how a company might or might not use open-source software or their motivations for open-sourcing (or not) of a project, and I'm not here to debate, explain or defend any company's decision in that regard. Again, my comment was limited to the scope of what a CLA brings to an open-source license of a project.


They aren't disagreeing. Parse what they said, and notice nothing contradicts the post they're replying to.

That's what I didn't want to say explicitly in my other comment: they made a long-winded comment that appeared to express a negative statement about what the poster said, while technically agreeing. To me, it's a perfect example of a lawyer's yes-that-sounds-like-no.

Edit: glad I didn't say this in the other comment. Shouldn't have jumped to conclusions.


I've added a response to your earlier comment to clarify: https://news.ycombinator.com/item?id=23365469




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: