(Replying to PARENT post)

If Facebook has a patent on React, it's almost certainly going to be on the vdom concept.

If Facebook has a patent on the vdom, then all the projects in your list violate the patent, and none of them come with even a conditional patent grant from Facebook.

If Facebook does not have a patent on the vdom or other React technology, then those other projects are safe, but so is React, since termination of the patent grant has zero cost to you.

My personal belief is that Facebook has no patents on React, so I feel safe to use React, Mithril, or any other vdom based library. But I can certainly understand people who feel like they need to play it safe, assume Facebook does have a vdom patent, and avoid all such libraries.

But I'm not really following your logic at all. It's like you think Facebook has a patent, but then you only want to use the libraries that maximise your ability to get sued over it? What am I missing?

๐Ÿ‘คLazare๐Ÿ•‘8y๐Ÿ”ผ0๐Ÿ—จ๏ธ0

(Replying to PARENT post)

You're missing the fact that if you sue Facebook for any patent infringement, even a legitimate one (say, you're the creator of some new hardware), Facebook will revoke your React license.

Also, Facebook has no vdom patent. It's not like you can be granted a secret, hidden patent (even the word "patent" itself means "open").

๐Ÿ‘คjnbiche๐Ÿ•‘8y๐Ÿ”ผ0๐Ÿ—จ๏ธ0

(Replying to PARENT post)

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?

๐Ÿ‘คfalcolas๐Ÿ•‘8y๐Ÿ”ผ0๐Ÿ—จ๏ธ0

(Replying to PARENT post)

It's speculation what patents Facebook has for React or what they cover. I've heard of claims of prior art for vdom-like concepts, so it is possible even if Facebook has React-related patents, only narrower interpretations of any claims might hold up (if that). React has a specific way of updating state which, for example, Mithril does not use. So, it is possible other vdoms may be far enough away from React to not be covered by any patents claims Facebook might try to make. Granted, that is no 100% guarantee of anything.

To me, the most important part of a vdom library like Mithril is using the HyperScript API with it, a library which predates React: Aug 20, 2012: https://github.com/hyperhype/hyperscript/tree/9237f590f3bc82... May 2013: https://github.com/facebook/react/blob/75897c2dcd1dd3a6ca462...

Personally, I feel templating approaches to making JavaScript-powered UIs like React's JSX or Angular's own templating approach or the templating systems in many other UI systems are obsolete. Modern webapps can use Mithril+Tachyons+JavaScript/TypeScript to write components in single files where all the code is just JavaScript/TypeScript. Such apps don't need to be partially written in either CSS and some non-standard variant of HTML that reimplements part of a programming language (badly). (Well, there may be a tiny bit of custom CSS needed on top of Tachyons, but very little.)

Here is an example of a coding playground I wrote that way with several examples in it which use that approach: http://rawgit.com/pdfernhout/Twirlip7/master/src/ui/twirlip7...

So, by writing UIs using HyperScript (plus a vdom library), you can potentially (with some work) replace a backend like Mithril with almost any other vdom or even a non-vdom solution. So, that is another way I mitigate this risk when I have a choice.

Granted, I know many web developers grew up on tweaking HTML and love HTML-looking templates and so they love JSX or whatever and are happy to ignore how hard it is to refactor such non-code stuff in the middle of their applikcations or validate it (granted, some IDEs are getting better at that). But I came to web development from desktop and embedded development working with systems where you (usually) generated UIs directly from code (e.g. using Swing, Tk, wxWidgets, and so on). I like the idea that standard tools can help me refactor all the code I work on and detect many inconsistencies.

Maybe a deeper issue for me is that with BSD+PATENTS Facebook is redefining what "open source" means in a way that is harmful to the open source community -- and also free software community as well like with Automattic using React on top of a GPLd WordPress. Which is why the Apache Foundation rejected the React license.

๐Ÿ‘คpdfernhout๐Ÿ•‘8y๐Ÿ”ผ0๐Ÿ—จ๏ธ0