In the second half of August, a
post appeared on the site of Redis Labs, the developers of the network journal repository of the same name, which spoke about changing the licensing policy of the project. The
opinion that
Redis plans to make a proprietary product was immediately
born on the network.
The anxiety turned out to be false. Redis will remain an open project and will continue to be distributed under
the BSD license . However, the developer still changed the license for a number of modules from the
GNU AGPL to
Commons Clause .
We understand what this means for Redis and talk about the problems of commercialization of open source projects in general.
')
/ Pxhere / pdWhat happened
After the
announcement on the Redis website about changing the license, the community began to
actively discuss the situation . And at some point there was a misunderstanding - some people decided that the license changes Redis. To clarify a number of points, the CTO and co-founder of Redis Labs Yiftach Shoolman (Yiftach Shoolman) wrote an official
post on behalf of the company.
It says that Redis remains under the original license - BSD. The order of licensing changes only for a number of Redis Labs modules, for example, RediSearch, Redis Graph, ReJSON, ReBloom and Redis-ML (there are about a dozen in total). They offer advanced features for corporate users. Their license was changed from the
GNU AGPL to
Apache 2.0 Commons Clause.
According to the new licensing terms, anyone can use these modules, while respecting the
basic license
terms for the free software Apache License 2.0. However, selling modules is now prohibited - this regulates
Commons Clause .
In other words, if the application uses the functionality of the module or is built on top of it, then there are no restrictions on the sale of such a service. But to sell the original module is now impossible.
Why change the license
This solution is a compromise in the fight against the resale of open Redis modules. According
to Shulman, a number of third-party companies use their solutions for free and resell them to their customers, but in no way participate in the development of the community and product.
A similar story
happens with many open source projects , for example,
Hadoop and
Spark - on their basis many companies build their business, making only minor modifications.
As stated in Redis, the license change
will allow the authors to ensure that the developers themselves or their sponsors will receive the money from the sale of projects.
The problem of commercialization of open products
Obviously, the money for the development of open source projects are not taken from the air. Some of the developers receive
government subsidies, for example,
NASA funds the project
code.nasa.gov . Someone is supported by commercial companies. For example, Walmart
spends significant sums to finance the
Hapi.js framework. The retailer supports the developer Hapi.js, as it uses its solution to create its own applications.
There are those who decided to get money for the development of open source software by partially commercializing products, like Redis Labs. And they are not the only ones who went this way -
Berkeley DB ,
Asterisk ,
Qt, and many others work on this model. However, community views on the transfer of open source projects on a paid basis, seriously differ.
Opinions against
The decision of Redis to change the license for part of the modules was largely negative. If you look at the
threads of Hacker News and the
statements of developers in the thematic blogs, you can identify a number of general reasons for dissatisfaction.
The first reason is that any form of commercialization is
contrary to the principles of open source. Panellists note that products that use licenses like Commons Clause do not have the right to be called open.
Some community members decided that Redis Labs traded open source values ​​for money. Simon Phipps, president of the Open Source Initiative (OSI), even
called Redis Labs “software freedom waiver”.
The second reason - the transfer of open projects on a paid basis threatens to destroy the user community, which has been forming over the years. A similar story
happened with
FoundationDB , when Apple bought it in 2015. The organization restricted the downloads of a multi-model DBMS and closed all the repositories on GitHub. As a result, the community that gathered around the project in five years began to disintegrate.
Community size is one of the key aspects of product selection for many companies. For example, we recently chose a new logging system for ourselves in 1cloud . The choice fell on Redis and Logstash, since they have an extensive community - this means detailed documentation, FAQ, and live threads on StackOverflow.
/ Wikimedia / CCOpinions for
Andreessen Horowitz partner Peter Levine (Peter Levine)
states that any open project needs a business model. It is clear that without funding, he "bent." Developers may simply not have enough money to support and scale. After all, participation in a project to develop open software is, in fact, the second job.
For example, one of the residents Habr
wrote for himself a library for organizing a web socket server and
“flooded” it on GitHub . Shortly thereafter, other users became interested in the project and asked the author to implement additional functionality. However, the developer himself had enough of what was already written, and he had no desire to develop the project further.
Perhaps the commercialization of the product would help with its development. For example, such a story happened with
nginx . The author was creating this web server in his free time. But now, on the basis of his decision, he provides a commercial service for clients. At the same time, the nginx code itself
remains open .
People who advocate partial commercialization of open products also note that without proper funding, the project will not attract good developers.
For this reason, in 2009, the Chandler project was
closed , as part of which they developed software for managing the schedule. The lack of funding and a small number of contributors led to the fact that interest in the program died out in just a year.
As a positive case in this case, you can bring
the Linux kernel . The work of many developers on a project is fully or partially funded by companies like RedHat.
Thus, the developers invest their time and energy in the project, make it better for others, and this prolongs his life. In turn, this has a positive effect on the development of the entire open source ecosystem.
A couple of materials from our corporate blog: