Del Software Libre y la importancia de desarrollar aplicaciones bajo criterios éticos

Anteriormente hablamos sobre la diferencia entre software libre y código abierto, estableciendo que estas diferencias no van más allá del plano ideológico, siendo el termino código abierto solo otra forma de referirse al software libre, sin embargo se dejo pendiente el discutir sobre las implicaciones de usar uno u otro.

El problema cuando se habla de la libertad, es que la mayoría de nosotros da por hecho que se es libre por derecho y no se considera posible que de hecho la libertad es algo que puede perderse; hace tanto tiempo que en los países cuyos ciudadanos son libres el día de hoy, se lucho y se pago con sangre y vidas esa libertad, que se ha borrado de la memoria colectiva la necesidad de vigilar constantemente que nadie haga algo para arrebatárnosla y cuando alguien dice algo sobre esto, es tomado por paranoico. Por otro lado, cuando de software se trata, los desarrolladores de aplicaciones privativas han llevado a cabo un esfuerzo enorme por convencernos de que una computadora es algo así como una licuadora o una lavadora, lo que hace más difícil para muchos comprender como es que un electrodoméstico que de hecho no es capaz de retener a nadie de forma alguna pueda vulnerar la libertad de alguien; bien, recordemos que cuando hablamos de software libre, estamos hablando de una libertad muy especifica, la libertad del individuo como usuario de computadoras, y que en adelante denominaremos la «libertad del usuario», o también, «libertad de uso».

Cuando un usuario se encuentra frente a la computadora realizando una actividad X, por lo general esta convencido de que la computadora esta haciendo lo que él quiere que haga; Federico Heinz nos advierte al respecto en su obra “Monopolios artificiales sobre bienes intangibles” que

…la computadora no obedece al usuario, porque no tiene la más remota sospecha de qué es lo que el usuario le ordena, ni siquiera sabe si el usuario está allí. La computadora obedece instrucciones ciegamente, sí, pero no las del usuario, sino las del autor del programa. Es éste el que determina qué debe hacer la computadora en respuesta a cada “orden” del usuario. Cuando el autor comete un error en la confección del programa, u omite alguna función que el usuario necesita, la computadora produce resultados inesperados, o es incapaz de llevar a cabo la tarea.

En principio, esto otorga al autor del programa un gran poder de control sobre el usuario, ya que puede escribir su programa de tal forma que imponga límites arbitrarios a lo que el usuario puede hacer, o incluir funciones ocultas, dañinas a los intereses del usuario.

O en otras palabras, es el programador y no el usuario quien tiene el control sobre lo que la computadora hace, siendo el programador entonces quien hace ejercicio de la libertad de uso sobre un equipo que es propiedad del usuario y de forma indirecta, ejerciendo control sobre este. Esto es cierto, bien sea que el usuario use software libre o use software privativo.

Ante esto cabe preguntarse, ¿qué importancia tiene entonces el uso de software libre, si para quien solo se dedica a usar la computadora esto no parece hacer alguna diferencia? Si hay una diferencia, y se trata de una grande, o mejor dicho algunas grandes diferencias.

Dejando de lado el tema del uso sin autorización de copias de software privativo o la mal llamada piratería informática (es pirata aquel que ataca o secuestra naves, y para ello no se requiere el uso computadoras), para hacer uso de un programa publicado bajo una licencia de software privativo, el usuario es obligado en primer lugar a aceptar un contrato de adhesión, en el cual se compromete a hacer uso del software bajo los términos y restricciones establecidas unilateralmente por el dueño de los derechos de autor (que no necesariamente es quien escribió el programa), que entre otras cosas obliga al usuario a asumir el compromiso de no distribuir copias del programa y a renunciar a la posibilidad de estudiar como funcionan los programas para corregir errores que puedan afectar el funcionamiento del equipo, o añadir características que le permitan hacer más productiva su computadora.

La principal y más importante consecuencia de aceptar los términos de una licencia de software privativo desde el punto de vista práctico, aunque sea en cierta medida la que menos pueda llegar a preocupar a la mayoría de los usuarios, es que no se tiene ningún control sobre lo que la computadora hace o como lo hace, y si el programa tiene algún error, el usuario no tiene más alternativa que esperar a que el problema sea corregido si es que alguna vez se corrige. Muchas son las ocasiones en que un usuario que se pone en contacto con una empresa desarrolladora de software privativo por algún error en algún programa, recibe como respuesta que el problema ya fue corregido en la nueva versión, así que solo debe actualizar y por supuesto, pagar por la nueva licencia de software, o peor aun, le indican que ya se conoce el error y que se encuentran trabajando en su corrección, cosa que puede o no ser cierta. La razón por la que las compañías que desarrollan software privativo son tan indiferentes a los problemas que el usuario pueda tener con sus programas, es que al contrario de lo que muchos usuarios piensan, los programas privativos incluyen clausulas en sus licencias que estipulan que el software se distribuye tal y como esta, y sin ningún tipo de garantía.

Es necesario dejar claro, que las licencias de software libre incluyen también clausulas similares, sin embargo, un usuario de software libre que se vea en una situación similar, puede que reporte el error a los desarrolladores y podría darse el caso en que jamás es corregido, bien porque el problema puede resolverse si el usuario toma determinadas medidas, o porque el programa tenga errores más importantes de los que el desarrollador prefiere ocuparse, pero el usuario siempre tendrá la alternativa de estudiar el programa y corregir el problema por si mismo, o pagar a un programador para que lo haga por él, porque si bien como se dijo, el usuario de software libre también se encuentra a la merced del programador, a diferencia del usuario de software privativo, este puede en cualquier momento tomar el control de su computadora.

Por otro lado, desde el punto de vista moral, el prohibir a los usuarios compartir los programas termina por convertirse en un problema social y ético, dado que al usuario se le obliga a decidir entre cumplir con un contrato entre su persona y una compañía, o ser solidario con su vecino, y sin importar la decisión que se tome, se encontrara incurriendo en una falta; porque si el usuario decide infringir el contrato y ayudar a su vecino proporcionándole una copia del programa, entonces ha infringido la ley y no puede ser bueno una sociedad en la que sus integrantes piensan que hay ocasiones en que las leyes se pueden romper, y si por el contrario, el usuario decide cumplir con el contrato, entonces la ley le esta negando una de las cualidades más importantes del ser humano, el ser solidario con sus semejantes, y esto tampoco puede ser bueno. Por supuesto, si se debe elegir entre dos males, lo mejor es elegir el mal menor, y ayudar a tu vecino; pero sin lugar a dudas lo mejor, es no tener que elegir.

A las grandes empresas les gusta más el termino código abierto, porque mantiene al margen este asunto; ellos saben que en la misma medida en que el usuario este consciente de las implicaciones éticas intrínsecas al uso de programas privativos, tendrán que asumir una mayor responsabilidad en estos temas. Es por ello que invierten tanto tiempo y dinero en mantener a la mayor parte de la población de usuarios convencida de que estos temas no son relevantes y que la única forma de disfrutar de la tecnología tal y como la conocemos hoy, es permitirles tener el control sobre esta, y por ende de sus usuarios. Lamentablemente, muchos desarrolladores de software libre les siguen el juego por la comodidad de acceder a las soluciones que estos proporcionan, y por tener mejores oportunidades de negocios con las grandes compañías y no es que tenga algo en contra de que alguien haga mucho dinero con el software libre, estoy en contra de que para ello socaven la libertad del usuario.

Ya para terminar, es claro que desde la perspectiva del usuario que solo se dedica a usar la computadora, no existe mayor diferencia entre usar software libre o usar software privativo, al menos no más allá del hecho de que si decide compartir los programas, en el primer caso esta autorizado para hacerlo, mientras que en el segundo estaría eligiendo entre el menor de dos males. Así que para este, se trata de decidir en manos de quien esta poniendo su computadora para que tenga el control de uno de los muchos aspectos de su vida, y si bien aun con el software libre algunos se dan a la tarea de mantener al usuario al margen del tema ético hablando de código abierto en su lugar y restando importancia a la libertad del usuario, es muy poco probable que una aplicación de software libre tenga funciones ocultas que perjudiquen al usuario, dado que muchos tendrán acceso al código y más temprano que tarde alguien lo pondrá al descubierto, mientras que con el software privativo, un desarrollador que haga esto tiene todas las de ganar.

Acerca de Henry D. Sierra R.

Buscador de la Verdad, Ingeniero Electrónico y entusiasta del Software Libre.
Esta entrada fue publicada en Reflexión, Software libre. Guarda el enlace permanente.

6 respuestas a Del Software Libre y la importancia de desarrollar aplicaciones bajo criterios éticos

  1. Hola pedazo… ¡Como estas!, no sabia que tenias un foro.
    De hueva el articulo, esta tan largo que casi y no lo acabo, ¿Que no has aprendido nada de MuyWindows? y pensar que lo visitas seguido.

    Bueno mi comentario: Creo y después de leerte lo mejor que pude. La solución a mi ver es que todo software tenga una parte abierta y libre, y una parte privada y licenciada.

    Ah por cierto: Recientemente encontré un compilador de C++ en español. Me gustaría y si tienes tiempo le hagas un comentario en tu foro, te dejo el link: http://zinjai.sourceforge.net

    Me gusta

    • hsierra dijo:

      ¿Que no has aprendido nada de MuyWindows?

      La verdad, no gran cosa. 😉

      Bueno mi comentario: Creo y después de leerte lo mejor que pude. La solución a mi ver es que todo software tenga una parte abierta y libre, y una parte privada y licenciada.

      No veo como esto solucionaría lo planteado en el articulo.

      Ah por cierto: Recientemente encontré un compilador de C++ en español. Me gustaría y si tienes tiempo le hagas un comentario en tu foro…

      Bien, lo revisare y si consigo alguna forma de meterlo dentro de la temática del blog, haré lo posible.

      Me gusta

  2. Te comento lo del compilador pues pienso que es la parte mas importante del software. Tal vez y mas que el sistema operativo. Pues es el compilador y su documentación, en especial esta ultima, las que hacen al software lo que es hoy en día. También me gustaría saber que piensas de esto. Te leo luego…

    Me gusta

  3. ¿Que estuvo mal? por que borraste mi comentario.

    Me gusta

    • hsierra dijo:

      Como puedes ver, no te los he borrado. El asunto es que el blog esta alojado en wordpress.com por lo tengo acceso limitado a la configuración del mismo, o en otras palabras, solo puedo configurarlo de acuerdo a lo que wordpress.com me permite, y para que los comentarios de alguien aparezcan, al menos debe tener un comentario aprobado por mi. Así que de ahora en adelante tus comentarios se publicaran de inmediato.

      Me gusta

  4. TheUnixDynasty dijo:

    Gracias por la confianza.

    Me gusta

Deja un comentario