9 ms·
Ask HN: Is it safe to use Facebook's open source projects?
There is a PATENTS file in almost all Facebook's open source projects with statements on "Additional Grant of Patent Rights".
E.g., React (https://github.com/facebook/react/blob/master/PATENTS)
Why Facebook adds this declaration on top of the BSD license of the software? Is it safe to use those projects in my commercial project?
- bencollier49 12y agoHmm, interesting. The grant of rights looks as though it's designed to build a defense against patent claims against Facebook. Get everyone using their stuff, and anyone who does will find it quite difficult to challenge Facebook patents.
- powatom 12y agoIANAL, but does this just mean that you can use and amend their work, but you can't create the same basic thing from scratch and claim that you created it?
- DougBTX 12y agoIANAL, but shouldn't you be more concerned about open source projects which don't grant you patent rights required to use the software?
- pbhjpbhj 12y agoDo [m|]any open source projects hold patents?
- ramchip 12y agoDiscussion: https://news.ycombinator.com/item?id=8985541 https://news.ycombinator.com/item?id=8985541
- nostrademons 12y agoAlso here, which IMHO is more informative: https://news.ycombinator.com/item?id=8901357 https://news.ycombinator.com/item?id=8901357
- stupidcar 12y agoYeah, this discussion points out an important point that it's easy to miss if you scan Facebook's patent grant: The license Facebook grants you is invalidated by any action that even alleges that any of Facebook's patents is invalid. E.g. if you so much as Tweet that one of Facebook's patents, even one entirely unrelated to React, is invalid, you've lost your license. Compare this with the patent grant in the Apache license, as used in a library like Angular: https://github.com/angular/angular/blob/master/LICENSE https://github.com/angular/angular/blob/master/LICENSE Here the license is only terminated in the event that you institute litigation alleging patent infringement by the software itself. You're still free to challenge shitty patents and call out companies about them. Not so with Facebook's license.
- pbhjpbhj 12y agoThis is an interesting thing (to me!). Can you give a license that says, words to the effect, that if one accuses you of a crime then the license is revoked? This would make licenses beholden to not report the licensor for criminal activities. IPR infringements tend to be torts, which is different, but I'm still interested in how far you can push license terms before something in the law, USC here presumably, pushes back and says "woah, you can't do that". Anyone?
- fncypants 12y agoNo. In context it refers to "filing any ... action." Lawsuits and similar procedures in other legal forums are often called actions. Think the movie called A Civil Action staring John Travolta about a civil lawsuit. The concern here is not how it is triggered (it must be by a lawsuit or something similar) but rather the balance of power it provides if you get into a war with Facebook, since you cannot undo having used their software.
- nostrademons 12y agoIn DannyBee's original post, he says that the key words there are "for anyone that makes any claim (including by filing any lawsuit, assertion or other action)", and that by including the words for "assertion or other action", it encompasses claims outside of a court of law. A post on Hacker News or a tweet on Twitter is an assertion, and so would fall under this. Otherwise why include that language? IANAL, but he is, and this is his area of expertise (IIRC he runs the open-source program for Google).
- rurban 12y agoIt is safer than using SW without those "Additional Grant of Patent Rights". They explictly state that you can use it, other didn't make the effort to check for patents, or simply can screw you later.
- lmm 12y agoThere is no way to be safe from patents. Anyone could have them, they don't have to declare them, and they're written in deliberately obtuse ways so that you have no way of finding relevant patents before you're sued for infringing them (you don't have to have copied, or even be aware of, any patented thing to violate a patent). It's just a hazard of the software industry. The BSD license says nothing about patents, so this project is in some sense safer than a "normal" BSD-licensed project (but not an Apache, EPL or GPLv3-licensed project). The grant Facebook is giving you is fairly minimal but that's understandable from their perspective: they don't want to give you any extra patent rights, just enough to use the stuff they're actually trying to release. It's not safe to use software in a commercial project. Facebook might hold patents on any random library you're using. Companies that aren't Facebook might hold patents on any random library or on React. You could develop a library in-house in a clean room and it could still infringe someone else's patent. Patents really suck that way. But React is in no more danger than any other code you might use. EDIT: no more danger than any other BSD-licensed code. It would be safer to use code that has a less revocable patent grant, such as that in the Apache License, EPL, or GPLv3.
- kibibu 12y agoAs I understand it, you're better off not looking for relevant patents so that you can claim accidental infringement rather than wilful infringement
- alandarev 12y agoIt would be nice to find and share if React infringes any of the patents.
- cma 12y agoOnly if your company would survive half-damages and not survive full-damages, or probably a more complex weighted calculation. Doesn't seem too likely, especially if looking can help you do trivial workarounds to avoid infringing at all.
- lettergram 12y agoFYI my favorite patent ever is from Facebook: "A social networking system user may associate an emoji representing the user's emotional reaction with a content item presented by the social networking system. The user is presented with one or more emoji maintained by the social networking system and selects an emoji for associating with the content item." [1] http://www.google.com.ar/patents/US8918339 http://www.google.com.ar/patents/US8918339 That's right folks, they patented using the emoji to respond to content.
- matthewmacleod 12y agoOf course it is – you've got this back to front. The grant of additional rights to use any patent Facebook may hold is an additional benefit and in no way places any restriction on you. If you're going to worry about anything, worry about the squillions of open-source projects that don't include any patent grants. But you probably shouldn't worry about that either.
- vertex-four 12y agoMost open-source projects' owners and contributors don't have any patents to enforce, thus can't grant anything. The rest tend to be less chilling than the clause that Facebook uses - there's no "we'll only grant you this if you promise never to mention that any of our patents might be invalid". Are you certain that Facebook doesn't have any patents that cover any of its open-source software?
- SixSigma 12y agoNo. The license has a chilling clause that says if you ever suggest that any Facebook patent might be invalid, your license to use their code is automatically revoked. And in corporate world, that means any comment of any of your employees in an official capacity. Edit downvotes, well maybe the text of the clause will help > The license granted hereunder will terminate, automatically and without notice, for anyone that makes any claim ... by ... assertion or other action ... alleging .. that any right in any patent claim of Facebook is invalid or unenforceable. > https://github.com/facebook/fbcunn/blob/master/PATENTS https://github.com/facebook/fbcunn/blob/master/PATENTS
- randunel 12y agoSo... I think Facebook has at least one unenforceable patent in my country. There, I may no longer use their code :D
- callum85 12y agoWho is downvoting this? Could you comment and explain why?
- SixSigma 12y agoWas probably because I asserted it without citation.
- kriro 12y agoThanks for sharing this. It brings up some interesting questions. Does this mean React cannot be used by European government agencies since they claim (via law) that patents are not enforcable? What if I merely live in the EU and thus implicitly agree to the laws in Europw. Does that fall under "other action" or would I have to explicitly state that I think their patents are not enforceable. What if I have actively participated in the anti software patents movement? Do I have to single out specific Facebook patents for this clause to trigger or is it enough that they are caught in the general umbrella? Edit: I'm assuming this is found on all the stuff they release and not just fbcunn? At least it's also true for react: https://github.com/facebook/react/blob/master/PATENTS https://github.com/facebook/react/blob/master/PATENTS
- mobiplayer 12y agoThe best way to stay safe from software patents is to not enter the US market, if you can afford that :)
- pretaliationc 12y agoPardon my ignorance, but isn't this just equivalent to Apache's patent retaliation clause?[0][1] [0] http://en.swpat.org/wiki/Patent_clauses_in_software_licences#Apache_License_2.0 http://en.swpat.org/wiki/Patent_clauses_in_software_licences... [1] http://en.wikipedia.org/wiki/Software_patents_and_free_software#Patent_retaliation http://en.wikipedia.org/wiki/Software_patents_and_free_softw...
- richardfontana 12y agoThe events that trigger Apache License 2.0 patent termination are much narrower: "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."
- spacemanmatt 12y agoYeah, Apache is a little more giving in actual terms, but it's a similar deal.
- dutchbrit 12y agoIt all boils down to the license - open source means jack all.
- jonas21 12y agoFacebook is granting you additional rights on top of the BSD license. In the worst case, where you do something that causes the patent rights to be revoked, you're still left with the same rights you have under the BSD license. This is unambiguously safer to use than if they had released it under a vanilla BSD license. As for why Facebook did this, they're most likely trying to give away additional rights while still maintaining the ability to use these patents defensively, in the event someone sues them for infringing a different patent. It's ironic that people are freaking out about this. If anything, we should be encouraging more companies to give away patent rights. Sure, it's not as broad as the Apache license, but it's a lot better than the default (nothing), and given some of the ridiculous patent lawsuits that have been brought against Facebook, Google, and others, I can understand why they'd want to avoid restricting their ability to use their patents defensively.
- DannyBee 12y ago"Facebook is granting you additional rights on top of the BSD license. In the worst case, where you do something that causes the patent rights to be revoked, you're still left with the same rights you have under the BSD license. This is unambiguously safer to use than if they had released it under a vanilla BSD license. As for why Facebook did this, they're most likely trying to give away additional rights while still maintaining the ability to use these patents defensively, in the event someone sues them for infringing a different patent. " This is 100% totally and completely wrong :) The BSD license normally includes an implied patent license. It says " Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met .. " This grants an implied patent license to the patents necessary to actually do this, as long as you meet the restrictions. This is actually well settled law. You don't get to give people stuff unrestricted, and say "you can use this for free", and then say "just kidding, what i meant was, you can use this for free as long as you pay me for the patents" However, when you do what facebook has done, and give an explicit license, you have overwritten the terms of that implied license, and you get no implied license. So it is not only "not unambiguously safer", you are not "left with the same rights you had under the bsd license if it is revoked". This is because if you revoke the explicit grant, you get nothing in terms of patents. But the implicit grant is not revokable unless you violate the copyright license. So sorry, but this is not "better than the default" and does not in fact, help you.
- anonbanker 12y agoother than a) (ii) of that PATENTS file, it's way better than I thought it would be. Unless I'm reading it wrong, I'm losing my right to use the package if I publicly state that someone is misusing Facebook's software.