Topics

Featured in Development

Alex Bradbury gives an overview of the status and development of RISC-V as it relates to modern operating systems, highlighting major research strands, controversies, and opportunities to get involved.

Featured in Architecture & Design

Will Jones talks about how Habito, the leading digital mortgage broker, benefited from using Haskell, some of the wins and trade-offs that have brought it to where it is today and where it's going next. He also talks about why functional programming is beneficial for large projects, and how it helps especially with migrating the data store.

Featured in AI, ML & Data Engineering

Katharine Jarmul discusses research related to fair-and-private ML algorithms and privacy-preserving models, showing that caring about privacy can help ensure a better model overall and support ethics.

Featured in Culture & Methods

This personal experience report shows that political in-house games and bad corporate culture are not only annoying and a waste of time, but also harm a lot of initiatives for improvement. Whenever we become aware of the blame game, we should address it! DevOps wants to deliver high quality. The willingness to make things better - products, processes, collaboration, and more - is vital.

Featured in DevOps

Service mesh architectures enable a control and observability loop. At the moment, service mesh implementations vary in regard to API and technology, and this shows no signs of slowing down. Building on top of volatile APIs can be hazardous. Here we suggest to use a simplified, workflow-friendly API to shield organization platform code from specific service-mesh implementation details.

Facebook to Relicense React under MIT

Facebook has decided to change the React license from BSD+Patents to MIT to make it possible for companies to include React in Apache projects, and to avoid uncertain relationship with the open source community.

Adam Wolff, an engineering director at Facebook, has announced that a number of projects - React, Jest, Flow, and Immutable.js – will soon start using the more standard MIT License instead of BSD+Patents. The reason provided is "because React is the foundation of a broad ecosystem of open source software for the web, and we don't want to hold back forward progress for nontechnical reasons." While aware that the React’s BSD+Patents license has created "uncertainty" among users of the library, prompting some to select an alternative solution, Facebook does not "expect to win these teams back" but they still hope some will reconsider the issue. The change in license will become effective when React 16 will be released next week.

Regarding other projects, Wolff said that "many of our popular projects will keep the BSD + Patents license for now", while they are "evaluating those projects' licenses too, but each project is different and alternative licensing options will depend on a variety of factors." It seems from this clause that Facebook plans to get rid of the BSD+Patents license entirely, but they need to figure out the best option for each project.

The BSD+Patents is a non-standard 3-clauses BSD license accompanied by a PATENTS file introduced to protect Facebook against litigation. A React user would be revoked the right to use the library or any other Facebook project with the same license if it sues Facebook directly or indirectly for a Patent Assertion, or has a financial interest in such assertion, defined by Facebook as:

A "Patent Assertion" is any lawsuit or other action alleging direct, indirect, or contributory infringement or inducement to infringe any patent, including a cross-claim or counterclaim.

In the beginning this license raised some eyebrows but it did not bother most users until Apache decided to include BSD+Patents on the Category X of licenses not allowed to be included in an Apache product. The list includes among others several GNU licenses, Microsoft Limited Public License, and Amazon Software License (ASL). The main problem is that such licenses are not a "universal donor to downstream projects, and as such introduces limitations surrounding the use of this software." A number of important open source projects have been impacted by Facebook’s license, including Samza, Flink, Marmotta, Kafka and Bahir. Apache allowed companies some time to fix the problem until August 31st, at which point "ANY and ALL usage of these Facebook BSD+patents licensed artifacts are DISALLOWED." More details on the reason behind Apache’s decision can be found on issue RocksDB/LEGAL-303.

Facebook’s plan to switch to a standard license MIT, supported by Apache, completely solves this problem with React and several other projects. It remains to see what happens with the license of other Facebook projects, and how much this license issue has affected how React is perceived by the community.