2 de Abril, 2010

Las asignación de copyright es perjudicial para los proyectos

Es definitivo. Y además creo que todo el mundo debería leer esta anotación de Michael Meeks antes de firmar ningún documento cediendo sus derechos. Aunque quizás es simplificar demasiado, así que vamos a ver un caso reciente: MySQL.

Para colaborar con MySQL era necesario firmar su MySQL Contributor License Agreement, y ahora es necesario firmar un SCA (no sé si Oracle hará cambios al respecto).

Básicamente ese documento hace que cedas tus derechos sobre tus aportaciones a Sun (en este caso es de forma compartida, sigues siendo dueño tu también, ¡bien!), lo que en la práctica significa que Sun puede hacer lo que quiera con tu contribución, porque le has cedido tus derechos.

Esta es la forma más sencilla de sostener un modelo dual de licencias, en la que se tiene una versión de comunidad con una licencia libre (normalmente la GPL, para asegurarnos que la competencia revierta sus cambios y mejoras en el proyecto), y otra que no tiene porqué serlo en absoluto (con un modelo de software privativo).

Pero, ¿cómo es que puede Sun relicenciar MySQL como le plazca? Porque tiene el copyright de todo el proyecto (si colaboras, firmas la asignación de derechos, ¿recuerdas?), y como dueño del proyecto puede elegir en qué condiciones lo distribuye.

Entonces es cuando Oracle compra Sun, y en el paquete van los derechos sobre MySQL, lo que se traduce en que Oracle, como Sun anteriormente, puede hacer lo que le plazca con aquello que es suyo (aunque aparezcan campañas que intenten impedirlo, porque las intenciones de Oracle pueden no ser las mismas que las de Sun :D).

¿Qué consecuencias tiene esto?

  • En el caso de MySQL no se ve afectado el código ya publicado, porque la licencia GPL no lo permite, (aunque dudaba, la CDDL tampoco lo permite; punto 4.1. New versions). Esto dependerá de la licencia, así que es importante tenerlo claro antes de colaborar.
  • Por el contrario, para siguientes versiones puede desaparecer la edición con licencia libre, si así lo desea al dueño de los derechos.

¿Es consecuencia directa de la asignación de copyright? No necesariamente, pero facilita las cosas en el caso de la GPL.

Si MySQL tuviera n poseedores de derechos sobre distintas partes del proyecto, sería necesario:

  • Que todos los titulares de los derechos estuvieran de acuerdo con el cambio de licencia.
  • Que se eliminara el código de los titulares que no acepten el cambio, ya que de otro modo la GPL obliga a que partes de código combinadas cumplan con la licencia, y solo es posible aplicando la GPL.

Que Oracle decida cerrar MySQL no afecta, como digo, al código ya publicado, pero sin duda es una pérdida importante y un paso atrás que en otros proyectos no puede darse, como por ejemplo en Linux (tiene cientos de titulares de copyright, y además usa la licencia GPL solo versión 2 y no posteriores).

Así que, ante esta situación: ¿firmarías una asignación de copyright para colaborar en un proyecto?

La clave está en si podemos aceptar que el proyecto en un futuro sea cerrado (incluyendo nuestras colaboraciones), y dependiendo de a quién cedamos nuestros derechos (parece poco probable que haya problemas con los proyectos gestionados por la Apache Software Foundation, aunque requieran asignación de copyright, porque es una organización sin ánimo de lucro).

Además habría que valorar el beneficio de lo que conseguimos a cambio del riesgo. Por ejemplo, 880 personas/compañías han aceptado asignar sus derechos colaborando con OpenOffice.org, y me gustaría que fueran más si eso repercute en que OpenOffice.org sea mejor producto ;).

En mi caso, he aceptado ceder mis derechos para colaborar con Cherokee (aunque mis aportaciones hasta el momento son pequeñas, ojo :P), que van a parar al principal desarrollador, que ha montado su empresa para dar servicios alrededor del proyecto.

¿Tendría Cherokee más colaboradores sin esta limitación? Estoy completamente seguro de que sí. ¿Habrán problemas en el futuro con el proyecto? No lo sé, ni voy a adivinar, pero para mucha gente ya será suficiente con que sea posible.

Anotación por Juan J. Martínez, clasificada en: software libre, licencias.

Hay 2 comentarios

Gravatar

Juanjo, tienes razón, en parte.

Si lo miras desde el punto de vista de un usuario o hacker ocasional, está claro que el tema de ceder o compartir los derechos en incómodo y poco deseable.

Sin embargo, desde el punto de vista del desarrollo del producto la cosa cambia. Se ha discutido muchísimo sobre modelos de negocio en Software Libre, y aun a día la respuesta estándar sobre el tema sería el tópico de "vender servicios".

En mi opinión, el problema de base continúan siendo los modelos de negocio. Todo el resto, incluido el tema de los derechos, son simplemente consecuencias de ello. Es fácil de ver, ¿qué empresas pequeñas/medianas conoces que puedan *desarrollar* Software Libre que la gente use? Y hago énfasis en desarrollar. No me refiero a revender, ni a cambiar el theme y meter un CD, ni a trabajar con la administración pública haciendo mashups o desarrollar páginas web. Muy poquitas, ¿verdad?.

A estas alturas entiendo la cesión como algo que puede ayudar a paliar ligeramente el problema de base. Es sólo un workaround que intenta lidiar con una serie de escenario complejos.

Por cierto, ¡¡Enhorabuena por tus contribuciones en Cherokee!! — “I tip my hat to you” :-)

por Alvaro, en 2010-04-02 20:42:40

Gravatar

... por Cherokee, que tiene mucho trabajo detrás (y por delante!).

Es cierto que vivir del Software Libre desarrollando producto es muy complicado, y todo lo que he comentado en la anotación es referente al colaborador, comunidad y usuarios finales; y no me he puesto en el lado de la empresa, que es bastante incómodo por desgracia :(

Si además hablamos de desarrollar el producto que tu quieres, es casi un imposible (ya me considero con suerte, por trabajar en una empresa pro-OSS que además consigue proyectos interesantes de vez en cuando).

No creo tampoco que exista "el modelo(tm)", pero espero que con algún que otro parche en la idea te vaya genial con tu proyecto.

¿Lo notas? ¡Este comentario lo ha servido Cherokee! ;)

por Juanjo, en 2010-04-02 20:57:57

Los comentarios están cerrados: los comentarios se cierran automáticamente una vez pasados 15 días. Si quieres comentar algo acerca de la anotación, puedes hacerlo por e-mail.

Algunas anotaciones relacionadas: