ARGENTOP2P

Discusion General => El Café de la Esquina => Mensaje publicado por: elrosti en Abril 10, 2008, 20:33:43

Título: Licencias de Software Open Source -- Dudas y Opiniones
Publicado por: elrosti en Abril 10, 2008, 20:33:43
Hace algunos días quería escribir este Post sobre Licencias de software Open Source para aclarar algunas dudas (mías y de otros) y para discutir sobre los pro y los contra de los tipos de licencias Open Source mas conocidos.

Hay que aclarar que no soy experto en el tema y cualquier corrección será bienvenida ya que probablemente pueda equivocarme en varias afirmaciones.

Algo de información:
Hace algunos días descubrí que estaba cometiendo un grave error con respecto a la licencia GPL (http://www.gnu.org/copyleft/gpl.html).

:arrow:Concepto equivocado:
La licencia solo se aplica al correspondiente software en si, es decir, si yo tomo un software con licencia GPL y lo modifico, el resultado también debe estar bajo licencia GPL. En cambio estoy autorizado a usar un software con licencia GPL (al que llamaremos "A") en mi software no GPL (al que llamaremos "B") siempre y cuando no se realicen modificaciones al software "A". Un ejemplo claro son las librerías de programación, si "A" fuera una librería con licencia GPL yo puedo usar esta librería en mi software "B" el cual no tiene licencia GPL

:arrow:Concepto correcto:
Es cortito, si como parte de mi software incluyo otro software con licencia GPL, mi software también tiene que ser publicado con licencia GPL (se le llama "el virus de la libertad"). ej:Existe una librería que permite que mi software pueda leer y mostrar archivos PDF por pantalla y dicha libreria está publicada con una licencia GPL, mi software tambien tiene que estar bajo licencia GPL.

Un caso conocido por muchos puede ser MySQL, si yo uso MySQL como Sistema de Base de Datos para mi software, mi software tambien tiene que estar bajo licencia GPL. La alternativa es comprar una licencia de MySQL ya que dicho motor de base de datos tiene una licencia dual que permite su uso en aplicaciones comerciales que no necesitan estar bajo licencia GPL o dentro de la "Free and Open Source Software License Exception" (http://www.mysql.com/about/legal/licensing/foss-exception.html) el cual es el caso de PHP (Leer mas sobre el conflicto de licencias entre MySQL y PHP aquí (http://www.news.com/2100-7344_3-5173014.html?part=rss&tag=feed&subj=news)).

Otra licencia que que se usa mucho para las librerias es la LGPL (http://www.gnu.org/licenses/lgpl.html), a diferencia de la licencia GPL, la librerias con licencia LGPL pueden ser usadas en software con cualquier tipo de licencia (por ejemplo pueden usarse en software de código cerrado). Hay un documento muy interesante de la Free Software Foundation llamado "Porqué no usar LGPL para su siguiente librería" (http://www.gnu.org/philosophy/why-not-lgpl.html)

Para quien quiera leer sobre otras licencias Open Source, Aquí (http://www.opensource.org/licenses/eclipse-1.0.php) esta la lista completa.

:arrow:Aquí (http://www.gnu.org/licenses/gpl-faq.html#DoesTheGPLAllowMoney) podran encontrar un extenso FAQ sobre la licencia GPL de las cuales quiero rescatar algunos puntos  que me interesan y que me corrijan si me equivoco.

:arrow:¿ Puedo vender software con licencia GPL ?
Si, no hay problema, pero también debes distribuir el código fuente.

:arrow:¿ Si hago modificaciones al software debo publicar dichas modificaciones obligatoriamente?
No, puedes ser contratado para modificar el código fuente de un software con licencia GPL y no publicar las modificaciones,SIdebes entregar el código fuente con las modificaciones a quien te contrata, incluso el contratante tiene la libertad de no publicar las modificaciones (Aunque si lo hace tiene que respetar la licencia GPL, es decir, también distribuir el código fuente modificado) .

:arrow:¿ Puedo usar partes de software con licencia GPL y partes de software con otras licencias y publicar mi software con licencia GPL?
Si, siempre y cuando las demás licencias sean compatibles con la licencia GPL. Puedes ver una lista de la licencias compatibles y no compatibles Aquí (http://www.gnu.org/licenses/license-list.es.html)


-----------------------------------------------------------------------------

Opiniones Personales:
He leeido muchas opiniones encontradas en cuanto a la licencia GPL, algunos dicen que es demasiado restrictiva y "viral", los defensores del software libre dicen que está echa así para defender el software libre y para promover la creación de mas Software Libre.

También me parece correcto las empresas que liberan su software con licencia dual, es decir, sin costo y con licencia GPL para proyectos Open Source, y Licencia comercial para las empresas que deseen utilizar dicho software en aplicaciones comerciales y no desean publicar el código fuente de las mismas. Me parece una forma válida de obtener un rédito económico por su trabajo pero colaborando con la comunidad Open Source y aquellos programadores que no tenemos las posibilidades económicas de adquirir ciertos productos (o no nos es rentable pagar por ellos).

También es una buena forma de insertar un producto en una empresa, por ejemplo desarrollo un sistema con licencia GPL para una empresa determinada y cobro por mi trabajo, luego otra empresa obtiene e instala ese sistema en sus PC gratuitamente (ya que tiene ese derecho) y nos contrata para adaptarlo a sus necesidades(quizas mucho tiempo despues que lo está usando comodamente y le surgen nuevas necesidades), esto rompe el mito de que el programador de software libre trabaja gratis.

También creo que los sistemas con licencias GPL son buenos para el cliente, ya que aunque no sepan nada de programación, tener el código fuente no los ata a un solo programador o empresa ya que si la empresa/programador que le desarrollo un programa a medida deja de dar soporte y actualizaciones al mismo, el cliente puede solicitar los cambios a otro desarrolador y no quedarse con un programa obsoleto (Es algo común por ejemplo en sistemas de facturación viejos para los cuales ya no hay mantenimiento, cuando salen nuevos impuestos o por imposiciones legales las facturas necesitan contener nuevos datos).

Personalmente sufro muchas veces de encontrar bugs en software de código cerrado que perjudican mi trabajo y que no puedo corregir por no tener el código ni tampoco la empresa a la que le pagué por el software me corrige el problema rápidamente(la mayoría de las veces 1 o 2 meses son plazos inaceptables).

Bueno, ahora espero sus opiniones y correcciones.

Saludos.

PD: Capaz después se me ocurren mas cosas para decir  :P.

Título: Re: Licencias de Software Open Source -- Dudas y Opiniones
Publicado por: ZeiterZ en Abril 10, 2008, 21:36:27
Me parece que todo lo que pusiste es correcto.

Lo que sí, algunos programadores se quejarán porque muchos han aprendido a vivir de "curritos" ("protecciones" anticopia que cuando cambian la PC hay que volver a instalar el programa, programas defectuosos que cada tanto dejan de andar y hay que llamar al programador y a él no más porque es el único con el código fuente), ... o de mantener a sus clientes cautivos y temerosos por múltiples caminos.

El software con licencia libre permite un ejercicio profesional ético al programador y dota al cliente de múltiples ventajas... incluso la de poder ser independiente del programador.

Saludos.
Título: Re: Licencias de Software Open Source -- Dudas y Opiniones
Publicado por: jmatias22 en Abril 11, 2008, 17:29:00
Te faltaría el porqué ideológico o filosófico de porque el soft debe ser gpl.
Si no me equivoco, en la peli que vi sobre linux, se decia que las lineas de codigos de programación son como el lenguaje, como un idioma. Y como todo lenguaje pertenece a la humanidad. (por ejemplo no tenemos que pagar ninguna licencia para hablar ingles)

Nunca entendi que es GNU, ¿tiene algo que ver con GPL?
Saludos
Título: Re: Licencias de Software Open Source -- Dudas y Opiniones
Publicado por: DAX en Abril 11, 2008, 20:28:31
Cita de: jmatias22 en Abril 11, 2008, 17:29:00
Nunca entendi que es GNU, ¿tiene algo que ver con GPL?
Saludos

GNU es un acrónimo recursivo (http://es.wikipedia.org/wiki/Acr%C3%B3nimo_recursivo) y significa "GNU is not Unix".

GNU es un proyecto cuyo fin es el desarrollo de un Sistema Operativo completamente libre y por ello, para preservar su condición de libre, se creó la FSF (Free Software Foundation (http://es.wikipedia.org/wiki/Free_Software_Foundation) y, luego, la licencia GPLGPL (http://es.wikipedia.org/wiki/Free_Software_Foundation), basada en el concepto Copyleft (http://es.wikipedia.org/wiki/Copyleft), creado por Richard Stallman (http://es.wikipedia.org/wiki/Richard_Stallman).


Cabe aclarar que, dentro de este proyecto, la batería de utilitarios del sistema fueron desarrollados por Stallman y otros desarrolladores y el núcleo del Sistema Operativo, fué incorporado luego, cuando apareció Linus Torvalds en un grupo de Usenet (creo y si mal no recuerdo) diciendo que había desarrollado un kernel "like Unix" basado en Minix.

Por este motivo, el nombre técnico de linux es GNU Linux, porque esta compuesto por dos piezas, GNU, por un lado (programas y utiliarios) y Linux (el kernel) por otro lado.

Por otro lado, es necesario aclarar también que la FSF y el proyecto GNU están desarrollando su propio kernel (en desarrollo ya cuando aparecio linus con su kernel), que se denomina HURD (http://es.wikipedia.org/wiki/Hurd) pero que es, "filosóficamente" (en términos técnicos de diseño) distinto al kernel Linux.

Si quieren saber mas sobre Hurd, pueden darse una vuelta por la Página oficial de Hurd (http://www.gnu.org/software/hurd/).

SaludOS/2