I agree with this move.
There are plenty of OSS projects out there without patent thing attached to its license so no reason to use react.
I agree with this move.
There are plenty of OSS projects out there without patent thing attached to its license so no reason to use react.
I would have too. I'm getting into Clojure(Script) where React(Native) seems to be a popular choice for UI. I haven't touched it yet. I hope there's a good alternative when I get around to it because I really like Clojure but I never wanted to rely on anything made by Facebook.
Always check the licence. Public domain, MIT, simple, plain BSD, GPL (any version), apache - if it's anything else, be extremely cautious.
https://lists.opensource.org/pipermail/license-review/2014-A...
https://lists.opensource.org/pipermail/license-review/2014-S...
Then again, GPL v3 is on many people's danger list
There are jurisdictions that don't recognize PD grants. I can't think of a good reason to use CC0 over MIT or BSD.
> GPL (any version)
This might be doctrinaire but I won't use the (L)GPLv3 because of the AGPL linking clause:
> Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such.
There's also the Zero-clause BSD License https://spdx.org/licenses/0BSD.html which is the same kind of thing except it does not even mention the words "public domain".
+ (not saying React is objectively better than alternatives, only that if you believe it's better then the statement is true for you)
You are licensed to use React even if you never agreed to whatever is in the PATENTS file. The reading where to use a source code is meant only to compile it, maybe admire the compiled artifact but never to put it anywhere near an executable environment seems pretty far-fetched to me.
But you're not wrong, preact is a great alternative to react and it comes with a permissive license.
Often the large companies that are using React have patent cross-licensing agreements with Facebook (or other special arrangements) that make the issue moot for them.
Otherwise, getting your in-house council (or even your board, depending on the situation/risk) to approve of using React with the very broad patent restrictions can be an uphill battle indeed.
No, seriously, that is what the contract said.
In reality, the bulk of developers used whatever they wanted with no consideration. I assume other contractors were under similar legal terms, but not sure about employees. I was seen as a pain when I kept asking for formal permission for stuff.
Back in the day, this was the norm.
>In reality, the bulk of developers used whatever they wanted with no consideration.
This wasn't - it was grounds for termination.
I remember stuff like - (for Windows C++) you can use Microsoft MFC and Microsoft STL - anything else you write from scratch.
Legal wasn't very flexible back then.
The happy medium that I've found is to provide a list of acceptable licenses and let lead engineers audit that software to be included obey them.
React isn't as popular in the real world as it is on HN.
https://github.com/facebook/react/wiki/sites-using-react
...that's obviously not complete, either. If you think of a large tech company the odds are they are using react somewhere for something, be it public facing or internal tooling. Many of the companies that aren't actively using React do so because they have their own JS stacks to dogfood (like Google and Angular).
Hopefully they've all done their due diligence..
A lot of these groups still see front-end tech as just HTML and CSS..
If you don't have any patents, you're not really risking anything using React.
Bank of America was ranked 124th for its number of U.S. patents granted in 2016.
http://www.ipo.org/wp-content/uploads/2017/05/2016_Top-300-P...
If y'all think you're going to find some edge case that these companies lawyers haven't already...
Many don't, and don't.
BTW one can use [preact] which is an almost drop-in replacement, but smaller, and is under MIT license.
[preact]: https://github.com/developit/preact/
Actually, React is banned at a number of them, and i've personally discussed the issue with a number of fairly concerned counsel.
So for better or for worse, i don't believe this is as simple as you make it out to be.
* Apple (their entire dev docs site is built in it, and they've hosted Bay Area React user meet-ups)
* Twitter (for their mobile web)
* Microsoft (parts of Visual Studio use it)
* Netflix (all over their frontend stack)
...as well as Dropbox, AirBnb, Venmo...
So whilst I don't doubt you've discussed it with concerned counsel, there are huge corporations deploying React today, many of whom have extensive experience dealing with patent and IP issues (Apple, Microsoft, etc).
Disclaimer: I work for IBM.
To be concrete, IBM Watson has several products that leverage it that we sell to customers. For example, Watson Company Profiler, Watson Virtual Agent, Watson Discovery-related tools, and more.
Other organizations use it as well inside of IBM, like IBM Cloud and IBM Watson IoT, but I'm less familiar with their products off the top of my head.
Source: Friends at IBM
However, many teams went through the process in order to use it because of how valuable they believe React is to their products. Groups like IBM Watson IoT were fortunate enough to get portfolio-level clearances as well during that time.
Thankfully the process changed and many product teams add React to their list of libraries/frameworks to evaluate for their use-cases.
I'd like to ask their legals about why they feel OK using React, but I'm too far away. Is anybody here in touch with them?
It wasn't possible, consequently my company asked that we move away from React.
However, one thing that could be interesting to see is:
* do the companies using React are using the latest version or the last version without the patent clauses?
* do they start new projects with React?
you mean vs code, which is a separate product from "visual studio"
Do you really see no difference between the two?
Also see this HN thread from a year ago: https://news.ycombinator.com/item?id=12108273
Also, it's my opinion that the companies like AirBNB who use it are not considering that it will complicate acquisition by another party. They are basically taking themselves out of contention for purchase by a company that is in direct competition with FB. Maybe, evidently, they don't care but I just hope everyone using it is thinking about such things.
I pointed out a number of these are concerned. There is in fact, reason for concern. That doesn't mean people won't use it, it just means they may be willing to take the risk. In fact, some of the counsel who are in fact, concerned, are on your list of big users!
If i have 100 billion dollars in the bank, i may be willing to take more risk around a random open source project than a small startup.
You don't seem to argue the original point at all (ie whether there is cause for concern), just point out "there are lots of people who use it who have extensive experience dealing with IP". I'm not sure how this means there should be no concern.
For example, i know at least a few of those corporations treat React very specially compared to most other open source (in how they use it, in how they try to segregate it, etc).
So yeah.
FWIW there are hundreds of companies (some very very large) using Preact in production. If there were showstopper bugs, they'd be fixed immediately.
Consider: The risk for React is based on 1) speculation that Facebook has patents on core React concepts and 2) the fact that patent grant that comes with React terminates in some situations if you end up in conflict with Facebook. So for safety, it might be better to make sure you use code that Facebook has no patents on, which (if (1) above is true) means "code that is nothing like react at all".
A React clone that doesn't have the patent grant at all is vulnerable to all the same issues React itself is, plus more. It's strictly more dangerous than using React itself.
(Unless, of course, we assume there's some bit of React that's subject to a Facebook-owned patent that would not also apply to Preact. But having spent a few minutes thinking about it, nothing leaps out at me.)
React is a functional component library that uses the virtual DOM. It's well executed, but it's a simple concept.
The more you think about the ramifications, the more I come to the conclusion that software patents are an existential threat.
The EU does not recognise software patents.
Software interfaces cannot be patented - this has been upheld in every court, most recently in Google V Oracle.
That would be a strong defence to a copyright claim. We're talking about patents, where there is no concept of "derivative works", and what matters isn't implementations but broad concepts.
> Software interfaces cannot be patented
Right, but what makes Preact concerning isn't that it offers the same API, but that it is built using the same underlying concepts.
Preact renders independent, encapsulated, nested, functional-ish components, usually but not always written in JSX, into a virtual DOM. Components are rerendered to the virtual DOM when their inputs change, and then diffing is used to efficiently sync the virtual DOM with the browser DOM.
If Facebook has some sort of patent covering the virtual DOM (although thankfully as far as I know, they don't), it's hard to see how it would not also cover Preact. And this is true even if, as I assume is the case, Preact shares 0 lines of code with React.
Edit: To be clear, I don't believe the patent situation is concerning, I think Preact is a great project, and I may well be using it in production soon. But if I was worried about Facebook's patent portfolio, I would be worried about using Preact.
How did you arrive at that conclusion?