Upload
carlos-gabriel-jimenez
View
215
Download
1
Embed Size (px)
DESCRIPTION
software libre
Citation preview
Republica Bolivariana De Venezuela
Ministerio Del Poder Popular Para La Educación
Instituto Universitario De Tecnologia Industrial “Rodolfo Loero Arismendi”
Punto Fijo-Edo Falcòn
Informatica
Alumno:
Carlos G. Jiménez O.
La Definición de Software Libre
La definición de software libre estipula los criterios que se tienen que cumplir
para que un programa sea considerado libre. De vez en cuando modificamos
esta definición para clarificarla o para resolver problemas sobre cuestiones
delicadas.
Software libre significa que el software respeta la libertad de los usuarios y la
comunidad. En términos generales, los usuarios tienen la libertad de copiar,
distribuir, estudiar, modificar y mejorar el software. Con estas libertades, los
usuarios (tanto individualmente como en forma colectiva) controlan el programa y lo que hace.
Cuando los usuarios no controlan el programa, el programa controla a los
usuarios. El programador controla el programa y, a través del programa,
controla a los usuarios. Un programa que no es libre, llamado «privativo», es
por lo tanto un instrumento de poder injusto.
Por tanto, el «software libre» es una cuestión de libertad, no de precio. Para
entender el concepto, piense en «libre» como en «libre expresión», no como en «barra libre».
Un programa es software libre si los usuarios tienen las cuatro libertades esenciales:
La libertad de ejecutar el programa para cualquier propósito (libertad
0).
La libertad de estudiar cómo funciona el programa, y cambiarlo para
que haga lo que usted quiera (libertad 1). El acceso al código fuente es
una condición necesaria para ello.
La libertad de redistribuir copias para ayudar a su prójimo (libertad
2).
La libertad de distribuir copias de sus versiones modificadas a terceros
(libertad 3). Esto le permite ofrecer a toda la comunidad la
oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.
Un programa es software libre si los usuarios tienen todas esas libertades.
Por tanto, usted debe ser libre de redistribuir copias, tanto con como sin
modificaciones, ya sea gratuitamente o cobrando una tarifa por la
distribución, a cualquiera en cualquier parte. El ser libre de hacer estas cosas significa, entre otras cosas, que no tiene que pedir ni pagar el permiso.
También debe tener la libertad de hacer modificaciones y usarlas en privado
para su propio trabajo o pasatiempo, sin siquiera mencionar que existen. Si
publica sus cambios, no debe estar obligado a notificarlo a nadie en particular, ni de ninguna manera en particular.
La libertad de ejecutar el programa significa que cualquier tipo de persona u
organización es libre de usarlo en cualquier tipo de sistema de computación,
para cualquier tipo de trabajo y finalidad, sin que exista obligación alguna de
comunicarlo al programador ni a ninguna otra entidad específica. En esta
libertad, lo que importa es el propósito de los usuarios, no el de los
programadores. Usted como usuario es libre de ejecutar el programa para
alcanzar sus propósitos, y si lo distribuye a otra persona, también esa persona
será libre de ejecutarlo para lo que necesite; usted no tiene derecho a imponerle sus propios objetivos.
La libertad de redistribuir copias debe incluir las formas binarias o
ejecutables del programa, así como el código fuente, tanto para las versiones
modificadas como para las no lo estén. (Distribuir programas en forma de
ejecutables es necesario para que los sistemas operativos libres se puedan
instalar fácilmente). Resulta aceptable si no existe un modo de producir una
formato binario o ejecutable para un programa específico, dado que algunos
lenguajes no incorporan esa característica, pero debe tener la libertad de
redistribuir dichos formatos si encontrara o programara una forma de
hacerlo.
Para que la libertad 1 y 3 de realizar cambios y publicar las versiones
modificadas tengan sentido, usted debe tener acceso al código fuente del
programa. Por consiguiente, el acceso al código fuente es una condición
necesaria para el software libre. El «código fuente» ofuscado no es código
fuente real, y no cuenta como código fuente.
La libertad 1 incluye la libertad de usar su versión modificada en lugar de la
original. Si el programa se entrega con un producto diseñado para ejecutar
versiones modificadas de terceros, pero rechaza ejecutar las suyas, una
práctica conocida como «tivoización» [«tivoization»] o «arranque seguro»
[«lockdown»] (en la terminología perversa de los que la practican); la
libertad 1 se convierte más en una ficción teórica que en una libertad
práctica. Esto no es suficiente. En otras palabras, estos binarios no son
software libre, incluso si se compilaron desde un código fuente que es libre.
Una manera importante de modificar el programa es agregándole subrutinas
y módulos libres ya disponibles. Si la licencia del programa especifica que no
se pueden añadir módulos que ya existen y que están bajo una licencia
apropiada, por ejemplo si requiere que usted sea el titular de los derechos de
autor del código que desea añadir, entonces se trata de una licencia demasiado restrictiva como para considerarla libre.
La libertad 3 incluye la libertad de publicar sus versiones modificadas como
software libre. Una licencia libre también puede permitir otras formas de
publicarlas; en otras palabras, no tiene que ser una licencia de copyleft. No
obstante, una licencia que requiera que las versiones modificadas no sean
libres, no se puede considerar libre.
Para que estas libertades sean reales, deben ser permanentes e irrevocables
siempre que usted no cometa ningún error; si el programador del software
tiene el poder de revocar la licencia, o de añadir restricciones a las
condiciones de uso en forma retroactiva, sin que haya habido ninguna acción de parte del usuario que lo justifique, el software no es libre.
Sin embargo, ciertos tipos de reglas sobre la manera de distribuir software
libre son aceptables, cuando no entran en conflicto con las libertades
principales. Por ejemplo, el copyleft (definido muy resumidamente) es la regla
en base a la cual, cuando redistribuye el programa, no puede agregar
restricciones para denegar a los demás las libertades principales. Esta regla
no entra en conflicto con las libertades principales, más bien las protege.
«Software libre» no significa que «no es comercial». Un programa libre debe
estar disponible para el uso comercial, la programación comercial y la
distribución comercial. La programación comercial de software libre ya no es
inusual; tal software libre comercial es muy importante. Puede haber pagado
dinero para obtener copias de software libre, o puede haber obtenido copias
sin costo. Pero sin tener en cuenta cómo obtuvo sus copias, siempre tiene la libertad de copiar y modificar el software, incluso de vender copias.
Si una modificación constituye o no una mejora, es un asunto subjetivo. Si su
derecho a modificar un programa se limita, básicamente, a modificaciones
que alguna otra persona considera una mejora, el programa no es libre.
No obstante, eventuales reglas sobre cómo empaquetar una versión
modificada son aceptables si no limitan substancialmente su libertad para
publicar versiones modificadas, o su libertad para hacer y usar versiones
modificadas en privado. Así, es aceptable que una licencia le obligue a
cambiar el nombre de la version modificada, eliminar el logotipo o identificar
sus modificaciones como suyas. Son aceptables siempre y cuando esas
obligaciones no sean tan agobiantes que le dificulten la publicación de sus
modificaciones. Como ya está realizando otras modificaciones al programa, no le supondrá un problema hacer algunas más.
Un problema particular se presenta cuando la licencia requiere que a un
programa se le cambie el nombre con el cual será invocado por otros
programas. De hecho este requisito dificulta la publicación de la versión
modificada para reemplazar al original cuando sea invocado por esos otros
programas. Este tipo de requisitos es aceptable únicamente cuando exista un
instrumento adecuado para la asignación de alias que permita especificar el nombre del programa original como un alias de la versión modificada.
Las normas del tipo «si pone a disposición su versión de este modo, también
debe hacerlo de este otro modo» también pueden ser, bajo la misma
condición, admisibles. Un ejemplo de una norma admisible sería alguna que
requiera que, si usted ha distribuido una versión modificada y uno de los
programadores anteriores le solicita una copia, usted deba enviársela (tenga
en cuenta que tal norma le sigue permitiendo optar por distribuir o no
distribuir su versión). Las normas que obligan a suministrar el código fuente a los usuarios de las versiones publicadas también son admisibles.
En el proyecto GNU, usamos copyleft para proteger legalmente estas
libertades para todos. Pero también existe software libre sin copyleft.
Creemos que existen razones importantes por las que es mejor usar copyleft,
pero si su programa es software libre sin copyleft, sigue siendo ético de todos
modos. (Véase en categorías del software libre una descripción de la relación
que existe entre «software libre», «software con copyleft» y otros tipos de software libre).
En algunos casos las regulaciones de control de exportación y las sanciones
comerciales pueden limitar sus libertades de distribuir copias de programas a
nivel internacional. Los desarrolladores de software no tienen el poder de
eliminar o pasar por alto estas restricciones, pero lo que pueden y deben
hacer es rechazar imponerlas como condiciones para el uso del programa. De
este modo, las restricciones no afectarán las actividades ni a las personas
fuera de las jurisdicciones de dichos gobiernos. Por tanto, las licencias de
software libre no deben requerir la obediencia a ninguna regulación de exportaciones como condición de cualquiera de las libertades esenciales.
La mayoría de las licencias de software libre están basadas en el copyright, y
existen límites en los tipos de requisitos que se pueden imponer a través del
copyright. Si una licencia basada en el copyright respeta la libertad en las
formas antes mencionadas, es poco probable que surja otro tipo de problema
que no hayamos anticipado (a pesar de que esto ocurre ocasionalmente). Sin
embargo, algunas licencias de software libre están basadas en contratos, y los
contratos pueden imponer un rango mucho más grande de restricciones. Esto
significa que existen muchas maneras posibles de que tal licencia sea inaceptablemente restrictiva y que no sea libre.
Nos resulta imposible enumerar todas las formas en las que eso puede pasar.
Si una licencia basada en un contrato restringe al usuario de un modo que no
se puede hacer con las licencias basadas en el copyright, y que no está
mencionado aquí como legítimo, tendremos que analizar el caso, y probablemente concluyamos que no es libre.
Cuando se habla de software libre, es mejor evitar usar términos como
«regalar» o «gratuito», porque dichos términos implican que el asunto es el
precio, no la libertad. Algunos términos comunes como «piratería» implican
opiniones con las que esperamos no concuerde. Véase un análisis sobre el uso
de esos términos en nuestro artículo palabras y frases confusas que vale la pena evitar.
Por último, tenga en cuenta que para interpretar criterios tales como los que
se establecen en esta definición de software libre, se hace necesario un
cuidadoso análisis. Para decidir si una licencia de software específica es una
licencia de software libre, la evaluamos en base a estos criterios para
determinar si concuerda tanto con el espíritu de los mismos como con la
terminología precisa. Si una licencia incluye restricciones inaceptables, la
rechazamos, aún cuando no hubiéramos anticipado el problema en estos
criterios. Algunas veces, los requisitos de una licencia revelan una cuestión
que hace necesaria una reflexión más profunda, incluyendo la discusión con
un abogado, antes de que podamos decidir si el requisito es aceptable.
Cuando llegamos a una conclusión sobre una nueva cuestión, solemos
actualizar estos criterios para que resulte más fácil ver por qué una cierta
licencia puede o no ser calificada como libre.
Más allá del software
Los manuales de software deben ser libres por las mismas razones que el
software debe ser libre, y porque de hecho los manuales son parte del
software.
También tiene sentido aplicar los mismos argumentos a otros tipos de obras
de uso práctico; es decir, obras que incorporen conocimiento útil, tal como publicaciones educativas y de referencia.
¿Código abierto?
Otro grupo ha comenzado a usar el término «código abierto» (del inglés
«open source») que significa algo parecido (pero no idéntico) a «software
libre». Preferimos el término «software libre» porque una vez que ya se sabe
que se refiere a la libertad y no al precio, evoca la idea de libertad. La palabra «abierto» nunca se refiere a la libertad.
Historial
De vez en cuando modificamos esta definición de software libre. Esta es la
lista de los cambios, con enlaces a páginas que muestran exactamente lo que se ha modificado.
Version 1.111: Clarificación de la versión 1.77; se especifica que
únicamente las restricciones retroactivas son inaceptables. Los
titulares del copyright siempre pueden conceder permisos adicionales
para utilizar la obra publicándola paralelamente con una modalidad
diferente.
Versión 1.105: Modificación del breve comentario sobre la libertad 1
(que ya se había introducido en la versión 1.80) para expresar que
dicha libertad significa que el usuario puede usar una versión
modificada por él mismo para realizar sus tareas de computación.
Version 1.92: Aclarar que el código fuente ofuscado no se puede
considerar código fuente.
Version 1.90: Aclarar que la libertad 3 significa el derecho a distribuir
copias de sus propias versiones modificadas o mejoradas. No el
derecho de participar en el proyecto de otro.
Version 1.89: La libertad 3 incluye el derecho a publicar versiones
modificadas como software libre.
Versión 1.80: La primera libertad debe ser práctica, no sólo teórica.
Por ejemplo, nada de tivoización.
Versión 1.77: Aclarar que todos los cambios retroactivos a la licencia
son inaceptables, aún cuando no representan un reemplazo completo.
Versión 1.74: Cuatro aclaraciones sobre puntos no del todo explícitos,
o que se expresan en algunos casos pero no en todos están definidos:
o «Mejoras» no significa que la licencia puede limitar
sustancialmente el tipo de versiones modificadas que usted puede
publicar. La libertad 3 incluye la distribución de versiones
modificadas, no sólo de los cambios.
o El derecho a fusionar módulos existentes se refiere a aquellos
que estén debidamente licenciados.
o Expresar de manera explícita la conclusión del punto sobre los
controles de exportación.
o Imponer un cambio de licencia constituye una revocación de la
antigua licencia.
Versión 1.57: Agregada la sección «Más allá del software».
Versión 1.46: Aclarar de quién es el propósito que importa en la
libertad para ejecutar el programa para cualquier propósito.
Versión 1.41: Expresar más claramente el punto sobre licencias
basadas en contratos.
Versión 1.40: Explicar que una licencia libre debe permitirle usar otro
software libre disponible para hacer sus modificaciones.
Versión 1.39: Aclarar que es aceptable que una licencia requiera la
provisión del código fuente para las versiones del software que se
pongan a disposición del público.
Versión 1.31: Es aceptable para una licencia requerirle que se
identifique como el autor de las modificaciones. Otras clarificaciones
menores en el texto.
Versión 1.23: Mencionar posibles problemas con las licencias basadas
en contratos.
Versión 1.16: Explicar por qué la distribución de los binarios es
importante.
Versión 1.11: Una licencia libre puede requerirle que envíe una copia de las versiones modificadas al autor.
Hay brechas entre los números de versión mencionados anteriormente porque
existen otros cambios que se han realizado en esta página pero que no atañen
la definición misma. La lista completa de los cambios aportados a esta página
puede consultarse mediante la interfaz cvsweb
Historia
Richard Matthew Stallman, creador del concepto de software libre y
fundador de la Free Software Foundation.
Entre los años 1960 y 1970, el software no era considerado un producto
sino un añadido que los vendedores de las grandes computadoras de la
época (las mainframes) aportaban a sus clientes para que éstos pudieran
usarlos. En dicha cultura, era común que los programadores y
desarrolladores de software compartieran libremente sus programas unos
con otros. Este comportamiento era particularmente habitual en algunos de
los mayores grupos de usuarios de la época, como DECUS (grupo de
usuarios de computadoras DEC). A finales de la década de 1970, las
compañías iniciaron el hábito de imponer restricciones a los usuarios, con
el uso de acuerdos de licencia.
En 1971, cuando la informática todavía no había sufrido su gran boom, las
personas que hacían uso de ella, en ámbitos universitarios y empresariales, creaban y compartían el software sin ningún tipo de restricciones.
Con la llegada de los años 1980 la situación empezó a cambiar. Las
computadoras más modernas comenzaban a utilizar sistemas operativos
privativos, forzando a los usuarios a aceptar condiciones restrictivas que impedían realizar modificaciones a dicho software.
En caso de que algún usuario o programador encontrase algún error en la
aplicación, lo único que podía hacer era darlo a conocer a la empresa
desarrolladora para que ésta lo solucionara. Aunque el programador
estuviese capacitado para solucionar el problema y lo desease hacer sin pedir nada a cambio, el contrato le impedía que modificase el software.
El mismo Richard Matthew Stallman cuenta que por aquellos años, en el
laboratorio donde trabajaba, habían recibido una impresora donada por una
empresa externa. El dispositivo, que era utilizado en red por todos los
trabajadores, parecía no funcionar a la perfección, dado que cada cierto
tiempo el papel se atascaba. Como agravante, no se generaba ningún aviso que se enviase por red e informase a los usuarios de la situación.
La pérdida de tiempo era constante, ya que en ocasiones, los trabajadores
enviaban por red sus trabajos a imprimir y al ir a buscarlos se encontraban la
impresora atascada y una cola enorme de trabajos pendientes. Richard
Stallman decidió arreglar el problema, e implementar el envío de un aviso por
red cuando la impresora se bloqueara. Para ello necesitaba tener acceso al
código fuente de los controladores de la impresora. Pidió a la empresa
propietaria de la impresora lo que necesitaba, comentando, sin pedir nada a
cambio, qué era lo que pretendía realizar. La empresa se negó a entregarle el
código fuente. En ese preciso instante, Stallman se vio en una encrucijada:
debía elegir entre aceptar el nuevo software propietario firmando acuerdos de
no revelación y acabar desarrollando más software propietario con licencias
restrictivas, que a su vez deberían ser más adelante aceptadas por sus propios colegas.
Con este antecedente, en 1984, Richard Stallman comenzó a trabajar en el
proyecto GNU, y un año más tarde fundó la Free Software Foundation (FSF).
Stallman introdujo la definición de software libre y el concepto de "copyleft",
que desarrolló para otorgar libertad a los usuarios y para restringir las
posibilidades de apropiación del software.[1]
Libertades del software libre
De acuerdo con tal definición, un software es "libre" cuando garantiza las
siguientes libertades:[2]
Libertad Descripción
0 la libertad de usar el programa, con cualquier propósito.
1 la libertad de estudiar cómo funciona el programa y modificarlo,
adaptándolo a tus necesidades.
2 la libertad de distribuir copias del programa, con lo cual puedes
ayudar a tu prójimo.
3 la libertad de mejorar el programa y hacer públicas esas mejoras a
los demás, de modo que toda la comunidad se beneficie.
Las libertades 1 y 3 requieren acceso al código fuente porque estudiar y
modificar software sin su código fuente es muy poco viable.
Ciertos teóricos usan este cuarto punto (libertad 3) para justificar
parcialmente las limitaciones impuestas por la licencia GNU GPL frente a
otras licencias de software libre (ver Licencias GPL). Sin embargo el sentido
original es más libre, abierto y menos restrictivo que el que le otorga la
propia situación de incompatibilidad, que podría ser resuelta en la próxima
versión 3.0 de la licencia GNU GPL, causa en estos momentos graves
perjuicios a la comunidad de programadores de software libre, que muchas
veces no pueden reutilizar o mezclar códigos de dos licencias distintas, pese a que las libertades teóricamente lo deberían permitir.
Tanto la Open Source Initiative[3]
como la Free Software Foundation[4]
mantienen en sus webs oficiales listados de las licencias de software libre que
aprueban.
El término software no libre se emplea para referirse al software distribuido
bajo una licencia de software más restrictiva que no garantiza estas cuatro
libertades. Las leyes de la propiedad intelectual reservan la mayoría de los
derechos de modificación, duplicación y redistribución para el dueño del
copyright; el software dispuesto bajo una licencia de software libre rescinde específicamente la mayoría de estos derechos reservados.
La definición de software libre no contempla el asunto del precio; un eslogan
frecuentemente usado es "libre como en libertad, no como en cerveza gratis"
o en inglés "Free as in freedom, not as in free beer" (aludiendo a la
ambigüedad del término inglés "free"), y es habitual ver a la venta CD de
software libre como distribuciones Linux. Sin embargo, en esta situación, el
comprador del CD tiene el derecho de copiarlo y redistribuirlo. El software
gratis puede incluir restricciones que no se adaptan a la definición de
software libre —por ejemplo, puede no incluir el código fuente, puede
prohibir explícitamente a los distribuidores recibir una compensación a
cambio, etc—.
Para evitar la confusión, algunas personas utilizan los términos "libre"
(software libre) y "gratis" (software gratis) para evitar la ambigüedad de la
palabra inglesa "free". Sin embargo, estos términos alternativos son usados
únicamente dentro del movimiento del software libre, aunque están
extendiéndose lentamente hacia el resto del mundo. Otros defienden el uso del
término open source software (software de código abierto). La principal
diferencia entre los términos "open source" y "free software" es que éste
último tiene en cuenta los aspectos éticos y filosóficos de la libertad, mientras que el "open source" se basa únicamente en los aspectos técnicos.
En un intento por unir los mencionados términos que se refieren a conceptos
semejantes, se está extendiendo el uso de la palabra "FLOSS" con el
significado de free/libre and open source software e, indirectamente, también
a la comunidad que lo produce y apoya.
Tipos de licencias
Una licencia es aquella autorización formal con carácter contractual que un
autor de un software da a un interesado para ejercer "actos de explotación
legales". Pueden existir tantas licencias como acuerdos concretos se den entre
el autor y el licenciatario. Desde el punto de vista del software libre, existen
distintas variantes del concepto o grupos de licencias:
Licencias GPL
Una de las más utilizadas es la Licencia Pública General de GNU (GNU
GPL). El autor conserva los derechos de autor (copyright), y permite la
redistribución y modificación bajo términos diseñados para asegurarse de
que todas las versiones modificadas del software permanecen bajo los
términos más restrictivos de la propia GNU GPL. Esto hace que sea
imposible crear un producto con partes no licenciadas GPL: el conjunto tiene que ser GPL.
Es decir, la licencia GNU GPL posibilita la modificación y redistribución del
software, pero únicamente bajo esa misma licencia. Y añade que si se reutiliza
en un mismo programa código "A" licenciado bajo licencia GNU GPL y
código "B" licenciado bajo otro tipo de licencia libre, el código final "C",
independientemente de la cantidad y calidad de cada uno de los códigos "A" y "B", debe estar bajo la licencia GNU GPL.
En la práctica esto hace que las licencias de software libre se dividan en dos
grandes grupos, aquellas que pueden ser mezcladas con código licenciado
bajo GNU GPL (y que inevitablemente desaparecerán en el proceso, al ser el
código resultante licenciado bajo GNU GPL) y las que no lo permiten al
incluir mayores u otros requisitos que no contemplan ni admiten la GNU GPL
y que por lo tanto no pueden ser enlazadas ni mezcladas con código gobernado por la licencia GNU GPL.
En el sitio web oficial de GNU hay una lista de licencias que cumplen las condiciones impuestas por la GNU GPL y otras que no.
[5]
Aproximadamente el 60% del software licenciado como software libre emplea una licencia GPL.
Licencias AGPL
La Licencia Pública General de Affero (en inglés Affero General Public
License, también Affero GPL o AGPL) es una licencia copyleft derivada de la
Licencia Pública General de GNU diseñada específicamente para asegurar la
cooperación con la comunidad en el caso de software que corra en servidores de red.
La Affero GPL es íntegramente una GNU GPL con una cláusula nueva que
añade la obligación de distribuir el software si éste se ejecuta para ofrecer servicios a través de una red de ordenadores.
La Free Software Foundation recomienda que el uso de la GNU AGPLv3 sea considerado para cualquier software que usualmente corra sobre una red.
[6]
Licencias estilo BSD
Llamadas así porque se utilizan en gran cantidad de software distribuido
junto a los sistemas operativos BSD. El autor, bajo tales licencias, mantiene
la protección de copyright únicamente para la renuncia de garantía y para
requerir la adecuada atribución de la autoría en trabajos derivados, pero
permite la libre redistribución y modificación, incluso si dichos trabajos
tienen propietario. Son muy permisivas, tanto que son fácilmente absorbidas
al ser mezcladas con la licencia GNU GPL con quienes son compatibles.
Puede argumentarse que esta licencia asegura “verdadero” software libre, en
el sentido que el usuario tiene libertad ilimitada con respecto al software, y
que puede decidir incluso redistribuirlo como no libre. Otras opiniones están
orientadas a destacar que este tipo de licencia no contribuye al desarrollo de
más software libre (normalmente utilizando la siguiente analogía: "una
licencia BSD es más libre que una GPL si y sólo si se opina también que un
país que permita la esclavitud es más libre que otro que no la permite").
Licencias estilo MPL y derivadas
Esta licencia es de Software Libre y tiene un gran valor porque fue el
instrumento que empleó Netscape Communications Corp. para liberar su
Netscape Communicator 4.0 y empezar ese proyecto tan importante para el
mundo del Software Libre: Mozilla. Se utilizan en gran cantidad de productos
de software libre de uso cotidiano en todo tipo de sistemas operativos. La
MPL es Software Libre y promueve eficazmente la colaboración evitando el
efecto "viral" de la GPL (si usas código licenciado GPL, tu desarrollo final
tiene que estar licenciado GPL). Desde un punto de vista del desarrollador la
GPL presenta un inconveniente en este punto, y lamentablemente mucha gente
se cierra en banda ante el uso de dicho código. No obstante la MPL no es tan
excesivamente permisiva como las licencias tipo BSD. Estas licencias son
denominadas de copyleft débil. La NPL (luego la MPL) fue la primera
licencia nueva después de muchos años, que se encargaba de algunos puntos
que no fueron tenidos en cuenta por las licencias BSD y GNU. En el espectro
de las licencias de software libre se la puede considerar adyacente a la licencia estilo BSD, pero perfeccionada.
Copyleft
Hay que hacer constar que el titular de los derechos de autor (copyright) de
un software bajo licencia copyleft puede también realizar una versión
modificada bajo su copyright original, y venderla bajo cualquier licencia que
desee, además de distribuir la versión original como software libre. Esta
técnica ha sido usada como un modelo de negocio por una serie de empresas
que realizan software libre (por ejemplo MySQL); esta práctica no restringe ninguno de los derechos otorgados a los usuarios de la versión copyleft.
En España, toda obra derivada está tan protegida como una original, siempre
que la obra derivada parta de una autorización contractual con el autor. En
el caso genérico de que el autor retire las licencias "copyleft", no afectaría de
ningún modo a los productos derivados anteriores a esa retirada, ya que no
tiene efecto retroactivo. En términos legales, el autor no tiene derecho a
retirar el permiso de una licencia en vigencia. Si así sucediera, el conflicto entre las partes se resolvería en un pleito convencional.
Comparación con el software de código abierto
Mapa conceptual del software libre y de código abierto.
Aunque en la práctica el software de código abierto y el software libre
comparten muchas de sus licencias, la Free Software Foundation opina que el
movimiento del software de código abierto es filosóficamente diferente del
movimiento del software libre.[7]
Apareció en 1998 con un grupo de personas,
entre los que cabe destacar a Eric S. Raymond y Bruce Perens, que formaron
la Open Source Initiative (OSI). Ellos buscaban darle mayor relevancia a los
beneficios prácticos del compartir el código fuente, e interesar a las
principales casas de software y otras empresas de la industria de la alta
tecnología en el concepto. Por otro lado, la Free Software Foundation y
Richard Stallman prefieren plantear el asunto en términos éticos empleando el término "software libre".
Los defensores del término "código abierto", en inglés open source, afirman
que éste evita la ambigüedad del término en ese idioma que es free en free
software. El término "código abierto" fue acuñado por Christine Peterson del
think tank Foresight Institute, y se registró para actuar como marca
registrada el término en inglés para los productos de software libre.
Mucha gente reconoce el beneficio cualitativo del proceso de desarrollo de
software cuando los desarrolladores pueden usar, modificar y redistribuir el
código fuente de un programa. (Véase también La Catedral y el Bazar). El
movimiento del software libre hace especial énfasis en los aspectos morales o
éticos del software, viendo la excelencia técnica como un producto secundario
de su estándar ético. El movimiento de código abierto ve la excelencia técnica
como el objetivo prioritario, siendo la compartición del código fuente un
medio para dicho fin. Por dicho motivo, la FSF se distancia tanto del
movimiento de código abierto como del término "Código Abierto" (en inglés
Open Source).
Puesto que la OSI sólo aprueba las licencias que se ajustan a la Open Source
Definition (definición de código abierto), la mayoría de la gente lo interpreta
como un esquema de distribución, e intercambia libremente "código abierto"
con "software libre". Aún cuando existen importantes diferencias filosóficas
entre ambos términos, especialmente en términos de las motivaciones para el
desarrollo y el uso de tal software, raramente suelen tener impacto en el
proceso de colaboración.
Aunque el término "código abierto" elimina la ambigüedad de libertad frente
a precio (en el caso del inglés), introduce una nueva: entre los programas que
se ajustan a la definición de código abierto, que dan a los usuarios la libertad
de mejorarlos, y los programas que simplemente tiene el código fuente
disponible, posiblemente con fuertes restricciones sobre el uso de dicho
código fuente. Mucha gente cree que cualquier software que tenga el código
fuente disponible es de código abierto, puesto que lo pueden manipular (un
ejemplo de este tipo de software sería el popular paquete de software gratuito
Graphviz, inicialmente no libre pero que incluía el código fuente, aunque
luego AT&T le cambió la licencia). Sin embargo, mucho de este software no
da a sus usuarios la libertad de distribuir sus modificaciones, restringe el uso comercial, o en general restringe los derechos de los usuarios.
Implicaciones económico-políticas
Una vez que un producto de software libre ha empezado a circular,
rápidamente está disponible a un costo muy bajo. Al mismo tiempo, su
utilidad no decrece. El software, en general, podría ser considerado un bien
de uso inagotable, tomando en cuenta que su costo marginal es pequeñísimo y
que no es un bien sujeto a rivalidad (la posesión del bien por un agente
económico no impide que otro lo posea).
Puesto que el software libre permite el libre uso, modificación y
redistribución, a menudo encuentra un hogar entre usuarios para los cuales el
coste del software no libre es a veces prohibitivo, o como alternativa a la
piratería. También es sencillo modificarlo localmente, lo que permite que
sean posibles los esfuerzos de traducción a idiomas que no son necesariamente rentables comercialmente.
La mayoría del software libre se produce por equipos internacionales que
cooperan a través de la libre asociación. Los equipos están típicamente
compuestos por individuos con una amplia variedad de motivaciones, y
pueden provenir tanto del sector privado, del sector voluntario o del sector
público. Existen muchas posturas acerca de la relación entre el software libre y el actual sistema político-económico:
Algunos consideran el software libre como un competidor contra el
centralismo en empresas y gobiernos, una forma de orden espontáneo o
de anarquismo práctico.
Algunos consideran el software libre como una forma de trabajo
colaborativo en un modelo de mercado, tal como se había planteado el
cooperativismo.
Algunos comparan el software libre a una economía del regalo, donde
el valor de una persona está basado en lo que ésta da a los demás, sin
que incurra valor monetario formal de por medio.
Grupos como Oekonux e Hipatia consideran que todo debería
producirse de esta forma y que este modelo de producción no se limita
a reemplazar el modelo no libre de desarrollo del software. La
cooperación basada en la libre asociación puede usarse y se usa para
otros propósitos (tales como escribir enciclopedias, por ejemplo).
Hay proyectos de desarrollo con impulso gubernamental que utilizan
software libre, así como en proyectos de voluntariado en países en vías de desarrollo.
Las implicaciones políticas y económicas del software libre, o su afinidad con
el antiautoritarismo, es discutida. Mientras para unos estas implicaciones son
notorias y representan un factor importante a tomarse en cuenta, para otros si bien podría existir una leve relación, no tiene suficiente relevancia.
Modelo de negocio
El negocio detrás del software libre se caracteriza por la oferta de servicios
adicionales al software como: la personalización y/o instalación del mismo,
soporte técnico, donaciones, patrocinios o como un elemento de
responsabilidad social corporativa;[9]
en contraposición al modelo de negocio basado en licencias predominante en el software de código cerrado.
[10]
Seguridad relativa
Existe una cierta controversia sobre la seguridad del software libre frente al
software no libre (siendo uno de los mayores asuntos la seguridad por
oscuridad). Un método usado de forma habitual para determinar la seguridad
relativa de los productos es determinar cuántos fallos de seguridad no
parcheados existen en cada uno de los productos involucrados. Por lo general
los usuarios de este método recomiendan que cuando un producto no
proporcione un método de parchear los fallos de seguridad, no se use dicho producto, al menos hasta que no esté disponible un arreglo.
Software libre en la Administración Pública.
Existe una serie de países en los cuales, sus administraciones públicas, han
mostrado apoyo al software libre, sea migrando total o parcialmente sus
servidores y sistemas de escritorio, sea subvencionándolo. Como ejemplos de
ello se tiene a Alemania, Argentina, Brasil, Cuba, Chile, China, Ecuador[19]
España, Francia, México, República Dominicana y Venezuela.
Además de lo anterior, la Administración Pública tiene una cierta función de
escaparate y/o guía de la industria que la hace tener un gran impacto, que
debería dirigirse a la creación de un tejido tecnológico generador de riqueza
nacional. Ésta puede crearse fomentando empresas, cuyo negocio sea en
parte el desarrollo de nuevo software libre para la Administración, el mantenimiento y la adaptación del software existente.
En España en el año 2009, el Centro Nacional de Referencia de Aplicación de
las TIC basadas en Fuentes Abiertas (CENATIC), elaboró un informe junto a
la Universidad Rey Juan Carlos (Grupo GsyC/LibreSoft) y Telefónica I+D,
con el fin de analizar el estado en que se encuentra el proceso de
implantación del software de fuentes abiertas en la Administración Pública española.
En México el Software Libre nació en las universidades y los centros de
investigación. Es por eso que, desde hace tres décadas, los estudiantes y los profesores usan software libre para fines didácticos y de investigación.
Las universidades suelen optar por el uso de software libre en vez de utilizar
software privativo porque satisface de una mejor manera sus necesidades de
cómputo, dada su naturaleza de apertura del código y la libertad de
compartir los resultados obtenidos. De forma colateral, no se tienen gastos adicionales derivados del pago de licenciamientos.
El software libre no se limita a ser gratuito, porque también tiene un valor
social fundamental, puesto que la única restricción que tiene es la de
conservarse libre, lo cual quiere decir que puede ser explorado, verificado,
reproducido y extendido en todas sus capacidades para beneficio de todos, de forma muy similar a la naturaleza de la producción de la ciencia.
Computólogos, físicos, químicos, matemáticos y otros profesionistas y
científicos utilizan software libre como herramienta de investigación y
creación. Un claro ejemplo de ello es la llamada Delta Metropolitana, que es
una red de supercomputadoras que están en varios puntos de la Ciudad de
México, en el CINESTAV, el IPN, la UAM y la UNAM. Esa red de
supercómputo utiliza software libre para consolidar sus recursos, hacer
investigación y generar conocimiento.
Motivaciones del software libre
La motivación ética, abanderada por la Free Software Foundation,
heredera de la cultura hacker, y partidaria del apelativo libre, que
argumenta que el software es conocimiento y debe poderse difundir sin
trabas. Su ocultación es una actitud antisocial y la posibilidad de
modificar programas es una forma de libertad de expresión, aunque sin
olvidar una estructura jerarquizada por la meritocracia
La motivación pragmática, abanderada por la Open Source Initiative y
partidaria del apelativo abierto, que argumenta ventajas técnicas y
económicas, con respecto a evitar una tragedia de los anticomunes mejorando los incentivos.
Aparte de estas dos grandes motivaciones, la gente que trabaja en software
libre suele hacerlo por muchas otras razones, que van desde la diversión a la
mera retribución económica, que es posible debido a modelos de negocio sustentables.
Regulación
España
La Orden EDU/2341/2009, de 27 de agosto, por la que se crea el Centro
Nacional de Desarrollo Curricular en Sistemas no Propietarios, tiene como
finalidad el diseño, el desarrollo y la promoción de contenidos educativos
digitales para colectivos educativos específicos, en el ámbito de las
Tecnologías de la Información y la Comunicación, que se centra en
promocionar y aplicar estrategias dirigidas a poner a disposición de los
centros escolares recursos y contenidos digitales de calidad, desarrollados en software libre.
Venezuela
El Decreto presidencial 3390 de fecha 23 de diciembre de 2004 y publicado
en La Gaceta Oficial de Venezuela nº 38095 el 28 de diciembre de 2004,
establece textualmente en su artículo 1 que "La Administración Pública
Nacional empleará prioritariamente Software Libre desarrollado con
Estándares Abiertos, en sus sistemas, proyectos y servicios informáticos. A
tales fines, todos los órganos y entes de la Administración Pública Nacional
iniciarán los procesos de migración gradual y progresiva de éstos hacia el
Software Libre desarrollado con Estándares Abiertos"
Ecuador
El Decreto presidencial 1014 del 10 de abril de 2008, decreta "Establecer
como política pública para las Entidades de la Administración Pública
Central la utilización de Software Libre en sus sistemas y equipamientos
informáticos.
Importancia de afrontar el estudio del Software Libre
1.Económica: el costo de las licencias de Software Propietario es bastante
importante, y por la situación económica actual, imposible de afrontar de la
manera que los fabricantes de Software lo piden.
2.Legal: el Software Libre es siempre legal, salvo contadas excepciones (p/ej.,
que compilemos el código fuente y lo vendamos como propietario). Por lo
tanto, al utilizar este tipo de software estaremos siempre "por derecha", por lo
que no seremos pasibles de multas y/o prisión.
3.Técnica: es sabido que Microsoft ha dejado de ofrecer soporte de desarrollo
para Windows 95 y Windows 98, por lo que si hoy o mañana se descubre un
error en ellos, Microsoft no esta obligado a repararlo. Para solucionar esto,
tendríamos dos caminos: a) Migrar a otras versiones de Sistema Operativos
de Microsoft: esto lleva aparejado una serie de costos, principalmente en
licencias, luego costos de implantación, soporte e interoperabilidad, y además
implica volver a hacer lo mismo dentro de dos o tres años. b) Utilizar
Software Libre
4.Laboral: la implementación de Software Libre plantea un futuro muy
prometedor para aquellas personas que sepan programar, traducir, utilizar
un programa, enseñar, etc. Si tenemos que elegir entre pagar una licencia de
software a un coloso informático o darle trabajo directamente a una persona, es de esperar que nos volquemos a la segunda alternativa.
Ventajas del Software Libre
1.Escrutinio Publico: Al ser muchos las personas que tienen acceso al código
fuente, eso lleva a un proceso de corrección de errores muy dinámico, no
hace falta esperar que el proveedor del software saque una nueva versión.
2.Independencia del proveedor:
c.Software de dominio publico: este tipo de software no tienen licencias de
uso, por lo tanto corre el peligro de dejar de serlo si alguien lo utiliza con el fin de apropiárselo.
b.Al disponer del código fuente, cualquier persona puede continuar
ofreciendo soporte, desarrollo u otro tipo de servicios para el software.
c.No estamos supeditados a las condiciones del mercado de nuestro
proveedor, es decir que si este se va del mercado porque no le conviene y discontinua el soporte, nosotros podemos contratar a otra persona.
1.Manejo de la Lengua:
b.Traducción: cualquier persona capacitada puede traducir y adaptar un
software libre a cualquier lengua.
c.Corrección ortográfica y gramatical: una vez traducido el software libre
puede presentar errores de este tipo, los cuales pueden ser subsanados con mayor rapidez por una persona capacitada.
1.Mayor seguridad y privacidad:
b.Los sistemas de almacenamiento y recuperación de la información son
públicos. Cualquier persona puede ver y entender como se almacenan los datos en un determinado formato o sistema.
c.Existe una mayor dificultad para introducir código malicioso como ser:
espía (p/ej. capturador de teclas), de control remoto (p/ej. Troyano), de entrada al sistema (p/ej. puerta trasera), etc.
1.Garantía de continuidad: el software libre puede seguir siendo usado aun
después de que haya desaparecido la persona que lo elaboro, dado que
cualquier técnico informatico puede continuar desarrollándolo, mejorándolo
o adaptándolo.
2.Ahorro en costos: en cuanto a este tópico debemos distinguir cuatro
grandes costos: de adquisición, de implantación (este a su vez se compone de
costos de migración y de instalación), de soporte o mantenimiento, y de
interoperabilidad. El software libre principalmente disminuye el costo de
adquisición ya que al otorgar la libertad de distribuir copias la puedo ejercer
con la compra de una sola licencia y no con tantas como computadoras posea
(como sucede en la mayoría de los casos de software propietario). Cabe
aclarar que también hay una disminución significativa en el costo de soporte, no ocurriendo lo mismo con los costos de implantación y de interoperatividad.
Desventajas del software libre
Si observamos la situación actual, es decir la existencia mayoritaria de Software Propietario, tenemos:
1.Dificultad en el intercambio de archivos: esto se da mayormente en los
documentos de texto (generalmente creados con Microsoft Word), ya que si
los queremos abrir con un Software Libre (p/ ej. Open Office o LaTeX) nos da
error o se pierden datos. Pero esta claro que si Microsoft Word creara sus
documentos con un formato abierto (o publico) esto no sucedería.
2.Mayores costos de implantación e interoperabilidad: dado que el software
constituye "algo nuevo", ello supone afrontar un costo de aprendizaje, de
instalación, de migración, de interoperabilidad, etc., cuya cuantía puede verse
disminuida por: mayor facilidad en las instalaciones y/o en el uso, uso de
emuladores (p/ej. Si el usuario utiliza Microsoft Windows, la solución seria
instalar alguna distribución de GNU/Linux y luego un emulador de Windows,
como Wine, VMWare. Terminal X, Win4Lin). Vale aclarar que el costo de
migración esta referido al software, ya que en lo que hace a Hardware
generalmente el Software Libre no posee mayores requerimientos que el Software Propietario.