¿Qué es el software libre?
Recopilación de ideas comentadas por Richard Stallman, Jesús Barahona, Ricardo Galli y tantos otros defensores de la libertad para intentar dar una idea clara sobre qué es el software libre.
En este documento hablaré de informática, programación, educación, empleo, negocios, etc, pero todo gira en torno a dos ideas fundamentales en el movimiento del software libre, la ética y la libertad.
¿Qué es el software libre?
Podemos decir que un programa es libre cuando respeta los derechos de los usuarios de ese programa. Evidentemente es una deficinición demasiado abstracta y que puede llevar a malentendidos, por lo que concretando más diremos que un programa es libre si cumple cuatro libertades básicas:
- Libertad 0: libertad de usar el programa sin ningún tipo de limitación, ni espacial ni temporal. Puedes usarlo donde quieras, como quieras y cuando quieras.
- Libertad 1: libertad para ayudarte a ti mismo, es decir, libertad para estudiar el programa y modificarlo en función de tus necesidades. Para ello es requisito indispensable tener acceso al código fuente del programa.
- Libertad 2: libertad para ayudar a tu amigo, a tu vecino, a tu compañero de trabajo, a tu prójimo, es decir, libertad de copiar y de distribuir copias del programa a cualquier persona.
- Libertad 3: libertad para ayudar a la sociedad entera, es decir, libertad para distribuir los cambios y mejoras que hayas hecho del programa para que todo el mundo pueda beneficiarse.
Si un programa no cumple estas libertades decimos que es un programa propietario o privativo, término que pienso que es más correcto. Decimos que es privativo porque el programa priva a los usuarios de sus derechos y libertades.
Libertad 0: Usar
El por qué de la libertad 0 es evidente. Si un pograma no puede usarse en cualquier tipo de circunstancia no técnica no estamos hablando de un programa libre. Si un programa solamente puede usarse durante 30 días no es libre. Si un programa no puede usarse en determinados países no es libre. Si tienes que pagar dinero en función del número de veces que usas un pograma, ese programa no es libre.
Los programas libres pueden usarse sin ningún tipo de restricciones.
Libertad 1: Modificar
Los programas suelen contener errores y no funcionar como uno espera que lo hagan. Muchos programas contienen funcionalidades indeseadas, puertas traseras, procedimientos de registro de actividad, problemas para trabajar con determinados formatos de ficheros y errores varios. Y esto ocurre con cualquier tipo de programa, ya sea libre o privativo.
Esta libertad permite que los programas sean estudiados y modificados para que se adapten a nuestras necesidades específicas. No necesariamente debemos ser nosotros los que lo hagamos, si no podemos o no queremos hacerlo podemos pagar para que otros lo hagan por nosotros, lo que se conoce como servicios.
En los programas privativos no existe esta libertad. En el mundo del software privativo la empresa que desarrolla un programa es la empresa que vende ese programa y es la empresa que ofrece servicios sobre ese programa, formando lo que conocemos como monopolio. Y así el mercado se llena de monopolios, de forma que si tenemos un programa y queremos modificarlo debemos dirigirnos a la empresa que controla el monopolio en concreto, y si esa empresa no quiere o no puede ofrecer ese servicio no podremos modificar el programa nunca. Y si accede tendremos que someternos a sus condiciones, económicas o del tipo que sean, sin posibilidad de escuchar otras ofertas ya que estamos tratando con un monopolio.
En el software libre existen lo que se conoce como monopolios de producto que tienen poco que ver con los monopolios de empresa típicos del software privativo. Esta situación permite que cualquier empresa o particular pueda ofrecer servicios, ya sea a él mismo o a terceros.
Sin embargo, sólo con esta libertad no basta. Es necesaria la libertad 3.
Libertad 2: Copiar
Uno de los efectos nocivos del software privativo es la división de la sociedad en base a los programas que tienen. Son habituales los casos en los que un grupo de personas disponen de programas que no están al alcance del resto de personas por las razones que sean, consecuencia de la existencia de los monopolios una vez más.
El movimiento del software libre se basa en la creencia de que todas las personas son iguales y que, por lo tanto, todos tienen derecho a disponer de los programas que les sean necesarios. Por esa razón se permite copiar y distribuir las copias de los programas, para que estén al alcance de todo el mundo. El que distribuye las copias puede hacerlo de forma altruista o cobrando por ello, eso ya es cosa suya, pero lo importante es que cualquiera puede convertirse en distribuidor de software libre.
En estos tiempos que corren se ha intentado demonizar la copia, ya sea de software o de cultura y conocimiento en general, sin tener en cuenta que nuestra sociedad es copista por naturaleza. Desde que el ser humano nace se dedica a copiar todo lo que le rodea, copia la forma de andar y de actuar de sus padres, la forma de hablar y de pensar. Vamos al colegio y seguimos copiando toneladas de información, al igual que en los institutos y en las universidades. Sólo un muy pequeño porcentaje de la humanidad crea algo nuevo, y automáticamente eso que es nuevo es copiado por todos los demás haciendo que la sociedad crezca y avance.
No creo que copiar sea malo, copiar también es contribuir.
En el mundo del software privativo los que copian son conocidos como "piratas". En el software libre se les conoce como "distribuidores" y, sinceramente, prefiero que me llamen de la segunda forma.
Libertad 3: Distribuir modificaciones
Como comentaba anteriormente, la libertad 1 que nos permite modificar los programas sería insuficiente si no existiera la libertad de distribuirlas. Es algo mucho más importante de lo que pueda parecer ya que esta última libertad es la que cierra el círculo y la que permite que un programa libre sea un pograma potencialmente de gran calidad.
Un ejemplo. Supongamos que realizo el típico programa "Hola mundo" para consola y lo cuelgo de la web como programa libre. El hecho de que el programa sea libre no implica que el programa deba de ser bueno. En realidad es un programa que no sirve para nada.
Pero quizás alguien se interesa por el programa y decide modificarlo para que detecte si se ejecuta en consola, KDE o GNOME y en función de ello usar unas u otras librerías. Y otra persona le añade soporte para múltiples idiomas. Y otro lo sobreescribe por completo para transformarlo en una librería para el multi-idioma de su propio programa. Las posibilidades son infinitas.
Lo que intento decir es que un programa libre puede no ser un gran programa en sus inicios pero su tendencia natural es mejorar a lo largo del tiempo, sobretodo cuando se trata de algo especialmente interesante, y esto ocurre porque es bueno para la sociedad. Un programa privativo también puede mejorar con el tiempo pero estas mejoras se basarán en estrategias comerciales que a veces pueden no estar de acuerdo con las necesidades de la sociedad.
Orígenes del software libre
Contrariamente a la creencia popular el software libre está ahí desde el principio. Antes que nada, existió el software libre, y posteriormente, se empezó a patentar y crear el software privativo.
En los años 70, la era de los auténticos hackers, los programadores intercambiaban sus programas, publicaban sus investigaciones y mostraban abiertamente como habían implementado sus ideas y algoritmos. Por aquel entonces la informática aun no se había introducido en el ámbito empresarial, quedando prácticamente confinada a la investigación universitaria.
En 1975 los Laboratorios Bell establecieron una licencia de pago a las universidades por el uso de su sistema Unix, siendo éste el origen del software privativo e impidiendo así su libre distribución. En 1984 miles de patentes regían un férreo sistema de control sobre los programas, la investigación era cerrada y nadie compartía los códigos pues las empresas lo evitaban con clausulas contractuales y demandas judiciales por incumplimiento de patentes. Ese año, R.M. Stallman creó la Free Software Foundation (FSF) cuyo objetivo era diseñar un sistema operativo completamente libre con sus correspondientes herramientas y aplicaciones también libres, de forma que una persona puediera usar un ordenador sin tener que someterse a las draconianas condiciones de uso de los programas privativos. A ese sistema se le llamó GNU (curioso acrónimo que significa GNU is Not Unix).
Sin embargo es en 1991 cuando el software libre da un paso de gigantes. Un estudiante de la Universidad de Helsinki llamado Linus Torvalds creó Linux, un núcleo de sistema operativo que unido a todo el sistema GNU que ya se había creado formó el sistema GNU/Linux, un sistema completo y listo para funcionar, un sistema completamente libre.
Razones por las que usar programas libres
Hay muchas razones para preferir usar programas libres en lugar de programas privativos. Esas razones difieren en función del entorno de uso de los programas.
Uso doméstico
Si estamos hablando de un usuario doméstico la principal razón para usar programas libres sería la de evitar problemas morales.
Supongamos que usamos programas privativos en nuestro ordenador y que un amigo nos pide una copia de un determinado programa. Si le damos una copia del programa estamos infringiendo la licencia del programa que nos impide distribuir copias del mismo, vamos en contra de los deseos del propietario de los derechos del programa y hacemos algo ilegal; no está bien. Pero si nos negamos a copiar el programa nos negamos a ayudar a nuestro amigo, y eso tampoco está bien.
Para evitar esos problemas morales lo mejor es usar programas libres. Los autores de los programas libres dan su consentimiento a que se copien sus programas y además nos animan a que lo hagamos, ya que para ellos es una forma de distribuir su trabajo por todo el mundo. Por lo tanto al copiar un programa a un amigo estamos ayudando a nuestro amigo y al mismo tiempo estamos ayudando al autor del programa.
Es una de esas situaciones que se dan habitualmente en el mundo del software libre en las que todo el mundo sale ganando. Iremos viendo más situaciones similares a lo largo del documento.
El precio de los programas no es una razón de peso para usar programas libres en vez de privativos. Hay programas conocidos como shareware que se pueden usar gratuitamente durante un cierto tiempo. También hay otros conocidos como freeware que son gratuitos independientemente del tiempo que los uses. Pero ninguno de esos programas es libre, ya que normalmente no los puedes ni copiar ni modificar.
Uso en la enseñanza
Las razones por las que usar programas libres en la educación aún son más importantes e imperiosas que en el caso del uso doméstico, ya que los centros educativos y sus recursos deben centrarse en un único objetivo, educar.
¿Qué aprenden los alumnos en las aulas informáticas que usan software privativo? Y desgraciadamente todavía es el caso más habitual en España.
Aprenden a usar unas herramientas de unas pocas empresas, adquieren un conocimiento que en el futuro les encadenará a esos programas y a las decisiones que esas empresas tomen sobre los programas. No reciben formación, por ejemplo, para usar un procesador de textos general, una formación que podrían usar para aplicar en cualquier otra herramienta similar. Reciben formación específica del procesador de textos X, una formación que les imposibilita en muchas ocasiones cambiar de producto en el futuro.
Aprenden que no pueden duplicar su entorno de aprendizaje en su ordenador doméstico a menos que realicen un importante desembolso económico o a menos que adquieran copias ilegales de los programas, que es la opción más usada. Aprenden que en muchas ocasiones lo mejor es saltarse la ley y las licencias de los programas, sin enseñarles que hay otras opciones.
Además, los programas privativos ponen límite a lo que pueden aprender los alumnos de los programas. Sólo podremos ver y aprender lo que las empresas que tienen los derechos de esos programas quieren que veamos y aprendamos. Y si algún alumno se siente interesado por cómo funciona un programa tendrá que hacerlo de forma que vuelva a ir contra las leyes establecidas.
¿Es realmente buena una enseñanza que permite que se pongan límites a lo que los alumnos pueden aprender y que les incita en cierta manera a ir contra la legalidad y contra la sociedad basada en esa legalidad?
Peor aún, ¿es ético que la enseñanza pública dé ventajas competitivas a determinadas empresas del software proveyendoles de miles de nuevos usuarios y usando para ello el dinero público, el dinero de todos?
Sinceramente, creo que es mejor dejar de lado el hecho de que un programa sea más económico, sea más popular o sea más conocido por el profesorado. Incluso hay que dejar de lado el hecho de que determinado programa sea el demandado por los alumnos. Los centros educativos tienen que usar los programas más adecuados para la enseñanza.
Programas que no conviertan a los alumnos en futuros esclavos de grandes compañías. Respetemos el derecho de libertad de elección que tendrán los alumnos en los siguientes años.
Programas que los alumnos puedan llevarse a sus casas para seguir aprendiendo y experimentado en sus ratos libres. Y por supuesto, sin que suponga para ellos y para sus familias un importante desembolso (los ordenadores por sí solos ya son suficientemente caros). Y por supuesto, sin que el alumno deba incumplir las leyes establecidas.
Programas que no limiten la capacidad de aprendizaje de las personas. Programas de los que podamos aprender todo lo que queramos o podamos. El objetivo de la enseñanza es que los alumnos aprendan, nunca será el decir lo que se puede y lo que no se puede aprender.
Es evidente que a la hora de dar las clases hay que decantarse por una herramienta en concreto, pero si esa herramienta es libre no estamos apoyando a una empresa en concreto sino que apoyamos a la sociedad entera. Por ejemplo, Sun es la empresa que mantiene y distribuye el paquete ofimático OpenOffice, pero usarlo en la enseñanza no implica el dar ventaja a Sun sobre sus competidores ya que al ser un conjunto de programas libres cualquier otra empresa puede dar servicio sobre ese paquete en cualquier momento. Estamos hablando de dinero público invertido en la sociedad, no en una sola empresa.
Y finalmente, usar programas libres en la educación es enseñar el valor de la solidaridad. Es enseñar a compartir, enseñar a ayudar, enseñar a colaborar... es dar unos valores éticos para personas que formarán parte de una sociedad mejor.
Uso en las empresas
Las razones para que las empresas usen programas libres no son éticas. Sería lo deseable, es cierto, pero las empresas existen principalmente para ganar dinero y pensar otra cosa sería engañarnos. Aún así, las empresas tienen derechos al igual que las personas, derechos y libertades que son vulnerados continuamente por los programas privativos.
Cuando una empresa cualquiera adquiere un programa privativo esa empresa queda atrapada en el monopolio que rodea a ese programa y no podrá escapar a menos que cambie de programa con todo lo que ello supondría.
Que la empresa queda atrapada en el monopolio quiere decir que solamente podrá adaptar ese pograma a sus necesidades en la medida en que la empresa distribuidora quiera, aceptando en ese caso los precios que se le impongan. No es posible buscar alternativas, ya que al tratarse de un monopolio solamente la empresa que regenta el monopolio puede ofrecer ese servicio.
Por otro lado la empresa queda sujeta a las actualizaciones que se vayan realizando del programa. Al tratarse de programas privativos las actualizaciones se realizan siguiendo criterios más económicos que técnicos, buscando siempre lo mejor para el monopolio y para sus intereses. Puede que nos interese actualizar en unos momentos y en otros no, pero con los programas privativos las actualizaciones se realizarán cuando se nos diga.
Y lo que es peor. Si la empresa que domina el monopolio decide dejar de dar servicio solamente podemos esperar dos cosas. La primera, la "mejor", que otra empresa compre los derechos del programa y que el monopolio cambie de manos. Las cosas seguirán igual. La segunda, nos quedamos sin soporte para el programa, con lo cual nos vemos obligados a usar un programa que no se modificará nunca o a realizar un cambio de programa, algo traumático para la empresa dependiendo del grado de importancia de ese programa.
No hablemos ya del peligro del código secreto. Al no tener acceso al código del programa no podemos saber exactamente lo que hace el programa, circunstancia del todo indeseable en según que sectores. Recordemos las sospechas que tuvieron varios gobiernos sobre los programas de Microsoft, acusada de extraer información sensible de las empresas europeas para suministrarla a las grandes compañías estadounidenses, que se vió obligada a mostrar partes del código de su sistema operativo Windows.
Los programas libres se encuentran a salvo de estos problemas. Una empresa que usa un determinado programa libre no queda atada a ningún monopolio. Al contrario, tendrá libertad de elegir al proveedor que quiera. El hecho de que puedan existir varios proveedores para un mismo producto promueve la competencia de proveedores y beneficia a los clientes con precios más bajos, ofertas añadidas, etc.
Además, si con el tiempo se quiere cambiar de proveedor no habrá ningún problema, ya que como los programas son libres todos pueden tener acceso a ellos. Incluso la propia empresa podría contratar personal cualificado y realizar su propio mantenimiento del programa si así lo quisiera. Personal que tampoco sería muy difícil de encontrar, ya que al ser programas libres estamos hablando de un conocimiento que está abierto a todo el mundo.
Evidentemente, el ser independientes del proveedor y el poder controlar todas las herramientas que se usan pueden dar una ventaja a la empresa sobre sus competidores.
Cómo ganar dinero desarrollando programas libres
En general existe la creencia de que no se puede ganar dinero desarrollando programas libres y que los que trabajan creando programas libres lo hacen por amor al arte. Existen casos en los que ésto es cierto, hay mucha gente que trabaja en sus ratos libres programando, testeando, remitiendo bugs o escribiendo documentación y lo hacen sin ver un duro, simplemente porque les gusta hacerlo. Son casos dignos de elogio.
Pero también se dan casos de gente que trabaja en el sector del software libre y que gana dinero. Tenemos ejemplos ilustres como pueden ser Red Hat, Suse o MySQL entre muchos otros. Vamos a ver cómo es posible ganar dinero trabajando en el desarrollo y soporte de programas libres y además comprobaremos que en muchas ocasiones tendremos más probabilidades de triunfar basando nuestro negocio en el software libre que basándolo en el software privativo.
Una de las formas más sencillas de ganar dinero desarrollando software libre es trabajar por cuenta ajena. Es evidente que recibiremos nuestra nómina al llegar a final de mes independientemente del tipo de proyectos en los que estemos trabajando.
Un caso similar se da si nos dedicamos a realizar programas a medida. Supongamos que un cliente nos pide un desarrollo a medida de una determinada aplicación y quiere que esa aplicación sea libre. Nosotros igual cobraremos por el trabajo, ya que lo que el cliente haga despues con sus programas no nos afecta en nada.
Las diferencias más notables entre negocios basados en software libre y en software privativo las encontraremos en las empresas que realizan o mantienen programas y después los distribuyen para las grandes superficies comerciales, es decir, las empresas que desarrollan paquetes ofimáticos, programas de gestión, de contabilidad, juegos, etc., dirigidos al gran público. Esas grandes diferencias vienen originadas por la forma de ver el software que tienen unos y otros.
Las empresas cuyo modelo de negocio es el del software privativo basan su fuente de ingresos en la venta de programas o mejor dicho, en la venta de licencias o de derechos de uso de esos programas. Entre esos derechos de uso no suelen estar los derechos de copia, distribución o modificación, algo lógico ya que es su fuente de ingresos como ya hemos dicho.
Para este tipo de empresas el software es un producto, por lo que un programa recibe el mismo tratamiento que puede recibir un lápiz, un libro o un microondas. Se fabrica el prototipo inicial y si es aceptado por los responsables respectivos se inicia su fabricación masiva para distribuirlo después por las tiendas. Este modelo de negocio se basa en la creencia de que una gran masa de usuarios va a tener las mismas necesidades y no las cambiará demasiado con el paso del tiempo, por lo que se puede crear un programa/producto que cubra esas necesidades y vender millones de copias del mismo. Cada cierto tiempo se distribuye una nueva versión con mejoras y modificaciones.
Sin embargo todos sabemos que es bastante habitual que los usuarios de los programas demanden modificaciones de los mismos para adaptarlos mejor a sus necesidades particulares. Es más, suele ocurrir que los usuarios que más interesados están en realizar cambios y adaptaciones de los programas son los que están dispuestos a pagar más dinero. Teniendo en cuenta que para modificar y adaptar los programas no es necesaria una gran infraestructura se nos está presentando una forma de negocio bastante interesante. Estamos hablando de ofrecer un servicio al cliente.
El término servicio es muy amplio y abarca desde adaptaciones y modificaciones de los programas hasta instalaciones, formación y documentación de los mismos. Por supuesto se puede cobrar dinero por ofrecer estos servicios y en la mayoría de las ocasiones resultará más rentable y más gratificante que dedicarse a vender licencias de programas.
A la hora de ofrecer servicios a los clientes es cuando las empresas de software libre superan ampliamente a las empresas de software privativo, principalmente debido a la rígida estructura de monopolios existente en el sector privativo.
Para que una empresa de software privativo pueda ofrecer servicios sobre un determinado programa debe de poseer en primer lugar los derechos del mismo. Además, para ofrecer servicios es necesario que exista una masa crítica de usuarios que demanden esos servicios para que el negocio resulte rentable, y conseguir esa masa de usuarios requiere una laboriosa tarea de distribución y promoción incluso aunque estemos hablando de un programa muy bueno.
En el caso del software libre los programas están accesibles para todo el mundo y pueden ser probados sin ningún tipo de compromiso previo. Esto implica que si el programa es bueno nos encontraremos rapidamente con un elevado número de usuarios, o sea, de potenciales clientes. La empresa puede elegir sobre qué programas ofrecer servicio y elegir los que más posibilidades de triunfo le pueden dar. O puede crear sus propios programas. Si son buenos no tardará en formarse una comunidad de usuarios que demandará cambios, modificaciones, formación, etc, y lo más lógico es que la empresa que ha desarrollado el programa sea la que mejores servicios ofrezca y la que más clientes tendrá.
Otro punto a favor de las empresas de software libre es la facilidad para encontrar personal cualificado para realizar servicios sobre un determinado programa en el caso de que su personal actual no pudiera realizarlos. O formar a su propio personal a un precio nada desproporcionado. Esto ocurre gracias a que los programas, al ser libres, están accesibles para todo el mundo, lo que permite a las empresas tener costos menores y bajar los precios manteniendo su nivel de beneficios.
En el sector del software privativo, debido una vez más a su estructura de monopolios, resulta muy complicado que una empresa pueda encontrar profesionales cualificados que puedan realizar determinados servicios sobre sus programas, ya que los únicos que pueden dar formación sobre esos programas son ellos mismos, los distribuidores del programa, los que controlan el monopolio del programa.
Finalmente, podemos decir que para una empresa entrar y prosperar en el mercado del software privativo puede convertirse en una misión imposible, ya sea ofreciendo nuevos productos u ofreciendo servicios sobre productos existentes. La propia estructura de este mercado tiene la culpa ya que a las empresas que controlan los monopolios les resulta muy fácil evitar que un posible competidor entre en el mercado haciendo uso de su posición privilegiada, como ocurrió con Netscape o con Stacker por poner unos ejemplos.
Sin embargo, es realmente fácil entrar en el mercado del software libre. Eso no quiere decir que el triunfo esté asegurado. Hay que pensar que en este tipo de mercado, debido a que los programas son libres y todas las empresas tienen acceso a todas las modificaciones que se hacen, la competencia es terrible, lo que quiere decir que las empresas líderes del mercado lo son porque se lo están ganando día a día. Eso no quiere decir que no se les pueda desbancar; si la nueva empresa que acaba de entrar sabe moverse mejor que sus rivales no tardará mucho tiempo en ocupar las primeras posiciones.
En el mercado del software libre es muy difícil triunfar ya que te enfrentas a los mejores, pero al menos tienes la oportunidad de enfrentarte a ellos y si resulta que tú eres el mejor, entonces tú serás el ganador.
En el mercado del software privativo se te elimina rapidamente antes de que puedas llegar a convertirte en una amenaza real. Nunca sabrás si eres mejor que ellos o no, ya que ni siquiera te dan la oportunidad de probarlo.
Retos de futuro para el software libre
Se ha demostrado que es posible construir un sistema operativo libre completamente funcional con gran cantidad de aplicaciones también libres. También se ha demostrado que el software libre no acabará con las empresas de software sino más bien al contrario, abriendoles nuevas formas de aplicar su negocio.
A pesar de ello el futuro del software libre es incierto debido principalmente a cuatro amenazas que paso a explicar a continuación:
Hardware secreto
Entre las empresas de hardware crece cada vez más la tendencia a mantener las especificaciones de sus productos en secreto, proporcionando drivers privativos para su uso. Esto dificulta enormemente el uso de sistemas libres en nuestros equipos. ¿Seremos capaces de usar nuestros sistemas libres en los ordenadores del futuro?
La respuesta es sí, siempre y cuando las personas valoren suficientemente su libertad. Lo suficiente como para desarrollar drivers libres mediante ingeniería inversa. Lo suficiente como para no usar hardware no soportado por nuestros sistemas libres. Si sigue aumentando el número de usuarios de software libre las empresas de hardware deberán replantearse sus políticas.
Librerías no libres
Las librerías no libres que pueden ser usadas en sistemas libres no son más que una trampa para los programadores, ya que los programas libres que hagan uso de esas librerías nunca podrán ser completamente libres. Y cuanto más popular se vuelve una librería no libre más peligrosa se vuelve ya que atrae a más programadores desprevenidos.
Un ejemplo conocido es el de la librería Qt, utilizada por el sistema de escritorio KDE. Afortunadamente, hoy en día esta librería también es libre y forma parte plena de nuestros sistemas libres.
No hay que dejarse deslumbrar por las posibles ventajas técnicas que nos pueda ofrecer una librería determinada, ya que lo primero debe ser nuestra libertad y la libertad de los usuarios de nuestros programas.
Patentes de software
Las patentes de software representan el mayor peligro para el software libre, ya que pueden dejar algoritmos y funciones fuera del alcance de los programadores durante veinte años.
¿Cómo se puede luchar contra una patente de software? Se pueden buscar pruebas de su invalidez o se pueden buscar alternativas para desarrollar los programas. Pero si ninguno de estos métodos funciona, si no se puede invalidar la patente ni se puede encontrar una alternativa, deberemos ser capaces de seguir con nuestro trabajo sin usar las funciones patentadas.
Esto no será muy difícil para los que realmente valoren su libertad, pero puede hacer que los que usen sistemas libres por considerarlos técnicamente superiores se replanteen el volver a usar sistemas privativos. ¡No dejemos que ocurra! Debemos seguir hablando de libertad y de principios.
Documentación libre
Igual de importante que disponer de programas libres es el disponer de manuales libres. Igual que un programa se puede usar, copiar y modificar libremente, un manual del programa debe también poderse usar, copiar y modificar libremente. ¿Qué sentido tendría que un programador modificara un programa si despues no pudiera modificar la documentación para explicar qué ha mejorado del programa?
Otra razón para desear documentación libre es la posibilidad de mantener versiones traducidas a varios idiomas. Quizás el programador que modifica un programa solamente conoce un idioma, pero habrá gente dispuesta a ayudar a la comunidad y a traducir esos manuales a sus lenguas respectivas.
Es necesario que los programas libres mantengan su documentación libre.
"La filosofía de Yoda - «No podemos sólo intentarlo» - suena bien, pero no me sirve. He realizado mi trabajo siempre ansioso ante la perspectiva de que no tuviera suficiente capacidad para ello, sin saber si mi labor bastaría para alcanzar el objetivo deseado. Pero lo intenté de todas formas, porque entre el enemigo y mi ciudad sólo estaba yo. Para mi sorpresa, a veces del éxito obtenido."
"En otras ocasiones fracasé. Algunas de mis ciudades han caído. Más tarde descubrí otra ciudad amenazada y me preparé para otra batalla. Con el tiempo, he aprendido a detectar las amenazas y a interponerme entre ellas y mi ciudad, haciendo un llamamiento a otros hackers para unirse a mí."
"Hoy en día, a menudo me encuentro que no estoy solo. La visión de un regimiento de hackers manos a la obra constituye una fuente de alivio y de alegría, y pienso que la ciudad sobrevivirá por el momento. Pero con el transcurso de los años los peligros son cada vez mayores, y ahora Microsoft nos tiene en su punto de mira. No podemos pensar que el futuro de la libertad está asegurado. ¡No os engañéis! Si quieres conservar tu libertad, tienes que estar preparado para defenderla."
Software libre para una sociedad libre (Richard M. Stallman)