React: stop panicking and think!

Andrea Giammarchi
4 min readAug 21, 2017

Update: they are re-licensing as MIT

The patents and license storm I’m witnessing these days is between ridiculous and scary at the same time, and I’m talking about React users!

Quick background

I’m one of those developers hired also to create patents, mostly based on Web technologies, only because the employer thought it was a good idea.

I’ve never thought patents were a good idea to move the Web forward, and as counter measurement, to ensure nobody could file extra patents based on standards, I’ve been writing blog posts and released my innovative solutions ASAP, because I know for sure that you cannot patent what’s already out.

TL;DR I’ve been partially a contributor of an evil industry, but also a blocker to its proliferation as soon as I understood how it worked; through my Open Source Software projects, also something I’m betting on a lot in these days.

Where have you been ?

If you woke up today realizing that maybe, for your startup, it wasn’t the best idea to hire React developers and base your business around such library, I wonder who made such technical decision and who is responsible about licenses and patents in your current company that might never fly!

Nobody”, for some very little company, is a more than reasonable and probably common answer. The truth is, Software is nowadays, more than ever, a very complicated matter, and whatever your business is doing, it’s probably better if you chose software that won’t ever be on your way.

Rushing “Solutions” ?

Now that it’s more than clear few companies should’ve ditched early hype in favor of logic, necessities, and laws, the panic-oriented-plan is to limit the damage and move to anything similar that would just work, isn’t it?

Just switching to Preact *might* not be it

As awesome as it is, Preact might, or might not be, in troubles.

Fast 3kb React alternative with the same ES6 API. Components & Virtual DOM

Even Jason, its author, is trying his best to have answers; most likely for himself too, but also for the quite big community behind his project:

Same API, compatible Components, and Virtual DOM … these are all things that the React framework advertised in the first place, and as much as I think Preact is OK to be used, Facebook employees gave some warning:

Moreover, stats!

As popular as Preact is, it has ~90 issues and ~100 contributors. It’s also not daily battle-tested against the project apparently everyone think these days should ironically compete with, and at scale: Facebook Inc.

The React library has ~600 issues but also ~1000 contributors, which is probably what you signed up for, when you chose to use it.

Give Preact a try” would be my best advice, but the trade off is not just a different name for an npm package, there is much more behind it.

Many Choices, Be Smart

Now that most details around the topic have been discussed, and mostly behind IANAL opinions, including mine right on this post, there’s some decision to make, if you already adopted React in your company:

  1. ignore the whole topic because your company will never have any idea that could possibly conflict with unknown future Facebook plans
  2. keep ignoring Software licenses and jump into any possible alternative without being sure upfront it’s really safe in doing so
  3. become aware that software hype doesn’t reflect into your product hype, and try to limit the damage ASAP for current, or future, projects
  4. start fresh with an alternative that has most of the benefits and none of the limitations

Well, thankfully for your next project, there are plenty of alternatives.

You should still always double check these are OK, legally speaking, and won’t ever backfire whatever is your business, and of course, being the proud developer of one of the most recent alternatives that covers point 3 and 4 of the previous list, I can suggest you to give hyperHTML and viperHTML for SSR a chance, covering everything React does already, without using Virtual DOM at all, yet performing faster in most common cases thanks to its standards based core: benchmarks already show results!

TL;DR I am these days an independent developer. I’m not a big company, and I don’t like patents. My Software is Open Source, and differently from every alternative I know, it has also 100% test coverage, over good tests.

So, as you can see, you have options out there: don’t just follow the “bigs”, ’cause the “bigs”, most of the time, wouldn’t follow your interests.

Update

Ariel Reinitz is a Patent Attorney, quite possibly the most informed voice on this React license issue. Suggested read as follow up.

--

--

Andrea Giammarchi

Web, Mobile, IoT, and all JS things since 00's. Formerly JS engineer at @nokia, @facebook, @twitter.