5 ms·
I think this is an overreaction (pun accidental). There are two things here: The copyright license, and the patent grant. Copyright applies to the concrete imp
by captainmuon 9y ago
I think this is an overreaction (pun accidental).
There are two things here: The copyright license, and the patent grant. Copyright applies to the concrete implementation. You have to agree to the license to be subject to it, and to legally use the code.
A potential patent applies to any implementation. Even if you write a clean-room clone of React, if it uses the same patent, Facebook has a patent claim. But that means the patent grant is not specific to the code; it doesn't even require consent, Facebook could allow you conditional patent usage even without your knowledge! A corollary is that you are strictly better off with the patent grant, it imposes no additional constraints on you.
License with no patent grant: Facebook can sue you for infringing patents, even if you are using a clone!
License with patent grant: Facebook cannot sue you for infringing patents, unless you do it first.
----
Second, I think the philosophy behind the patent grant is twofold: 1) that software patents are not legitimate. Enforcing a patent is not seen as a legitimate right, but an annoyance, like pissing on someones lawn. From that point of view, it seems not asked too much from somebody to refrain from doing that. (I don't know if that was the idea of the people who drafted that license, but it wouldn't surprise me.)
----
Another, unrelated observation (and please don't invalidate the first observations if this one is wrong as internet commentators are wont to do):
I see nowhere in the license [1] that it requires you to take the patent grant. Is that true? It would be silly to refuse it, because you are strictly better off with it, of course.
[1] https://github.com/facebook/react/blob/master/LICENSE https://github.com/facebook/react/blob/master/LICENSE
- discordianfish 9y agoThat's how I understand the patent grant too. Are people here really confusing a grant with some sort of restricting of their freedom or do we miss something? I frankly don't want to believe everyone, including apache foundation, believes this without getting their facts straight..?
- captainmuon 9y agoI think there is a legal layer, and an ideological layer. From the legal layer, this is a non-issue. You are not in any way worse off than if the license was public domain or BSD (as far as I understand it). From an ideological or appearances point of view, it seems a bit clumsy. People see it as a submarine to get access to their patents, rather than an insurance to prevent unnecessary patent litigation costs. I wonder what other companies do with their patent grants, e.g. Microsoft. I remember MS had one that said, you may use our patent for the Ribbon UI, as long as you follow our UI guidelines and don't make an Office competitor (which I find pretty restrictive). But maybe there are other options out there that people would find more agreeable. I think a unilateral patent grant for React in the license would be nice, but unrealistic. Maybe they should restrict the kinds of patent actions that trigger the invalidation of the grant, say only to certain patents, but it is hard to find a good compromise.
- cyphar 9y agoActually, from a legal layer it also might be a tactic to weaken the bargining power of anyone who uses React (why would Facebook want to discuss a patent portfolio with a company that cannot sue them for any form of patent infringement without losing their React protection). They also would lose their effective ability to counter-sue in a patent case. I don't like software patents on an ideological level, but even from a legal and practical perspective these license terms should be reason for concern. The first thing I read when I look at a free software project is the license, and when I first saw React a few years ago I stopped looking once I read the PATENTS file.
- cyphar 9y agoThe problem is that unlike the Apache 2.0 or GPLv3 patent grants, the React license restricts you from suing Facebook for _any_ patent (even non-software patents). And note that that Facebook doesn't reciprocate that, and so if they decide to sue you for any alleged patent infringement then you cannot counter-sue for patent infringement they may be committing if you are using React. Also it makes you far weaker in negotiations about patent portfolios. I personally dislike this whole patent business, but I can imagine even pro-patent people would also be against this.
- discordianfish 9y agoIn what way does it restrict you from suing Facebook? From what I can tell the patent grant is only beneficial to users of the software, not facebook. And it exists to address the concerns people might have that, if they use any facebook tech, they might risk getting sued. If you decide to sue, you're as good off as before. But if you don't sue, you can be sure facebook will never sue you either for violation of the patents they granted.
- CodeWriter23 9y ago> In what way does it restrict you from suing Facebook? Economically, by losing the license to use React in your product once you serve them with papers. It's an implied gun to the head. Or poison pill, if you prefer.
- discordianfish 9y agoYou're not losing the license to use React if you sue Facebook. You only loose the patent grant if you do. In which case you're off as without a grant in the first place. At least that's how I understand it, so this still looks to me like people raging about something they simply don't understand.
- matharmin 9y ago> A potential patent applies to any implementation. This is the point that most people seem to be missing, and it applies to much more than just React clones. If for Facebook has patents required for Virtual DOM, you are no better off if you use Vue.js or almost any other recent frontend framework. Just because you're using a project without the patents file doesn't mean those patents won't affect you.
- malandrew 9y agoVirtual DOM? Really? Does anyone know what patents you are granted with the React license? Virtual DOM work that I and some colleagues did (and have patents for) pre-dates even the earliest internal Facebook experiments with the virtual DOM. We even spoke with the team at Facebook about our work well before React was even publicly released.
- halomru 9y ago>A potential patent applies to any implementation. Even if you write a clean-room clone of React, if it uses the same patent, Facebook has a patent claim. Sure, but that only rules out a reimplementation of React. The question most people face is "React or existing alternative X?". If your chosen alternative is still actively developed, it's probably notably different from React in concept and implementation (why else would it still exist). Now if Facebook owns any react-related patents, you use all of them by using react, your alternative has a good chance to be sufficiently different to not be infringing. In terms of your chances of using Facebook patents, any alternative is strictly better than React itself.