Live data from Hacker News

Explaining React's license

code.facebook.com

211–220 of 622 posts

Re: Explaining React's license

#211
post #35

> We've been looking for ways around this and have reached out to ASF to see if we could try to work with them, but have come up empty. There's a pretty obvious solution to this: relicense React. The fact that Facebook isn't even considering that is a pretty strong indication that they "weaponized" their license on purpose. > To this point, though, we haven't done a good job of explaining the reasons behind our BSD +…

I would patiently beg everyone to employ some basic reasoning. Situation A: React is licensed under BSD + PATENTS. You sue Facebook for infringing your widget patent. Turns out Facebook has a patent for something in react. They revoke your grant and counter sue you for infringing that patent. Long legal battle ensues. Situation A: React is licensed under just BSD. You sue Facebook for infringing your widget patent. T…

If all situations are equal, why do they need the protection anyways? This is out of step with every other comparable library / framework / whatever.

Re: Explaining React's license

#212
post #149

Earlier quoted context omitted.

I've read it, and I'm pretty sure it says that if you initiate a patent lawsuit against Facebook, you lose the license to use React at all. It doesn't revert to BSD. (EDIT: Apparently that's wrong although the license could certainly be more clear about it.) If React doesn't implement any of their patents, the patent clause offers nothing extra. If it does, it would be damned nice to know which one(s) . Do other libr…

https://code.facebook.com/license-faq which they published a year or so ago explicitly says you keep the BSD license.

"Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate?"

"No."

Above from bottom of page to be clear to agree!

Re: Explaining React's license

#213
post #181

Earlier quoted context omitted.

Being sued, whether the patent is valid or not, is really expensive. Unless you're Google, or of similar size, you're going to lose just due to the costs. Using React just opens you up to liability, with no real benefit (other than using React). Why would you use it?

> Using React just opens you up to liability, with no real benefit (other than using React). How? Again, if they have a patent, they can sue you if you use one of the alternatives mentioned. If they don't have a patent, they can't sue you if you use React. What's your thinking behind saying using React adds liability? Because to me, it looks like either it does nothing or it reduces liability.

The fact that we even have to have this discussion is a reason not to use it. I'd have to a hire a lawyer and disclose it to my investors to be cleared up. It would cost us money to validate because it does something different compared to any other similar project. My investors were very specific about software licenses - we aren't allowed to use GPLv4 or AGPL at all.

Re: Explaining React's license

#214
post #188

Earlier quoted context omitted.

We learned from Java and Google that you can't patent and API. It's not forked from React it's an alternative.

The risk behind Preact isn't the API . Remember, this is a discussion about patents , so what matters is fundamental concepts and algorithms. The most likely thing for Facebook to patent is the concept of a virtual DOM that's diffed to apply updates to the real DOM. IF they have such a patent (and apparently they don't), then any library that has a vdom implementation infringes, including Preact. Of course, if they D…

I believe you are mistaken, the problem with the license, if I recall the discussion correctly was that if your company used React then they can't go on a patent lawsuit with Facebook even if the patents have zilch to do with React.

Re: Explaining React's license

#215

I love love love love love react as a technology, but this is just awful. I believe any developer not on Facebook's payroll still contributing to React or React native at this point has a moral obligation to stop. I personally feel like such a fool for not taking all this seriously before the ASF gave me a wakeup call. React is a trojan horse into the open source community that Facebook purposely and maliciously stee…

I'm also going to hop on this train and move away from react. Personally and professionally, I don't like the direction the big players are taking the internet. (The closed, proprietary model.) I suppose there's not much I can do about it except to move my efforts elsewhere, even if it affects my earnings.

> I don't like the direction the big players are taking the internet

It's more like developers in large parts stopped caring for standards and looked after products and "big players" and "the next big thing" instead aka the consumerization of IT. Happened to SQL, browsers, middleware, network protocols, app servers, containers, programming and markup languages, and more.

Nowadays, big things come onto the scene and into developer's minds via obscene venture capital budgets.

Re: Explaining React's license

#216

Earlier quoted context omitted.

Agreed and there is no reason to still stick with react when alternatives like vuejs and angular are available. Its not that great anyways when compared to angular 2/4. There are too many concepts to be mastered and it soon become overwhelming. I tried learning react but dropped it after spending a week when I still could not understand routing. Sense of cohesiveness between different concepts is missing. I believe s…

React Native is what I believe to be the big thing in the React community. I haven't hear of anything similar in the Angular or Vue ecosystems.

NativeScript is really good

Re: Explaining React's license

#217
post #204

Earlier quoted context omitted.

React doesn't do routing. It's a view library. And for me, the opposite was true vis-a-vis Angular and React, though got as far as making contributions to the Angular 2 tools before I decided to jumping ship.

That's the problem, it isn't intuitive at first as to how one should add routing when using React. I learned React-Router, but the API has changed a lot between versions in the past.

You can't blame a tool for the shortcomings of another tool, though :)

Fwiw, I concur that React Router is/was a bitch (it's been a while) - I suffered through it too. A client-side hash-based router is ~10 lines of javascript, and is what I'll write unless there's an actual need for anything more.

Re: Explaining React's license

#218
post #20

Earlier quoted context omitted.

"Fallback"? Are you referring to Preact?

No. The PATENTS portion of BSD+Patents does not nullify the BSD License. So you are no worse off than had Facebook simply licensed the code under the BSD License.

There is a serious problem with the Facebook license. I've heard this and many other "it'll be ok because..." kind of statements in discussions about Facebook licensing. The problem is that there is no clear agreement as to what the ramifications are, and no real clarity offered by facebook after repeated efforts by the community to obtain it.

The only clarity they offer is that they have their license in place for litigation purposes.

For a personal project, everybody can make their own decisions. For a project involving a corporate entity or an institution, it is irresponsible to leverage any facebook licensed software without a legal review of the license. I'm not saying that it's bad. I'm not saying that it's good. I'm saying that however a laymen may interpret the license, there is a high chance of being wrong. Better to have the professionals review it and make a judgement call. I have seen many people state that their legal departments reviewed the license and have come back in some cases supporting the use of facebook software, in other cases denying the ability to use it. Even among professionals there seems to be disagreement.

There is a common understanding of many open source licenses. There is none surrounding facebook's.

I have asked ASF to have their lawyers make a public interpretation of the facebook BSD+Patents license for the betterment of the community, but the response was along the lines of "no lawyer would do that." Someone else might have better luck with the FSF. The FSF does support the idea of patent clauses, or at least at one point they did. I have seen nothing from them regarding the facebook license specifically though.

Re: Explaining React's license

#219
post #114

Earlier quoted context omitted.

> and would be a huge win for free/open source software It would be a huge win for companies with large software patent portfolios, which is the opposite of what the free software movement is about.

> It would be a huge win for companies with large software patent portfolios This is backwards. Those are exactly the companies that would be harmed, because their hopes to be able to wield those patents offensively have been nixed.

Companies like FB/AMZN/GOOG/MSFT have, effectively, unlimited engineering resources. And money. They simply smash any incoming problems into dust with brute force. Startups do not matter. Hell, few companies other than huge ones matter. "We might have to replace a 10,000 line piece of free software" is nothing to them. If they wage war against another MegaCo, nothing really changes with this license. That legal battle could be fought (and do damage) regardless, they can meaningfully litigate against each other. But the idea this changes anything when going against, say, smaller players? Because it "weakens" their ability to use their (massive) portfolio? Because Facebook might be "afraid" of losing some software if they file suit? Not really.

So, here's how the real conversation will happen at MegaCo of your choice, should this play out:

---

Alice: We want to sue for patent violation against XYZ Co. But we use XYZ Co's software. If we file suit, we'll have to stop using it due to the license.

Some top-level guy with a three-letter title named "Joe": Okay. How big is their company and what software do we use?

Alice:

Joe: Okay. Assign 50 engineers to just recreate whatever stupid software of theirs we use, in-house. Or buy another version from someone more reliable. Then assign a billion dollars to legal to destroy them.

Alice: Okay.

---

And that's it. They're done. That strategy was all cleared up before lunch. Keep in mind of course Facebook will probably have enough money to litigate you into the ground so long that probably won't even be able to actually tell them to stop using your software, until they've already replaced it completely and also ruined you at the same time.

It turns out when you have effectively unlimited engineering resources and money (to wage legal battles), things like "Use a new virtual DOM library" or "Replace RocksDB" don't matter at all. They can just do it and crush you anyway.

Re: Explaining React's license

#220
Almost all of Facebook's "open source" code has the same PATENTS file, which makes them toxic if you can imagine a future where Facebook infringes one of your patents: https://github.com/search?p=5&q=org%3Afacebook+filename%3APA...

This includes things far outside the React ecosystem:

    - Flow (JS type checker, like TypeScript)
    - prepack (JS optimizing transpiler)
    - a bunch of Android/iOS UI/debugging frameworks,
    - all their GraphQL libraries (server/client)
    - their machine learning work (mostly targeting Torch)
    - Reason (statically typed programming language that transpiles to JS/OCaml)
    - ZSTD, a highly competitive compression algorithm.
Disclaimer: I work at Google on Kubernetes (which is Apache licensed). This is my personal opinion. I am frustrated with software with trivially incompatible licenses.
Post reply on HN