6 ms·
+1 on this. I'm going for Preact (https://github.com/developit/preact https://github.com/developit/preact) for React alternative.
by devdoomari 9y ago
+1 on this.
I'm going for Preact (https://github.com/developit/preact https://github.com/developit/preact) for React alternative.
- deleted 9y ago[deleted]
- deleted 9y ago[deleted]
- khuey 9y agoIf React really is covered by patents Facebook has then Preact is likely infringing on them since it does the same things in similar ways. And Preact doesn't come with a patent grant from Facebook at all.
- reconbot 9y agoWe learned from Java and Google that you can't patent and API. It's not forked from React it's an alternative.
- Lazare 9y agoThe 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 DON'T have such a patent (which seems to be the case), then Preact is safe, but so is React. :)
- chx 9y agoI 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.
- chrisco255 9y agoGreat explanation of implications of React patent clause: https://medium.com/@dwalsh.sdlr/react-facebook-and-the-revokable-patent-license-why-its-a-paper-25c40c50b562 https://medium.com/@dwalsh.sdlr/react-facebook-and-the-revok...
- oneweekwonder 9y agoNo. The implication is if you use react now you give away rights. The same is not true for angular, vue or mithril. Some argue if you use vdom there might be issue. But at least with those you/your dev is not giving away rights willingly... But come to think of it; That is the way fb started :/
- chrisco255 9y agoNo, what rights are you giving away? You always have the right to sue anyone for any reason. There have always been consequences for doing so. If you want to sue Facebook for patent infringement...they own thousands of patents, mind you...they are going to comb through their portfolio and find which ones you're infringing on in your product. That's what any company would do. Google. Apple. Microsoft. Samsung. Yahoo. Any of them.
- Lazare 9y ago> 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. Not at all.
- jannotti 9y agoThat may be what was said in a discussion, but it is incorrect. If your company sues Facebook for a patent, then you lose the extra patent grant, which means you would have only the original BSD license. Which is what ASF seems to want the software license under anyway. The patent grant from FB grants you strictly more rights than BSD alone (though admittedly, you could lose those extra rights).
- true_religion 9y agoThey would have to sue on the basis that Preact and by extension all React-compatible APIs are in violation of their patent. This would cause mass alienation in the community for little gain, and force many previously neutral parties to align against them for attacking a completely separate project. And for little damage as well.... If we rewrote our sites to use React coming from Backbone, JQuery and Angular... it won't be too much of a hardship to rewrite our sites to no longer use React in the future. Heck considering the 5-year churn of JS frameworks, I'm already penciling in the rise of a new framework in 2022.
- vonmoltke 9y ago> They would have to sue on the basis that Preact and by extension all React-compatible APIs are in violation of their patent. Why? Why is the API relevant at all?
- ballenf 9y agoThey would simply sue a particular company for employing infringing technology. They wouldn't have to nor want to make any broader claim than necessary to achieve their goals in the case at hand. It would likely be a company suing FB for infringing a patent who happens to also use Preact in a site. FB presumably wouldn't have access to the site source code (pre-suit), but would be looking at the compiled, minified public site. I don't know how Preact and React look when compiled compared to each other, but given their similar structures it might be hard to tell them apart. FB would identify the offending bits of code or code structure. They wouldn't need to even use the word "Preact" (or "React") in the suit. If the underlying suit was a patent troll suing FB, FB's use of React patent clause might actually be celebrated in a enemy-of-my-enemy kind of way by the broader developer community. It would require FB to finally disclose the patent numbers applicable to React. I've spent a few hours attempted to review FB's patents to find anything related to React technology, but it's a needle in a haystack challenge and I failed. There are tens of thousands of patents and impossible to know what keywords to search for. (If someone else has done this work, would be great!)
- jbwyme 9y agoI'm pretty sure that the concept (or implementation) of virtual dom wasn't invented as a part of React. IANAL but I don't think they could patent it. Ignoring specific optimizations, a virtual dom algorithm is fairly simple.
- Lazare 9y agoCorrect, there is known prior art relating to vdoms, so any such patent would be fairly easy to defeat, IF it exists...and patents are public, and people have looked, and no such patent seems to exist. The patent issue is really not a big deal with React; the real concern is philosophical.
- imtringued 9y agoReact is still unsafe because facebook can infringe on your patents and if you sue you will lose your rights to use react.
- jopsen 9y agoEven if you reject the notion of software patents.. I don't want a non-standard license... It's just more complexity we don't need. Make it LGPLv3 or something if you want a patent clause, don't invent your own.
- Lazare 9y agoThat's simply false. It cannot happen. How many times does this need to be explained? It's been discussed a ton, the plain language of the license makes that clear, Facebook even covered this in their official React license FAQ (https://code.facebook.com/pages/850928938376556 https://code.facebook.com/pages/850928938376556). Please stop spreading FUD.
- doctorless 9y agoI think we read a different FAQ, or I'm misreading your link. The FAQ says that if Facebook sues _you_ for patent infringement and you counter sue for patent infringement that they won't revoke your license, but I don't see anything that answers the parent comment's concern.
- Lazare 9y ago> Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate? > No. In short, if you get into a patent dispute with them, your license to use React does not terminate. So when someone says "if you sue you will lose your rights to use react" this is wrong. My rights to use React come from the BSD license, not from the patent grant.
- gstein67 9y agoExactly. You'll be using the React code under the BSD license but without any patent grants.
- jnbiche 9y agoPatents are public, and Facebook does not have a vdom patent. It's puzzling that this is even a question.
- dminor 9y agoThe Google/Java case was about copyrights, not patents, and Google actually lost on that issue. They won on a fair use claim. And that win is still subject to an ongoing appeal.
- threatofrain 9y agoAPI is a matter of copyright, patents can cover the methods and techniques underneath the API, and so in a way is more general, and it's possible that Facebook patents concern Vue as well.
- riffraff 9y ago> We learned from Java and Google that you can't patent and API did we? I think the jury is still out on this, i.e. we had one verdict for google, one for oracle, one for google again, and now there's another appeal.
- kccqzy 9y agoThe case was about whether or not you can copyright an API.
- WalterSear 9y agoCould anyone with experience porting from one to the other let us know how it went?
- gedy 9y agoFor many codebases, Preact can be use simple as: npm i -S preact preact-compat then add this to webpack config: { "resolve": { "alias": { "react": "preact-compat", "react-dom": "preact-compat" } } } https://preactjs.com/guide/switching-to-preact https://preactjs.com/guide/switching-to-preact
- bpicolo 9y agoThe tricky part is probably testing. I don't think e.g. jest (or maybe it was enzyme?) supports alternative implementations quite yet, though they were working on it...that was true months ago though. If you're starting from scratch pretty easy though, sure. But that assumption is all too widespread in the JS ecosystem these days : (
- gedy 9y agoWe saw no problems with Mocha & Enzyme, can't comment on Jest.
- WalterSear 9y agowoot. brb :)