Você está na página 1de 5

Ed. 2.0.

Introduccin al software libre


16 / 200

01) Seoane, J.; Gonzlez, J. M. & Robles, G. (2003). Introduccin al software libre en Introduccin al
software libre. Espaa: Creative Commons, pp. 16-20.

Captulo 1

Introduccin al software libre


If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But
if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
Si t tienes una manzana, yo tengo una manzana y las intercambiamos, seguiremos teniendo una manzana cada uno.
Pero si t tienes una idea, yo tengo una idea, y las intercambiamos, cada uno de nosotros tendr dos ideas.
Bernard Shaw (atribuido)
Qu es el software libre? Qu es y qu implicaciones tiene la licencia de un programa libre? Cmo se est desarrollando el
software libre? Cmo se financian los proyectos de software libre, qu modelos de negocio se estn experimentando relacionados
con ellos? Qu motiva a los desarrolladores, especialmente a los que son voluntarios, a involucrarse en proyectos de software
libre? Cmo son estos desarrolladores? Cmo se coordinan en sus proyectos, y cmo es el software que producen? En resumen,
cul es la panormica general del software libre? Este es el tipo de preguntas que trataremos de responder en este texto. Porque
aunque el software libre est cada vez ms en los medios de comunicacin, en las conversaciones de los profesionales de la
informtica, e incluso empieza a estar en boca de los ciudadanos en general, an es un desconocido para muchos. Y los que lo
conocen muchas veces no saben ms que de algunos de sus aspectos, desconociendo completamente otros.
Para empezar, en este captulo vamos a presentar los aspectos especficos del software libre, centrndonos fundamentalmente
en explicar sus bases para los que se aproximen al tema por primera vez, y en motivar su importancia. Entre estas bases nos
detendremos en la definicin del trmino (para saber de qu vamos a hablar) y en las consecuencias principales del uso (y la mera
existencia) del software libre.

1.1. El concepto de libertad en el software


Desde el principio de los aos 70 nos hemos acostumbrado a que quien comercializa un programa pueda imponer (e imponga)
las condiciones bajo las que puede usarse. Puede, por ejemplo, prohibir que se lo preste a un tercero. A pesar de que el software
es el elemento tecnolgico ms flexible y adaptable que tenemos, puede imponerse (y es comn imponer) la imposibilidad de
adaptarlo a unas necesidades concretas, o corregir sus errores, sin el permiso explcito del productor, que normalmente se reserva
en exclusiva estas posibilidades. Pero esta es slo una de las posibilidades que ofrece la legislacin actual: el software libre, por
el contrario, otorga las libertades que el software privativo niega.
Nota
En este texto utilizaremos el trmino software privativo para referirnos a cualquier programa que no puede considerarse
software libre, de acuerdo con la definicin que se ofrece ms adelante.

1.1.1. Definicin
As pues el trmino software libre (o programas libres), tal como fue concebido por Richard Stallman en su definicin [120],
hace referencia a las libertades que puede ejercer quien lo recibe. En concreto, hace referencia a cuatro libertades:

Ed. 2.0.1

Introduccin al software libre


17 / 200

1. Libertad para ejecutar el programa en cualquier sitio, con cualquier propsito y para siempre.
2. Libertad para estudiarlo y adaptarlo a nuestras necesidades. Esto exige el acceso al cdigo fuente.
3. Libertad de redistribucin, de modo que se nos permita colaborar con vecinos y amigos.
4. Libertad para mejorar el programa y publicar las mejoras. Tambin exige el cdigo fuente.
El mecanismo que se utiliza para garantizarlas, de acuerdo con la legalidad vigente, es la distribucin mediante una cierta licencia,
como veremos ms adelante (captulo 3). En ella el autor plasma su permiso para que el receptor del programa pueda ejercer esas
libertades, y tambin restricciones que pueda querer aplicar (como dar crdito a los autores originales en caso de redistribucin).
Para que la licencia sea considerada como libre, estas restricciones no pueden ir en contra de las libertades mencionadas.
La ambigedad de free
El trmino original en ingls para programas libres es free software. Sin embargo, el trmino ingls free adems de libre
significa gratis, lo que genera gran confusin. Por ello a menudo en ingls se toman prestadas palabras espaolas y se habla
de libre software, en contraposicin a gratis software, al igual que nosotros tomamos prestada la palabra software.

As pues, las definiciones de software libre no hacen ninguna referencia a que pueda conseguirse gratuitamente: el software libre
y el software gratuito son cosas bien distintas. Sin embargo, dicho esto, hay que explicar tambin que debido a la tercera libertad,
cualquiera puede redistribuir un programa sin pedir contraprestacin econmica ni permiso, lo que hace prcticamente imposible
obtener grandes ganancias simplemente por la distribucin de software libre: cualquiera que lo haya obtenido puede a su vez
redistribuirlo a precio ms bajo, o incluso gratis.
Nota
A pesar de que cualquiera puede comercializar un programa dado a cualquier precio, y eso hace que tericamente el precio
de redistribucin tienda hacia el coste marginal de copia, hay modelos de negocio basados precisamente en vender software,
porque son muchas las circunstancias donde el consumidor est dispuesto a pagar si recibe ciertas contraprestaciones, como
por ejemplo una cierta garanta, aunque sea subjetiva, sobre el software que recibe, o un valor aadido en forma de seleccin,
actualizacin y organizacin de un conjunto de programas.

Desde un punto de vista prctico, hay varios textos que definen ms precisamente qu condiciones tiene que cumplir una licencia
para ser considerada como de software libre. Entre ellas, destacan por su importancia histrica la definicin de software libre de
la Free Software Foundation [120], las directrices de Debian para decidir si un programa es libre [104] y la definicin de la Open
Source Initiative del trmino open source [215], muy similar a las anteriores.
Nota
Por ejemplo, las directrices de Debian entran en el detalle de permitir que el autor exija que los fuentes distribuidos no sean
modificados directamente, sino que los originales se acompaen de parches separados y que los programas binarios se
generen con nombres distintos al original. Adems exigen que las licencias no contaminen otros programas distribuidos en el
mismo medio.

1.1.2. Trminos relacionados


Equivalente a software libre es el trmino Open Source Software (programas de fuente abierto), promovido por Eric Raymond
y la Open Source Initiative. Filosficamente el trmino es muy distinto, ya que hace nfasis en la disponibilidad de cdigo
fuente, no en la libertad, pero su definicin es prcticamente la misma que la de Debian[183]. Este nombre es ms polticamente
asptico y recalca un aspecto tcnico que puede dar lugar a ventajas tcnicas, como mejores modelos de desarrollo y negocio,
mayor seguridad, etc. Fuertemente criticado por Richard Stallman[204] y la Free Software Foundation[27], ha encontrado mucho
ms eco en la literatura comercial y en las estrategias de las empresas que de una manera u otra apoyan el modelo.
Otros trminos relacionados de alguna manera con el software libre son:

Ed. 2.0.1

Introduccin al software libre


18 / 200

Freeware Programas gratuitos. Normalmente se distribuyen slo en binario, y se pueden obtener sin coste. A veces se obtiene
tambin permiso de redistribucin, pero otras no, pudiendo obtenerse entonces slo del sitio oficial mantenido a ese
efecto. Es habitual que estos programas se usen para promocionar otros programas (tpicamente con funcionalidad ms
completa) o servicios. Ejemplos de este tipo de programas son Skype, Google Earth o Microsoft Messenger.
Shareware No es siquiera software gratis, sino un mtodo de distribucin, ya que los programas, generalmente sin fuentes, se
pueden copiar libremente, pero no usar continuadamente sin pagarlos. La exigencia de pago puede estar incentivada por
funcionalidad limitada o mensajes molestos, o una simple apelacin a la moral del usuario, adems de que las estipulaciones
legales de la licencia podran utilizarse en contra del infractor.
Charityware, Careware Generalmente shareware, pero cuyo pago se exige para una organizacin caritativa patrocinada. En
muchos casos, el pago no se exige, pero se solicita una contribucin voluntaria. Algn software libre, como vim solicita
contribuciones voluntarias de este tipo [173].
Dominio pblico El autor renuncia absolutamente a todos sus derechos, en favor del comn, lo cual tiene que estar declarado
explcitamente en el programa, ya que si no se dice nada, el programa es propietario y no se puede hacer nada con l. En
este caso, y si adems se proporcionan los fuentes, el programa es libre.
Copyleft Un caso particular de software libre cuya licencia obliga a que las modificaciones que se distribuyan sean tambin
libres.
Propietario, Cerrado, No libre Trminos usados para denominar al software que no es libre ni de fuente abierta.

1.2. Motivaciones
Como hemos visto hay dos grandes familias de motivaciones para el desarrollo de software libre, que dan lugar as mismo a los
dos nombres con que se lo conoce:
La motivacin tica, abanderada por la Free Software Foundation[27], heredera de la cultura hacker, y partidaria del apelativo
libre, que argumenta que el software es conocimiento que debe poder difundirse sin trabas, y que su ocultacin es una actitud
antisocial y que la posibilidad de modificar programas es una forma de libertad de expresin. Puede profundizarse en este
aspecto en los ensayos de Stallman[211] o en el anlisis de Pekka Himanen[144].
La motivacin pragmtica, abanderada por la Open Source Initiative[54] y partidaria del apelativo fuente abierta, que argumenta ventajas tcnicas y econmicas, que repasaremos en la seccin siguiente.
Aparte de estas dos grandes motivaciones, la gente que trabaja en software libre puede hacerlo por muchas otras razones, que van
desde la diversin[217] a la mera retribucin econmica, posiblemente debida a modelos de negocio sustentables. En el captulo
4 se profundiza en estas motivaciones a partir de anlisis objetivos.

1.3. Consecuencias de la libertad del software


El software libre trae consigo numerosas ventajas y pocas desventajas, muchas de ellas exageradas (o falseadas) por la competencia propietaria. De ellas la que ms fundamento tiene es la econmica, ya que como vimos no es posible obtener mucho
dinero de la distribucin y sta la puede y suele hacer alguien distinto al autor. Es por ello que se necesitan modelos de negocio
y otros mecanismos de financiacin, que se desarrollan en el captulo 5. Otras, como la falta de soporte o la calidad escasa, estn
relacionadas con la financiacin, pero adems en muchos casos son falsas, ya que incluso software sin ningn tipo de financiacin
suele ofrecer muy buen soporte a travs de foros de usuarios y desarrolladores, y muchas veces tiene gran calidad.
Teniendo presentes los problemas econmicos, hemos de observar que el modelo de costes del software libre es muy distinto del
propietario, ya que gran parte de l se ha desarrollado fuera de la economa formal monetaria, muchas veces con mecanismos de
trueque: yo te doy un programa que te interesa y t lo adaptas a tu arquitectura y le haces mejoras que a ti te interesan. En el
captulo 7 se explican mecanismos de ingeniera software apropiados para aprovechar estos recursos humanos no pagados y con
caractersticas propias, mientras que en el captulo 8 se estudian las herramientas usadas para hacer efectiva esta colaboracin.
Pero adems gran parte de los costes disminuyen por el hecho de ser libre, ya que los programas nuevos no tienen por qu

Ed. 2.0.1

Introduccin al software libre


19 / 200

empezar desde cero, sino que pueden reutilizar software ya hecho. La distribucin tiene tambin un coste mucho menor, ya que
se hace va Internet y con propaganda gratuita en foros pblicos destinados a ello.
Otra consecuencia de las libertades es la calidad que se deriva de la colaboracin voluntaria de gente que contribuye o que descubre y reporta errores en entornos y situaciones inimaginables por el desarrollador original. Adems, si un programa no ofrece
la calidad suficiente, la competencia puede tomarlo y mejorarlo, partiendo de lo que hay. As la colaboracin y la competencia,
dos poderosos mecanismos, se combinan para conseguir mejor calidad.
Examinemos ahora las consecuencias beneficiosas segn el destinatario.

1.3.1. Para el usuario final


El usuario final, ya sea individual o empresa, puede encontrar verdadera competencia en un mercado con tendencia al monopolio.
En particular, no depende necesariamente del soporte del fabricante del software, ya que puede haber mltiples empresas, quiz
pequeas, que disponiendo del fuente y de conocimientos, puedan hacer negocio manteniendo determinados programas libres.
Ya no se depende tanto de la fiabilidad del fabricante para intentar deducir la calidad de un producto, sino que la gua nos la dar
la aceptacin de la comunidad y la disponibilidad de los fuentes. Nos olvidamos adems de cajas negras, en las que hay que
confiar porque s, y de las estrategias de los fabricantes, que pueden decidir unilateralmente dejar de mantener un producto.
La evaluacin de productos antes de adoptarlos ahora es mucho ms sencilla, ya que basta instalar los productos alternativos en
nuestro entorno real y probar, mientras que para software propietario hay que fiarse de informes externos o negociar pruebas con
los proveedores, lo cual no es siempre posible.
Dada la libertad de modificar el programa para uso propio, el usuario puede personalizarlo o adaptarlo a sus necesidades, corrigiendo errores si los tuviera. El proceso de correccin de errores descubiertos por los usuarios en software propietario suele ser
extremadamente penoso, si no imposible, ya que si conseguimos que se repare, muchas veces se har en la versin siguiente,
que podra tardar aos en salir, y a veces adems ser necesario comprarla de nuevo. En software libre, sin embargo, lo podemos
hacer nosotros, si estamos cualificados, o contratar el servicio fuera. Tambin podemos, directamente o contratando servicios,
integrar el programa con otro, o auditar su calidad (por ejemplo la seguridad). El control pasa, en gran medida, del proveedor al
usuario.

1.3.2. Para la administracin pblica


La administracin pblica es un gran usuario de caractersticas especiales, ya que tiene obligaciones especiales con el ciudadano,
ya sea proporcionndole servicios accesibles, neutrales respecto a los fabricantes, ya garantizando la integridad, utilidad, privacidad y seguridad de sus datos a largo plazo. Todo ello la obliga a ser ms respetuosa con los estndares que las empresas privadas
y a mantener los datos en formatos abiertos y manipulados con software que no dependa de estrategia de empresas, generalmente
extranjeras, certificado como seguro por auditora interna. La adecuacin a estndares es una caracterstica notable del software
libre que no es tan respetada por el software propietario, generalmente vido de crear mercados cautivos.
Asimismo, la administracin tiene una cierta funcin de escaparate y gua de la industria que la hace tener un gran impacto, que
debera dirigirse a la creacin de un tejido tecnolgico generador de riqueza nacional. sta puede crearse fomentando empresas
cuyo negocio sea, en parte, el desarrollo de nuevo software libre para la administracin, o el mantenimiento, adaptacin o
auditora del software existente. En el captulo 6 nos extendemos ms en esta cuestin.

1.3.3. Para el desarrollador


Para el desarrollador y productor de software, la libertad cambia mucho las reglas del juego. Con l le es ms fcil competir
siendo pequeo y adquirir tecnologa punta. Puede aprovecharse del trabajo de los dems, compitiendo incluso con otro producto
modificando su propio cdigo, si bien tambin el competidor copiado se aprovechar de nuestro cdigo (si es copyleft). Si el
proyecto se lleva bien puede conseguirse la colaboracin gratuita de mucha gente, y adems se tiene acceso a un sistema de
distribucin prcticamente gratuito y global. No obstante queda pendiente el problema de cmo obtener recursos econmicos si
el software realizado no es gruto de un encargo pagado. En el captulo 5 se tratar con detalle este tema.

Ed. 2.0.1

Introduccin al software libre


20 / 200

1.3.4. Para el integrador


Para el integrador el software libre es el paraso. No ms cajas negras que intentar encajar, a menudo con ingeniera inversa.
Puede limar asperezas e integrar trozos de programas para conseguir el producto integrado necesario, disponiendo de un acervo
ingente de software libre de donde extraer las piezas.

1.3.5. Para el que proporciona mantenimiento y servicios


El disponer del fuente lo cambia todo, situndonos casi en las mismas condiciones que el productor. Si no son las mismas es
porque hace falta un conocimiento profundo del programa que slo el desarrollador posee, por lo que es conveniente que el
mantenedor participe en los proyectos que se dedica a mantener. El valor aadido de los servicios es mucho ms apreciado, ya
que el coste del programa es bajo. ste es actualmente el negocio ms claro con software libre y con el que es posible un mayor
grado de competencia.

1.4. Resumen
Este primer captulo ha servido como toma de contacto con el mundo del software libre. El concepto fue definido por Richard
Stallman basndose en cuatro libertades: de ejecucin, de estudio, de redistribucin y de mejora, dos de las cuales suponen el
acceso al cdigo fuente. Esta accesibilidad y sus ventajas motivan otro punto de vista menos tico y ms pragmtico, defendido
por la Open Source Initiative, que ha dado lugar a otro trmino: software de fuente abierta. Se han comentado tambin otros
trminos relacionados por similitud o contraposicin, y que permiten aclarar los conceptos. Finalmente se han comentado las
consecuencias de la libertad del software para los principales actores implicados.

Você também pode gostar