I know many stories like this; Facebook M&A meets with the founders of a promising company under the guise of a "we're about to acquire you" only to have Facebook copy their companies and then follow up with Facebook's lawyers knocking on said startups' doors to shut them down.
As such, I will not touch Facebook with a 10 foot pole, and I strongly recommend, from personal experience, that you do the same with your company.
Since I started looking into the M&A world I've learned you just can't take stuff like this too personally.
It seems like you're assuming that there's a decent chance that FB doesn't actually hold any patents on React. This seems unlikely, and is contradicted by what the author wrote (indicating that popular React alternatives may also infringe FB patents). Or am I not understanding your line of thinking?
My view, as a former lawyer, is that if you want to sue FB for patent infringement, you would be very unwise to continue using React. Willful infringement = treble damages.
That's very likely actually. Patents are public; people have searched around for obvious concepts and phrases involving the virtual dom, synthetic events, etc., and nothing has been found. (There's also nothing novel in what React does, so you'd kind of hope there'd be no patents.)
> This seems unlikely
Why do you think Facebook having patents on React is likely? (Come to that, why is it any more likely than them having patents on the tech behind, say, Angular?)
> and is contradicted by what the author wrote (indicating that popular React alternatives may also infringe FB patents)
IF a patent on, say, the virtual DOM exists, then Preact, Vue, etc., will all violate it. But it seems fairly clear that no such patent exists. So the author is quite right; popular React alternatives almost certainly use just as many of Facebook's patents as React does...it's just the number is probably "zero".
Someone shared this one with me recently: https://www.google.com/patents/US20170221242
That said, if you're using React, I don't think you should be suing Facebook for using your patents - after all, you're using theirs. If you do want to do that, then by all means, skip React.
So if they infringe on your patents you shouldn't sue them because they let you use some of their code? Note that this covers any patent (design patents too and not just software patents) and for any reason you sue them. That's not how this is supposed to work, and precisely what's wrong with the license. The grant shouldn't be revoked if Facebook is infringing on your works. It encourages you to not litigate against them if they're in the wrong simply because you're using one of their open source components.
The Apache 2 license is much better worded in this area:
> If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
That Apache 2 approach is entirely fair, the grant gets terimnated if you sue for patent infringement, and only that. If that's all that Facebook wanted to protect against, as the author alledges, they could've used the Apache 2 license just fine. They didn't because they're trying to leverage their patents much further.
No, if it's really just "some code" to you, then you should simply not use it if you're really afraid that Facebook is infringing on your patents and that you will gain harm from that. However, if:
- you're profiting a lot from either React, or other Facebook patents
- you're not afraid that Facebook is infringing on your patents, or
- Facebook infringing on your patents doesn't really harm you, just like you using Facebook's React patents doesn't really harm Facebook
...then you can just use React. And I believe one of the above holds for almost every React user.
And I'm afraid I don't really care how patents are "supposed" to work - we've known for a long time already they don't work like they're supposed to....
Eh, what? There's a very big difference between someone infringing on a patent, which does harm no matter if you care to enforce it or not (because it sends a signal to others that it's fine to infringe on your patents, if you don't care about them make them public domain instead), and an open source project including a patent grant so you don't have to worry about any patents that might govern that code. The two situations are not identical and can't just be compared like that.
> And I'm afraid I don't really care how patents are "supposed" to work - we've known for a long time already they don't work like they're supposed to....
Ah yes of course! The system is broken anyways so lets just not give a fuck about it being further abused. Just do as you please. Sound argument.
https://www.google.com/patents/US20170221242?dq=facebook+use...
I hope this application doesn't go anywhere, as there would seem to be a lot of prior art. For example, the Cocoa API in macOS implements the method of Claim 1 pretty much to the letter:
https://developer.apple.com/documentation/appkit/nsview/1483...
This API was introduced in OS X 10.3, so that would be 14 years ago.
"Although many embodiments are described herein in the context of React, embodiments are not limited to React or to rendering only updated views as determined by React libraries."
If you want to sue any company for patent infringement, you would be very unwise to continue using their software under most common licenses. The most-touted alternatives to React are plain MIT license with no patent grant at all, creating exactly the same risk. Why does the license that prevents you from being sued first get all the condemnation?
IANAL, but as far as I understand, MIT license contains implicit patent grant.
I believe the fear of a grant revocation also revoking the BSD copyright license has been thoroughly settled. If that were the case that would be an issue but FB themselves have put in writing that that is not the case.
It isn't just React. The PATENTS file is in most of their repos.
It seems like it will basically allow Facebook to infringe on patents from many companies once their software has crept into the dependencies of critical parts of the open source ecosystem. (I'm not sure if it would be accurate to call React Free software.)
You're correct though that if one does have aims to sue Facebook they should cease using Facebook led projects.
My main point is that the patent grant is nothing but gravy. Without it you have a plain Jane BSD license. Certainly not a worse situation.
Basically, the grant guarantees that you can't be sued if you don't sue first. No grant means that you can be used in any case.
Not just that, but if Facebook patents covered any similar framework (eg Vue.js) they could still sue you if you use that other framework.
I have head a theory that the BSD licence has an implicit patent grant. If FB sued you for using a plain BSD licence, you could argue the BSD covers it, if the courts agreed, you'd be fine.
One objection to the BSD+Patents licence is that it sorta removed the ambiguity, and explicilty implies the BSD has no patent aspects.
Even the experts admit that it's untested, and every law student knows that anything up to an actual test in an actual court is little better than a guess. Also, beware of "experts" who aren't even talking about copyright law. For example, consider the three cases mentioned in the "US" section here.
http://en.swpat.org/wiki/Implicit_patent_licence
The Hewlett Packard quote is clearly about products, which I know for sure are not legally the same as licenses. The Bottom Line quote's mention of purchases casts a similar shadow. Only the De Forest quote passes even a rudimentary sniff test. The case for this implicit license is weak indeed.
But fine, let's say there is such an implicit license. I have good news for you: it would apply to the Facebook code as well. The same principle used to argue for the existence of an implicit patent-license grant under plain BSD - i.e. that trying to bring a patent action would interfere with the still-operative copyright permission given in the LICENSE file - would still apply. Nothing in the PATENTS file would change that.
Belt and suspenders still beats belt alone, no matter how strong or weak the "implicit license" belt might be.
Not just React - you also lose status on Caffe2, React Native and ReasonML.
I can't believe I'm defending Facebook though. A company who's data-mining practices completely creep me out. I definitely try to reduce the reach of their tentacles into my life but in this case I see nothing to take issue with.
Im really not sure how it can be worded to let legitimate lawsuits through. But that is the problem. Tomorrow if you build a new AI algorithm on caffe2, FB can pretty much use the whole code and you would be bound by the patent clauses.
IANAL. You are safe only if you use any React related patents. They are free to sue for infringement of any other patents they hold.
...nothing is going to happen. There's no submarine patents possible here. (...from Facebook, anyhow.)
So, better make sure nothing you use has any form of smart overdraw reduction, dom diffing, etc., before you pick a patent fight with Facebook.
Of course, a cursory glance suggests every modern frontend UI library will violate that patent, so I still don't see a reason to avoid React; Vue, Angular, and recent versions of Ember are all just as much in violation. Guess we're back to static HTML and PHP. :)
(More seriously, hopefully it won't go anywhere; it's pretty clearly got a ton of prior art. But given how broken the patent system is, who knows?)
However, imho one of the major problems with software related patents is allowing an extremely ambiguous language in a field where exact language is the native form of expression.
It simultaneously makes it excessively expensive to challenge a patent, and almost impossible to divine if a particular implementation is covered.
There is code I've written that a client wanted to patent, and knowing the nature of the code, it's not a snowball's chance in hell I would recognise that (my own) algorithm if it was written in patentese, at least without spending days on it.
I don't even want to think about how many hours of legal fees it would cost to challenge even such a minor algorithm.
Most developers don’t understand basic copyright, let alone licenses and grants.
IANAL but I don't believe this is correct.
If I'm using React and I decide to sue Facebook for infringing some other software patents I hold, I lose the patent grant for any potential patents Facebook might hold concerning React. Which they could go after me with if they do indeed hold such patents. There's nothing proactively forcing me off React.
I just don't see anything but good from this BSD+patent grant situation. It lessens software patent litigation in general and lets me know I'm safe from Facebook suing me specially. It seems fantastic!