Yep, the patent grant is not fully reciprocal. As I understand it:
To use React, you give Facebook permission to use any of your software patents (edit: all patents, even on a new jet engine) throughout your whole company. Facebook gives you permission to use only the software patents necessary for React.
If your company sues Facebook over an unrelated software patent (edit: as above, any patent), your React license (to the React patents) is pulled and if your business has any dependency on React that part of your business is broken until you can port to something else, or you are in license violation if you keep using it.
On the other hand, if Facebook sues you over a software patent (edit: any patent) that isn't related to React, they are still free to do so (edit: you become free to defensively sue with other patents in response and not lose your license to React patents, meaning with the nuclear analogy below you give Facebook "first strike" capabilities but are allowed to keep a retaliatory-only arsenal).
So there is a big asymmetry: all of your software patents for a few of ours. (edit: all of your patents for a few react software patents)
It's a nuclear arms reduction agreement where Facebook gives up 1% of nukes in exchange for co-signers giving up 100%.
(edit: as pointed out below, it is a much worse deal: you give up all patents on everything, not just software patents; Facebook only gives up software patents on React)
> As I understand it: To use React, you give Facebook permission to use any of your software patents throughout your whole company.
That is, on its face, absolutely untrue. Nowhere in the React patent terms does it specify that you grant Facebook rights to use your patents--not even to ones related to React.
That's something that isn't in the React terms, nor does it seem to show up in any legal analyses published online from a lawyer making that claim. (None of the analyses I've seen, at least; if you found some, please post them.) In fact, the only place where this claim does crop up is in off-the-cuff message board comments.
FWIW, I don't use React, I don't want to, I'm not a Facebook employee, and in fact I think the world would be a lot better off with Facebook having less influence than they do today. But that doesn't change how weird it is to keep seeing comments like yours that make claims like the one above.
It maybe "on its face absolutely untrue" but it is true in practice. If Facebook infringes your patent and you sue them to enforce you lose the rights to use any patents React requires. So while you're not required to grant Facebook rights to use your patents, you are required not to enforce your rights relating to your patents against Facebook.
Companies shouldn't be dictating what happens if they're sued; it's a government right just like it's a natural right to accuse someone of theft. People shouldn't be sabotaged of their right to sue based on some arbitrary terms meant to block people from suing, their right to accuse someone of theft.
What if there was no patent grant, and just the BSD license?
Then you have no patent protection in the first place! You are in the same situation as when the patent grant expired because you sued them. I don't see how this is any better.
You do not give them a license to use any patent. You are right that in practice the non-enforcement means that they can willy-nilly use your patents. But if we are arguing about factual ability vs legal rights - they can probably already to that, due to the fact that they likely have more money and better lawyers then you do.
You are in a better place though - because you're not the only react user. If indeed it turns out there are some submarine react patents facebook owns, with this patent license most other users can continue to work. Without the license, facebook then has the choice to either sue everybody (kind of unlikely) or to create the situation wherein suddenly everyone knows that they're infringing but haven't yet been sued, or to retrospectively grant the license (probably losing trust).
And if you do have the license - then what? It's still a react death-knell should any submarine patent appear; no large company is every going to agree to such an assymetrical deal.
Better to at least be left in the situation where it's likely in facebook's own interest to never surface any (so restrictively licensed) patents in the first place.
> no large company is every going to agree to such an assymetrical deal.
The thing is, if you just use react for something inconsequential, and can live with the fact that you have to cease using it when you sue Facebook, then it is fine.
You shouldn't base your business on Facebook's (potential) patents, and then attack them with your own patents - but that is true with or without the patent grant.
Of course, what would be great would be 1) a finer grained, symmetrical patent grant, or 2) a bilateral agreement between your company and Facebook instead of the patent grant. If you are big enough and have patents, you can probably negotiate something like that.
> You shouldn't base your business on Facebook's (potential) patents, and then attack them with your own patents - but that is true with or without the patent grant. [...] If you are big enough and have patents, you can probably negotiate something like that.
The chilling future effect, which I believe is the primary driver of op worries, is what if you build on React and are the next Facebook? (I.e. you are growing quickly to become "big enough" but are not yet)
Old Facebook now how a lot more leverage on you at several critical moments -- either in terms of making an offer, or in the negotiations around a more reciprocal patent licensing deal, or the aforementioned infringing of your patents, or the mere threat of either if someone else makes an offer.
The entire point of ladder kicking is to build a moat to ensure that others can't grow past you in the same way you did, and this is pretty effective at that (intentionally or unintentionally).
As you said, a more reciprocal, more finely-scoped patent balance would resolve these concerns. (E.g. "if you sue Facebook over a patent involved in React...")
Yes, you're right that "BSD+patent"+"revoked patent grant because you sued Facebook over another patent" is pretty much the same as just BSD from the start. Licensing software you know you have patents on under BSD only with no patent grant would be pretty awful, of course.
If Facebook wanted to be the good guys here they would license under Apache 2.0 or write their own symmetric patent grant. They already relicensed RocksDB after Apache's move, perhaps they will do the rest of their stuff too.
> "BSD+patent"+"revoked patent grant because you sued Facebook over another patent" is pretty much the same as just BSD from the start.
Not really. If you have BSD with no patent grants you can at least argue that there's an implicit patent grant. If there's an explicit patent grant which you violated/got terminated that defence is clearly not going to fly.
My understanding is that if a company open sources a patent protected code (with one of the standard open source licenses without any additional patent clauses), the company grants anyone the right to use the patented technique without any obligations to the company. Otherwise we would see many cases of code released on liberal licenses, such as MIT, that no one is allowed to use, unless they pay for the patents separately.
That's definitely not the case. Some licenses like Apache-2 explicitly grant you the use of necessary patents. Others do not. And there are projects which are absolutely covered by patents, yet the code is opensource. That was the situation with Gif and MP3 formats for years.
I was involved with an opensource project which got a patent application submitted by the company. Even though I pointed out prior art. And even though I refused to sign the application as one of the authors. That's corporate environment for you.
As far as I know GIF and MP3 decoders were made open source not by the patent holders, if the patent holders open sourced the decoders, would they be able to enforce the patent rights?
The license of an open source implementation is granted by the authors and allows you to make copies and derivative works, while a patent grant comes from the patent holder and allows you to actually use the software. They are two completely independent things.
The fact that GPL licenses went for a patent grab (on hardware patents too) with an implicit patent grant paved the way for Facebook. It's just a very bad idea, unless you think all intellectual property should be swept into the dustbin of history, of course.
A company the size of Facebook can't really get away with that scheme even if it were intentional. For one thing, I can sell the patent to a troll and let them do my dirty work. Or a company could buy you solely to get fuel to sue Facebook over.
If Zuckerberg signs a paper with the wrong title, there's a troll lawsuit the next day. So if you make a habit of "in practice" strongarming people, you can easily slip up and have a huge headache on your hands.
> Nowhere in the React patent terms does it specify that you grant Facebook rights to use your patents--not even to ones related to React.
I detailed the specifics.
Take this example:
In exchange for doing graphic design on your menu, I stipulate that I can shut down your bakery if you take me to court when I eat from the bakery without paying. Now, sure, I haven't granted you the right to come eat my wares, but I'm going to have to shutdown my shop to keep it from happening.
In this case as long as you change the menu you can go back and enforce it, but with software, it isn't as feasible (say you had a game built on top of Raknet, which has the same PATENTS rider).
It's a de facto one-way "all your patents are available to us" grant, because you can't sue them if they violate any patents you may have, without ceding your l̶i̶c̶e̶n̶s̶e̶ ability to use React.
I'd call that a "distinction without a difference". Those are generally fallacious, and more often pedantic. Sure, you can still technically use React if, say, you're based somewhere that patents aren't particularly enforced. But if that's the case, why do you have patents in the first place?
That is plain wrong. Software patents exist and are enforced in the EU and other member states of the European Patent Treaty. The European Patent Office even has a nice FAQ on helping you get your software patents granted at:
The situation is a bit more subtle than you make out. The EPT has clear language which excludes software from patentability, but that hasn't stopped lawyers from arguing that some software can be patented if it has a physical effect (even a minimal one). Wikipedia actually summarises it decently: https://en.wikipedia.org/wiki/Software_patents_under_the_Eur...
The situation isn't even that subtle. The "physical effect" AKA the German Teaching has eroded into a "further technical effect" in the past decade. And with the UPC looming, things could get even worse. But that's getting off topic.
You can't legally use React without a patents license. The difference between the patents grant and the copyright license is mostly in the timeframe they cover (20 years for patents, 100+ years or whatever for copyright).
That nobody seems to know whether there are in fact any patents licensed by the patent grant within React is one of the most frustrating things about it.
Agreed. It gives the entire debate a very metaphysical quality. How can I determine the value of a patent grant when I don't know what the patents are, or if they even exist?
Now where does it say that? The way I read it, so long as you don't sue Facebook, you have a patent grant. If you believe people when they say that their patent portfolios are purely defensive, there is no problem.
On the other hand, being the aggressor in a patent lawsuit loses you the patent grant. This seems sane enough to me.
The normal state of affairs is completely ambiguous about patents. You get no explicit grant, so if they feel like suing, there's nothing to stop them. Some people claim an implicit grant, but there's no conclusive ruling on it.
I don't particularly care for software patents, but I don't see anything more stupid than the usual lawyerly CYA layered on an attempt to disambiguate the patent situation.
Why is it sane to lose the patent grant if you are a aggressor in a patent lawsuit against Facebook (for any patent, even ones unrelated to React)?
The clause also doesn't explicitly cover software patents only, so if Facebook infringes on your hardware patents (which is plausible, since Facebook does hardware related work as well), you still can't sue them.
I think the spirit is that patents are not legitimate. Suing for patent infringement is not considered exercising a legal right, it's considered being a dick and vandalizing someones property. So this is not to be read like a contract between to businesses, but like a truce.
It might as well say "we agree to not destroy your business using dirty tricks if you don't attempt the same".
That's how Apache 2.0 and GPLv3 treat patents. The language in the React license is not symmetric like the above licenses and thus doesn't feel like it's a "screw you" to patents. Not to mention that Facebook is very patent-heavy and it doesn't feel like they're anti-patent in any meaningful way.
I'd be more sympathetic to Facebook if they declared they would never use patents to sue someone and they'd only use their patents "defensively". Of course, they'd never do such a thing even though such a statement has zero weight.
> Suing for patent infringement is not considered exercising a legal right, it's considered being a dick and vandalizing someones property. So this is not to be read like a contract between to businesses, but like a truce.
This is an oversimplification. There are plenty of mum and dad inventors who would get destroyed by large companies but for relying on patent protection for their life's work.
Counterpoint - why would I want to build my business on software that, if the parent company screws me in some unrelated way, I have no recourse but to rebuild my entire software portfolio, or just accept that I've been screwed?
If they were offering something unique or especially distinctive, then maybe it would be worth risking, but as there are half a dozen or so alternatives, why bother putting myself into that particular pickle?
> Counterpoint - why would I want to build my business on software that, if the parent company screws me in some unrelated way, I have no recourse but to rebuild my entire software portfolio, or just accept that I've been screwed?
This doesn't prevent you from suing. It just prevents you from suing over patents.
Because they already allowed other people to use it, and it doesn't required extra effort on Facebook's part to allow another company to use it.
I can understand why Facebook would want to have a clause like this (to discourage lawsuits against them), but I would consider it against the spirit of open source to do so (ie. Facebook should be able to continue to do this, but I wouldn't consider React to be open source software in that case).
I wonder, does the definition of "open source" or "free software" require any patent grant at all?
I guess the GPLv3 has provisions for patents, but older licenses didn't. I remember some controversy around open source video codecs that you were not able to use safely because they were infringing patents.
Patents can be used to restrict all four of your freedoms under the FSF definition of "free software". They have written about this problem for quite a long time[1,2]. The problem with patents for things like formats or protocols is that they make free software implementations potentially dangerous to use (users can be sued for violating a patent). That's why h264[3], MPEG-whatever, FLV, etc are all considered to be bad even though they have free software implementations. MP3 recently shedded its patent licenses[4], and the response was that every distribution finally packaged mp3-lame in their main repos.
GPLv2 didn't have a patent grant because it wasn't a very well-known issue in 1991. Apache 2.0 was the first free software license to have a patent grant (which unfortunately made it GPLv2 incompatible) but GPLv3 included a similar (though stronger) patent grant because of Apache 2.0.
While these may sound like theoretical problems, people have been sued over using GIF, MP3, etc before. Every time you install Firefox, it will download a free software binary from a Cisco server that does h264 decoding[5]. However, they cannot legally recompile the binaries themselves as it means that the patent grant no longer applies and Mozilla (or your distribution) could be sued -- even though the binary's source is BSD-licensed.
> Now where does it say that? [...] If you believe people when they say that their patent portfolios are purely defensive, there is no problem.
Where does it say what? Which part of my post are you taking issue with, because I would love to correct anything.
What it certainly doesn't say is that Facebook's patent portfolio is non-aggressive. And when, outside of this, has Facebook said that about their entire portfolio (I'm not saying they haven't, I just haven't seen that before)?
My personal interpretation of this is that hypothetically you are likely to value your own patent(s) more than you value the time to re-write your application with something other than React. So if you need to sue Facebook, factor in that you’ll need a re-write as well.
My professional opinion is that if you use React and are concerned about this, talk to your attorney.
The thing with legal documents is that you can author whatever you please and none of it really means anything until it is brought to the courts to be enforced. At that point we learn what parts of what was written are actually valid.
Has any of this React patent usage agreement been tested yet?
But what that FAQ does not answer is: "Does the additional patent grant in the Facebook BSD+Patents license terminate if I sue Facebook because they violated one of my patents unrelated to the Facebook software?"
IANAL. One-sided contracts fail during legal process. There must be sufficient mutual benefit (mutuality in legalese). Has Facebook successfully defended the license's mutuality in court yet?
Maybe someone out there has access to legal cases and could help?
> To use React, you give Facebook permission to use any of your software patents throughout your whole company. Facebook gives you permission to use only the software patents necessary for React.
No, you lose the patent rights if you sue Facebook for any patents period.
> The license granted hereunder will terminate, automatically and without notice, if you (or any of your subsidiaries, corporate affiliates or agents) initiate directly or indirectly, or take a direct financial interest in, any Patent Assertion: (i) against Facebook or any of its subsidiaries or corporate affiliates
If you have to agree not to enforce any of your patents, that's pretty much equivalent to giving Facebook the rights to use them.
So if I understand correctly, if I were to use React for a marketing website about my patented system for <some extremely valuable invention> and Facebook steals/uses that extremely valuable invention, I can’t sue Facebook by virtue of using React?
Obviously, if that were to happen, you’d simply have to stop using React or else you’d get countersued for using React without a license right?
Why would anyone use React ever if that’s how it works? It feels like a payday loan – React makes it “easy” right now, but if your business is built dependent on React, you could pay a serious price later in exchange for “right now” convenience. It makes a strong case for Ember or Glimmer or any of the other front-end systems not tied to Facebook. Imagine a React “Native” app around which your business is based – you’d have to rewrite the entire thing of Facebook were to start using some patented aspect of your business.
Perhaps I am misinformed, but it seems absolutely bonkers to essentially indemnify Facebook from patent infringement just by virtue of using React somewhere in your business.
Imagine if Apple did this: if you release on the App Store using Xcode, you can’t sue us for any patent infringement ever or we’ll sue you for using Xcode illegally.
Is my assessment correct? Is React that good to risk such a situation? Facebook could sit back and watch a company using React develop something amazing, then Facebook could steal it and you’d have no recourse but to stop using React. Meanwhile, while you are rebuilding your application, you lose all your customers, but if you don’t rebuild your application, Facebook can legally take your invention and crush you in the market. Either way, you lose – simply because a few developers on the team were insistent on React’s greatness. If I were a VC, I’d be incredibly wary about supporting a company using React for their primary application.
Am I wrong? I am not trying to be argumentative – I just want to be sure I am understanding this correctly.
Yes, your understanding is largely correct. To be clear, you can still sue Facebook for stealing your patented invention, but then your grant to any patents that your use of React infringes would expire and Facebook could countersue over that. Facebook legal's response to this concern has been largely obfuscation and "trust us" which is not encouraging. They did change the patent grant two years ago to allow you to assert patent claims against Facebook without losing the grant if Facebook sues you first, but that's of limited utility.
It's funny you mention Apple, because the Apple Public Source License has a very similar provision.
> 12.1 Termination. This License and the rights granted hereunder will terminate:
> ...
>(c) automatically without notice from Apple if You, at any time during the term of this License, commence an action for patent infringement against Apple; provided that Apple did not first commence an action for patent infringement against You in that instance.
The good news is that the Apple Public Source License is basically dead and not used for anything of importance.
Please explain to me - are they able to change it again at any time in the future to "unclear" it again or just change wording altogether? Will it affect all users retroactively in that case? Because all this "they had bad wording in license but they changed it so we can use it now" sounds kinda crazy.
The patent grant is solely a grant from Facebook to the world, so Facebook can choose to grant more rights at any time. Just like I can sign a contract with you allowing you to borrow my bicycle on Thursdays and then later unilaterally decide that you can borrow it on Mondays as well.
The University of California did something like this in 1999 when they cancelled the advertising clause of the original BSD license. See ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change.
> You lose the patent rights if you sue Facebook for any patents that involve React
I see nothing that limits the termination clause to patents involving React. The only limitation following those general lines is the one you quoted, which is a limitation on the exception, implying that the license does terminate if the patent over which Facebook sued you is a React patent.
To use React, you give Facebook permission to use any of your software patents (edit: all patents, even on a new jet engine) throughout your whole company. Facebook gives you permission to use only the software patents necessary for React.
If your company sues Facebook over an unrelated software patent (edit: as above, any patent), your React license (to the React patents) is pulled and if your business has any dependency on React that part of your business is broken until you can port to something else, or you are in license violation if you keep using it.
On the other hand, if Facebook sues you over a software patent (edit: any patent) that isn't related to React, they are still free to do so (edit: you become free to defensively sue with other patents in response and not lose your license to React patents, meaning with the nuclear analogy below you give Facebook "first strike" capabilities but are allowed to keep a retaliatory-only arsenal).
So there is a big asymmetry: all of your software patents for a few of ours. (edit: all of your patents for a few react software patents)
It's a nuclear arms reduction agreement where Facebook gives up 1% of nukes in exchange for co-signers giving up 100%.
(edit: as pointed out below, it is a much worse deal: you give up all patents on everything, not just software patents; Facebook only gives up software patents on React)