English [en]   español [es]   français [fr]   русский [ru]  

Esta es una traducción de la página original en inglés.

¿Está bien en algunos casos utilizar un programa que no sea libre?

por Richard Stallman

Si ejecuta en su ordenador un programa que no es libre, el programa coarta su libertad. El principal afectado es usted. El hecho de usarlo puede perjudicar a otros indirectamente, al alentar el desarrollo de ese programa privativo. Si promete no redistribuir el programa a otras personas, hace mal, ya que romper esa promesa es malo y mantenerla es aún peor. De todos modos, el principal afectado directo es usted.

Aún peor es si recomienda o induce a otras personas a utilizar el programa privativo, ya que de esa manera las conduce a renunciar a su libertad. De modo que lo que debemos evitar con mayor firmeza es animar o empujar a otras personas a usar software que no es libre (cuando un programa implementa un protocolo secreto para la comunicación, como es el caso de Skype, el hecho de utilizarlo implica que estamos forzando a otras personas a que hagan lo mismo, así que es muy importante rechazar por completo todo uso de este tipo de programas).

Pero existe una situación en particular en la que utilizar un programa privativo, e incluso instar a otras personas a que lo hagan, puede ser algo positivo. Se trata de aquellos casos en los que la utilización de un programa privativo tiene como objetivo terminar con el uso de ese mismo programa privativo.

En 1983 decidí desarrollar el sistema operativo GNU como un sustitutivo libre para Unix. La única manera viable para lograrlo era escribir y probar los componentes uno a uno en Unix. Pero, ¿era legítimo usar Unix para esto? ¿Era legítimo pedir a otras personas que usaran Unix con esta finalidad, teniendo en cuenta que Unix era software privativo? Está claro que si no hubiera sido privativo, no habría sido necesario sustituirlo.

Llegué a la conclusión de que era legítimo que yo sugiriera a otros desarrolladores que usaran Unix para terminar con el uso de Unix. Lo equiparaba a una pequeña participación en alguna actividad perversa, como una banda criminal o una campaña política deshonesta, con el objetivo de sacarla a la luz y acabar con ella. Si bien participar en la actividad misma está mal, acabar con ella justifica cierta participación marginal menor, equiparable a la simple utilización de Unix. Este argumento no justificaría convertirse en un cabecilla, pero yo sólo estaba considerando utilizar Unix, no ponerme a trabajar para su equipo de desarrollo.

La tarea de reemplazar Unix se completó cuando el último componente esencial fue reemplazado por Linux, el núcleo que Linus Torvalds empezó a desarrollar en 1991. Seguimos añadiendo software al sistema GNU/Linux, pero para eso ya no es necesario utilizar Unix, de modo que ya no hay ninguna razón para volver a usarlo. Así pues, cuando se utilice un programa privativo por razones de este tipo, oportunamente se debe reconsiderar si sigue siendo necesario.

Sin embargo, aún tenemos que reemplazar otros programas privativos y a menudo surge la misma pregunta. ¿Deberíamos servirnos del controlador privativo de un periférico para desarrollar un reemplazo libre? O, concretamente, ¿es ético que sugiramos a los demás que lo hagan? Sí, por supuesto. ¿Está bien ejecutar código JavaScript que no sea libre en una página web a fin de presentar una queja a los administradores para que lo liberen o hagan que el sitio funcione sin él? Indudablemente, pero además de eso, hay que tener instalado LibreJS para que bloquee dicho código.

Pero esta justificación no puede llevarse mucho más lejos. Quienes desarrollan software que no es libre, incluso software con características maliciosas, a menudo intentan excusarse alegando que financian el desarrollo de software libre. Sin embargo, una empresa que está básicamente mal no puede ser legitimada por el hecho de que destine una parte de sus beneficios a una causa noble. Por ejemplo, algunas de las actividades de la Fundación Gates (no todas) son loables, pero no justifican la trayectoria de Bill Gates, o de Microsoft. Si la empresa trabaja en el sentido opuesto de la causa noble con la que intenta legitimarse, incurre en contradicción y debilita la causa.

Incluso cuando se trata de desarrollar software libre en general es mejor evitar, y no aconsejar a otros, el uso de software que no es libre. Por ejemplo, no deberíamos pedir a nadie que use Windows o MacOS para desarrollar aplicaciones libres que funcionen en esos sistemas. Como desarrollador de Emacs y GCC, acepté cambios para que pudieran ejecutarse en sistemas que no son libres como VMS, Windows y MacOS. No había razón alguna para rechazar ese código, aun cuando para escribirlo había que ejecutar sistemas que no eran libres. Si utilizaban sistemas injustos nos es porque yo se lo pidiera o sugiriera, ellos ya los estabas utilizando antes de empezar a escribir modificaciones para GNU. También se ocuparon de empaquetar versiones para tales sistemas.

La excepción de «desarrollar su propio reemplazo» es válida dentro de unos límites y es crucial para el progreso del software libre, pero debemos resistirnos a llevarla demasiado lejos, no sea que se convierta en la excusa general para cualquier actividad rentable con software que no sea libre.


A veces en una máquina es necesario utilizar e incluso actualizar un sistema que no es libre a fin de instalar en esa máquina un sistema libre. No se trata exactamente del mismo problema, pero son válidos los mismos argumentos: es legítimo recomendar ejecutar software privativo momentáneamente con el fin de eliminarlo.

VOLVER ARRIBA


[Logotipo de la FSF]«Nuestra misión es preservar, proteger y promover la libertad de usar, estudiar, copiar, modificar y redistribuir programas de ordenador, así como defender los derechos de los usuarios de software libre.»

La Free Software Foundation es la principal organización que patrocina el Sistema Operativo GNU. Apoye a GNU y la FSF mediante la compra de manuales y otros artículos, uniéndose a la FSF como miembro asociado o haciendo una donación, ya sea directamente a la FSF o mediante Flattr.