Uso del software libre en el Estado, parte I

Esta es la primera de una serie de posts relacionados con una temática que me parece que es crucial para todos los países: el uso del software libre en el Estado.

¿Por qué puede ser beneficioso utilizar software libre en el Estado? ¿Qué dificultades y problemas generaría? ¿Cuáles serían los costos de semejante migración? ¿Esta migración es necesaria sólo por una cuestión ideológica/filosófica o también por razones económicas y prácticas?

¿Qué es el software libre?

El software, como mercadería, por lo general no está a la venta. Lo que el usuario adquiere, a través de una erogación monetaria o sin ella, es una licencia respecto de los usos que puede dar a los programas en cuestión. Nótese que esto es a diferencia de, por ejemplo, un libro o un disco, mercaderías en las que el cliente adquiere título real sobre algo que puede prestar, regalar, revender, citar, alquilar, resumir, etc.: al “comprar un programa”, el usuario por regla general no adquiere derecho de propiedad alguno, en muchos casos ni siquiera pasa a ser propietario del medio magnético u óptico en el que el sofware es entregado, que continúa siendo propiedad del autor original.

La licencia de uso de un programa en particular regula las maneras en las que el usuario puede utilizarlo. Si bien la variedad de tipos de licencia abarca todo el rango de posibilidades, desde las condiciones más leoninas hasta las más liberales, se las puede clasificar en dos grandes categorías: por un lado están las licencias conocidas como “libres”, y por otro las “privativas”. La gran diferencia entre estos tipos de licencia consiste en que un software licenciado de modo privativo por lo general otorga al usuario solamente el derecho de ejecutar el programa “tal como es” (es decir, con errores incluídos) en determinada computadora, prohibiendo expresamente todo otro uso, mientras que el software gobernado por una licencia libre permite al usuario no solo ejecutar el programa en tantas computadoras como desee, sino también copiarlo, inspeccionarlo, modificarlo, mejorarlo, corregir errores y distribuirlo, o contratar a alguien para que lo haga por él.

Según la Free Software Foundation, el software libre se refiere a la libertad de los usuarios para ejecutar, copiar, distribuir, estudiar, cambiar y mejorar el software; de modo más preciso, se refiere a cuatro libertades de los usuarios del software: la libertad de usar el programa, con cualquier propósito; de estudiar el funcionamiento del programa, y adaptarlo a las necesidades; de distribuir copias, con lo cual se puede ayudar a otros y de mejorar el programa y hacer públicas las mejoras, de modo que toda la comunidad se beneficie (para la segunda y última libertad mencionadas, el acceso al código fuente es un requisito previo).

La privacidad y el procesamiento de datos

Para cumplir con sus funciones, el Estado debe almacenar y procesar información relativa a los ciudadanos. La relación entre el individuo y el Estado depende de la privacidad e integridad de estos datos, que por consiguiente deben ser adecuadamente resguardados contra tres riesgos específicos:

  • Riesgo de filtración: los datos confidenciales deben ser tratados de tal manera que el acceso a ellos sea posible exclusivamente para las personas e instituciones autorizadas.
  • Riesgo de imposibilidad de Acceso: los datos deben ser almacenados de tal forma que el acceso a ellos por parte de las personas e instituciones autorizadas esté garantizado durante toda la vida útil de la información.
  • Riesgo de manipulación: la modificación de los datos debe estar restringida, nuevamente, a las personas e instituciones autorizadas.

La concreción de cualquiera de estas tres amenazas puede tener consecuencias graves tanto para el Estado como para el individuo. Cuando los datos son procesados electrónicamente, su vulnerabilidad a estos riesgos está dada por el software que lo procesa.

El software libre permite al usuario la inspección completa y exhaustiva del mecanismo mediante el cual procesa los datos. El interés en el mecanismo de procesamiento es mucho más que académico. Sin la posibilidad de la inspección, es imposible saber si el programa cumple meramente con su función, o si además incluye vulnerabilidades intencionales o accidentales que permitan a terceros acceder indebidamente a los datos, o impedir que los usuarios legítimos de la información puedan usarlo. Este peligro puede parecer exótico, sin embargo es muy concreto, y hay antecedentes documentados.

El hecho de permitir la inspección del programa es una excelente medida de seguridad, ya que al estar expuestos los mecanismos, estos están constantemente a la vista de profesionales capacitados, con lo que se vuelve inmensamente más difícil ocultar funciones maliciosas, aún si el usuario final no se toma el trabajo de buscarlas él mismo.

Al adquirir una licencia de uso de software privativo, en cambio, el usuario obtiene el derecho a ejecutar el programa en una computadora, pero no a conocer el mecanismo mediante el que el programa opera. Un elemento esencial de toda licencia privativa es la prohibición expresa al usuario de acaso intentar descubrir la manera en la que el programa funciona. Esta limitación puede ser razonable para un programa de juego, pero es inaceptable en todos aquellos casos en los que el programa maneja información útil, ya que al estar impedido de inspeccionarlo, al usuario sólo le queda la posibilidad de confiar en que sus proveedores, y también todos y cada uno de los empleados de sus proveedores, e incluso las entidades gubernamentales bajo las que su proveedores operan, se comporten de manera impecable y priorizando la seguridad del cliente aún por encima de sus propios intereses comerciales, nacionales o estratégicos. Esta confianza ya ha sido rota repetidas veces.

La independencia tecnológica y la “neutralidad” de la red

Son muchas y conocidas las ventajas aportadas por la adopción de herramientas de procesamiento de datos. Pero una vez comenzada la informatización de una tarea, la computadora se vuelve imprescindible, y la tarea pasa a depender de su disponibilidad. Si la institución que usa la aplicación no tiene libertad de contratación en lo que se refiere a ampliaciones y correcciones del sistema, se produce una dependecia tecnológica en la que el proveedor está en condiciones de dictar unilateralmente términos, plazos y precios.
Una forma particularmente insidiosa de esta dependencia tecnológica se produce a través de la manera en que se almacenan los datos. Si el programa usa un formato de almacenamiento estándard, entonces el usuario puede estar seguro de que en el futuro podrá seguir descifrando la información. Si, por el contrario, los datos se almacenan en un formato secreto, el usuario queda atrapado en un determinado proveedor, que es el unico que puede ofrecer alguna garantía de acceso a ellos.

Las licencias libres no solo habilitan al usuario para la ejecución del software, sino que le permiten utilizarlo de muchas otras maneras. Entre ellas, el usuario tiene derecho a inspeccionar el programa a su antojo, y por ese sencillo mecanismo (si no por otros más poderosos, como la adhesión a standards), transparenta los formatos de almacenamiento de datos, de modo que el usuario tiene la tranquilidad de que siempre podrá acceder a ellos, y de que los desarrolladores de programas que interactúan con los suyos siempre dispondrán de documentación completa y correcta para asegurar una comunicación sin problemas.

Además, el software libre permite al usuario corregir y modificar el programa para adecuarlo a sus necesidades. Esta libertad no está destinada solamente a los programadores. Si bien son éstos los que pueden capitalizarla en primera mano, los usuarios también se benefician enormemente, porque de esta manera pueden contratar a cualquier programador (no necesariamente al autor original) para que corrija errores o añada funcionalidad. Las personas que puede contratar no sólo no tienen exclusividad alguna sobre la posibilidad de contratación, sino que tampoco la adquieren a partir de sus modificaciones. De esta manera, el usuario puede asignar sus recursos a resolver sus necesidades de acuerdo a sus propias prioridades, pidiendo varias cotizaciones y quedándose con aquella que le ofrezca mejor relación precio/prestación, sin exponerse a chantajes y extorsiones.

De la misma manera, valiéndose del mismo mecanismo de almacenar datos en formatos secretos que pueden cambiar a discreción, sin necesidad de autorización, los productores de software privativo periódicamente obligan a sus clientes a adquirir actualizaciones innecesarias de sus programas. El recurso es simple: comercializan una versión nueva del producto, y retiran la vieja del mercado. La nueva versión usa un nuevo formato, incompatible con el anterior. El resultado es que el usuario, aún si está conforme con las prestaciones de la versión con la que cuenta, no tiene más remedio que adquirir la versión más “moderna”, porque es la única forma que tiene de leer los archivos que le envían sus conocidos y colegas que tienen la versión nueva. 

El formulario lo llenás pero con esta marca de lapicera…

Uno de los ejemplos más patéticos de esta dependencia tecnológica puede verse en la misma legislación argentina. Desde hace un tiempo, la AFIP exige a los contribuyentes la presentación de diversas declaraciones en formato digital. La idea, por cierto, es razonable, pero la manera en la que la AFIP la implementó es tal que exige que la presentación sea hecha exclusivamente a través de la ejecución de programas específicos provistos por esa organización. Estos programas, es cierto, son gratuitos, pero entre sus requerimientos de ejecución se incluyen, como sistemas operativos, exclusivamente “Windows 95, 98 o superior”. Es decir que el Estado está exigiendo a los ciudadanos que compren un determinado producto de un determinado proveedor al solo fin de poder cumplir sus obligaciones impositivas. Esto es equivalente a dictar que los formularios no digitales sólo pueden ser completados usando lapiceras fuente marca “Mont Blanc”.

Dependencia tecnológica = atraso

Si el usuario está habilitado para ejecutar un programa, pero no para inspeccionarlo ni modificarlo, entonces no puede aprender de él, se vuelve dependiente de una tecnología que no sólo no comprende sino que le está expresamente vedada. Los profesionales de su entorno, que podrían ayudarlo a alcanzar sus metas, están igualmente limitados: como el funcionamiento del programa es secreto, y su inspección está prohibida, no es posible arreglarlo. De esa manera, los profesionales locales ven sus posibilidades de ofrecer valor agregado cada vez más limitadas, y sus horizontes laborales se estrechan junto con sus chances de aprender más.

Lamentablemente, los profesionales locales no pueden dar respuesta a estos problemas, porque el conocimiento necesario para darla está restringido a los empleados del propietario de los programas en juego. Es cierto: los propietarios ofrecen onerosos cursos en los que capacitan profesionales para resolver problemas, pero ellos dictan la profundidad de esos cursos, nunca revelan todos los detalles, y no proveen ninguna manera de corroborar que lo que enseñan es realmente correcto. En suma, nadie sabe exactamente qué pasa, solamente sospecha. Y aún si una de estas sospechas fuera correcta, aún en el improbable caso de que alguien, fortuitamente, descubriera la causa de un determinado error y pudiera eliminarlo para siempre… ¡Tendría prohibido hacerlo!

El software libre fomenta el desarrollo local

Al usar software libre, que los profesionales pueden analizar a fondo, comprender y mejorar, el usuario queda en posición de poder exigirle al personal de soporte que los sistemas cumplan su tarea a la perfección. Ya no cabe la excusa “lo que pasa es que se cae el XXX”, donde XXX es cada día una nueva y oscura componente sobre la que el profesional no tiene control, y por ende responsabilidad. Aquí está todo abierto, todo el que quiere puede aprender, todo el que quiere puede colaborar, y si alguien no sabe es porque no quiso aprender, no porque alguien le ocultó la información necesaria para cumplir con su tarea.

Es cierto que no existen aún soluciones libres para todas la necesidades de los usuarios. Si vamos al caso, tampoco existen soluciones privativas para todas las necesidades. En aquellos casos en que la solución libre no existe, hay que desarrollarla, lo que significa esperar a que alguien más tropiece con la necesidad y lo desarrolle, o desarrollarlo uno mismo (o lo que es igual, pagar para que alguien lo desarrolle). La diferencia está en que en aquellos casos en que sí hay una solución libre disponible, el usuario puede utilizarla inmediatamente y sin reparos de ningún tipo, mientras que con las soluciones privativas siempre tiene que pagar, y lo que obtiene a cambio es una “solución” cerrada y secreta, en vez de una herramienta que le permita crecer y operar con seguridad y libertad.

El software libre sienta las bases para un desarrollo sólido y autónomo de los profesionales locales que ofrecen soluciones.

Fuentes:

  • http://proposicion.org.ar/doc/razones.html, por Federico Heinz.
  • Wikipedia.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.