En la segunda quincena de agosto, apareci贸 una
publicaci贸n en el sitio web de Redis Labs, los desarrolladores del almac茅n de datos del diario de la red del mismo nombre, que dec铆a sobre un cambio en la pol铆tica de licencias del proyecto. En la red, surgi贸 una
opini贸n inmediata de que planeaban hacer de
Redis un producto patentado.
La alarma result贸 ser falsa. Redis seguir谩 siendo un proyecto de c贸digo abierto y continuar谩 siendo distribuido bajo
la licencia BSD . Sin embargo, la compa帽铆a de desarrollo a煤n cambi贸 la licencia de varios m贸dulos de
GNU AGPL a la
cl谩usula Commons .
Entendemos lo que esto significa para Redis y hablamos sobre los problemas de comercializar proyectos de c贸digo abierto en general.
/ PxHere / PDQue paso
Despu茅s del
anuncio en el sitio web de Redis sobre el cambio de licencia, la comunidad comenz贸 a
discutir activamente la situaci贸n . Y en alg煤n momento hubo un malentendido: algunas personas decidieron que Redis estaba cambiando la licencia. Para aclarar una serie de puntos, el cofundador de CTO y Redis Labs, Yiftach Shoolman, escribi贸 una
publicaci贸n oficial en nombre de la compa帽铆a sobre lo que sucedi贸.
Dice que Redis permanece bajo la licencia original - BSD. El orden de licencia se cambia solo para varios m贸dulos de Redis Labs, por ejemplo, RediSearch, Redis Graph, ReJSON, ReBloom y Redis-ML (hay una docena de ellos). Ofrecen funciones avanzadas para usuarios corporativos. Su licencia se cambi贸 de
GNU AGPL a
Apache 2.0 Commons Clause.
De acuerdo con las nuevas condiciones de licencia, cualquiera puede usar estos m贸dulos, observando las
condiciones b谩sicas de la licencia de software libre Apache License 2.0. Sin embargo, ahora est谩 prohibido vender m贸dulos, esto regula la
Cl谩usula Commons .
En otras palabras, si una aplicaci贸n usa la funcionalidad de un m贸dulo o se construye sobre 茅l, entonces no hay restricciones para la venta de dicho servicio. Pero ahora no puedes vender el m贸dulo original.
驴Por qu茅 cambiar la licencia?
Esta decisi贸n es un compromiso en la lucha contra la reventa de los m贸dulos abiertos de Redis. Seg煤n Shulman, varias compa帽铆as externas usan sus soluciones de forma gratuita y las revenden a sus clientes, pero de ninguna manera participan en el desarrollo de la comunidad y el producto.
Una historia similar
ocurre con muchos proyectos abiertos , por ejemplo,
Hadoop y
Spark ; en base a esto, muchas compa帽铆as desarrollan su negocio, haciendo solo modificaciones menores en ellos.
Seg煤n Redis, cambiar la licencia
permitir谩 a los autores garantizar que los desarrolladores o sus patrocinadores recibir谩n dinero de la venta de proyectos.
El problema de comercializar productos abiertos
Obviamente, el dinero para el desarrollo de proyectos de c贸digo abierto no se toma del aire. Algunos de los desarrolladores reciben subsidios del
gobierno , por ejemplo, la
NASA financia el proyecto
code.nasa.gov . Las empresas comerciales est谩n apoyando a alguien. Por ejemplo, Walmart
gasta cantidades significativas en financiar el marco
Hapi.js. El minorista admite el desarrollador de Hapi.js, ya que utiliza su soluci贸n para crear sus propias aplicaciones.
Tambi茅n hay quienes decidieron recibir dinero para desarrollar software de c贸digo abierto a trav茅s de la comercializaci贸n parcial de productos, como Redis Labs. Y no son los 煤nicos que tomaron este camino:
Berkeley DB ,
Asterisk ,
Qt y muchos otros trabajan en este modelo. Sin embargo, las opiniones de la comunidad con respecto a la traducci贸n de proyectos de c贸digo abierto sobre una base paga var铆an ampliamente.
Opiniones en contra
La decisi贸n de Redis de cambiar la licencia para algunos de los m贸dulos que la comunidad se reuni贸 en su mayor铆a negativamente. Si observa los
hilos de Hacker News y los
comentarios de los desarrolladores en blogs tem谩ticos, hay una serie de razones comunes para la insatisfacci贸n.
La primera raz贸n es que cualquier forma de comercializaci贸n es
contraria a los principios del c贸digo abierto. Los panelistas se帽alan que los productos que usan licencias como la Cl谩usula Commons no pueden ser de c贸digo abierto.
Algunos miembros de la comunidad decidieron que Redis Labs intercambiaron valores de c贸digo abierto por dinero. Simon Phipps, presidente de Open Source Initiative (OSI), incluso
describi贸 a Redis Labs como "renunciar a las libertades de software".
La segunda raz贸n: la transferencia de proyectos de c贸digo abierto sobre una base paga amenaza con destruir la comunidad de usuarios, que se ha formado a lo largo de los a帽os. Una historia similar
sucedi贸 con
FoundationDB , cuando en 2015 fue comprada por Apple. La organizaci贸n limit贸 las descargas de un DBMS multimodelo y cerr贸 todos los repositorios en GitHub. Como resultado, la comunidad que se reuni贸 alrededor del proyecto en cinco a帽os comenz贸 a desintegrarse.
El tama帽o de la comunidad es uno de los aspectos clave de la selecci贸n de productos para muchas empresas. Por ejemplo, recientemente en 1cloud elegimos un nuevo sistema de registro para nosotros. La elecci贸n recay贸 en Redis y Logstash, ya que tienen una comunidad extensa, esto significa documentaci贸n detallada, preguntas frecuentes y subprocesos en vivo en StackOverflow.
/ Wikimedia / CCOpiniones para
El socio de Andreessen Horowitz, Peter Levine,
afirma que cualquier proyecto de c贸digo abierto necesita un modelo de negocio. Est谩 claro que sin fondos, se "doblar谩". Los desarrolladores pueden simplemente no tener suficiente dinero para soporte y escalado. Despu茅s de todo, participar en un proyecto para desarrollar software de c贸digo abierto es, de hecho, un segundo trabajo.
Por ejemplo, uno de los residentes de Habr
escribi贸 para s铆 mismo una biblioteca para organizar un servidor de socket web y lo
"carg贸" en GitHub . Poco despu茅s, otros usuarios se interesaron en el proyecto y le pidieron al autor que implementara funcionalidades adicionales. Sin embargo, el desarrollador mismo tuvo suficiente de lo que ya estaba escrito, y no ten铆a ning煤n deseo de desarrollar el proyecto a煤n m谩s.
Quiz谩s comercializar el producto ayudar铆a con su desarrollo. Por ejemplo, tal historia sucedi贸 con
nginx . El autor estuvo involucrado en la creaci贸n de este servidor web en su tiempo libre. Pero ahora, bas谩ndose en su decisi贸n, proporciona servicios comerciales para clientes. En este caso, el c贸digo nginx
permanece abierto .
Las personas que abogan por la comercializaci贸n parcial de productos abiertos tambi茅n se帽alan que sin una financiaci贸n adecuada, el proyecto no podr谩 atraer a buenos desarrolladores.
Por esta raz贸n, en 2009, se
cerr贸 el proyecto Chandler, en virtud del cual desarrollaron un software para administrar el cronograma. La falta de fondos y un peque帽o n煤mero de contribuyentes llevaron al hecho de que el inter茅s en el programa se desvaneci贸 literalmente en un a帽o.
En este caso,
el kernel de Linux se puede usar como un caso positivo. El trabajo de muchos desarrolladores en el proyecto est谩 financiado total o parcialmente por compa帽铆as como RedHat.
Por lo tanto, los desarrolladores dedican su tiempo y energ铆a al proyecto, lo mejoran para el resto y, por lo tanto, extienden su vida. A su vez, esto tiene un efecto positivo en el desarrollo de todo el ecosistema de c贸digo abierto.
Un par de materiales de nuestro blog corporativo: