¿Alguna vez te has planteado qué ocurre si desarrollas un software sobre alguna herramienta de código libre que acarrea licencias restrictivas? Muchas veces los desarrolladores se atienen a las limitaciones de las librerías o framework que usan en sus desarrollos, pero es posible que en caso de litigio les deparen alguna que otra sorpresa.
Esto fue lo que ocurrió el pasado mes de abril cuando la reputada Apache Software Fundation, tras una consulta del equipo de Apache Cassandra y por recomendación de su equipo legal por dudas sobre la licencia de RocksDB, incluyó todo el software con licencia Facebook BSD + Patentes en su lista de licencias prohibidas. El problema fue mayúsculo y causó un gran revuelo en la comunidad porque con esta licencia se distribuye software tan popular como React, Flow, Immutable.js o Jest.
Normalmente, al observar que el software de código libre de Facebook se distribuye bajo licenciada BSD (Berkeley Software Distribution), no se hacía ninguna comprobación más, ya que la licencia BSD es muy habitual y apenas presenta ninguna limitación. De hecho consta tan solo de 3 puntos:
- Las redistribuciones del código fuente deben conservar el aviso de copyright, esta lista de condiciones y el descargo de responsabilidad.
- Las redistribuciones en formato binario deben reproducir el aviso de copyright, esta lista de condiciones y la descarga de responsabilidad en la documentación y/u otros materiales suministrados con la distribución.
- Ni el nombre de la universidad ni los nombres de sus colaboradores pueden usarse para apoyar o promocionar productos derivados de este software sin permiso previo y por escrito.
Originalmente la licencia BSD incluía otro punto más que hacía referencia a la utilización del nombre de la Universidad de Berkeley en publicidad, pero que fue suprimido por inducir a error y que pasaremos por alto.
Duras críticas a Facebook por su licencia
Facebook utilizó la licencia BSD para desarrollar la propia, pero añadió una cláusula adicional en la que se indicaba que, en caso de litigar contra Facebook en materia de patentes, se perdía el derecho de uso del software con esta licencia. Todo ello salvo que se trate de una contra demanda a modo de defensa.
Es decir, si una startup realiza una aplicación web con React, algo muy habitual estos días, y una app con React Native y por algún motivo considera que Facebook está violando alguna de sus patentes y presenta una demanda, automáticamente perdería el derecho de uso de su propio desarrollo.
Obviamente, esto atenta contra los principios más básicos del software libre, algo a lo que Facebook realmente ha dedicado muchos esfuerzos y ha contribuido de forma incalculable, pero entonces, ¿qué sentido tiene esta imposición?
Muchas fueron las voces críticas, la más sonada la de la Apache Software Fundation que, al incluir la licencia Facebook BSD + Patentes en su lista negra, prohibía taxativamente el uso de cualquier software con esta licencia de manera conjunta con software bajo licencia ASF.
Facebook responde con el cambio de la licencia de su software libre a MIT
Como era previsible, la reacción de Facebook no se hizo esperar, y publicó la versión 16 de React, también llamado React Fiber, ya que incorpora sustanciales mejoras de rendimiento y una reescritura completa de todo el núcleo de React, bajo licencia MIT, sin más limitaciones. Y en versiones consecutivas la licencia seguirá siendo MIT.
La licencia MIT es una de las más utilizadas y reconocidas en la comunidad de software libre, por lo que su acogida ha sido muy positiva.
Cabe tener en consideración que la licencia del resto de versiones anteriores sigue siendo la “prohibida” Facebook BSD + patentes, por lo que cualquier desarrollo que no se haya actualizado a la última versión de React (Flow, Jest o Immutable.js) todavía está sujeto a las condiciones reprobadas. En el mundo real, pasar de una versión mayor a otra supone un trabajo extra muy considerable y costoso, por lo que es previsible que no mucho software ya desarrollado dé el paso.
Esto es especialmente significativo en el mundo de las startup porque estar sujeto a estas condiciones tiene limitaciones muy serias a la hora de patentar tu desarrollo, ser adquirido por alguna empresa que no acepte estas condiciones de licencia o te veas en la situación de demandar a Facebook por el uso de patentes.
En cualquier caso, es muy positivo que la comunidad de desarrolladores tome conciencia y éstas prácticas que van en contra del beneficio que plantea el software libre sean paradas y corregidas a tiempo.
Enviar una respuesta
No hay comentarios