Introducción
En cumplimiento de nuestra oferta de asesoramiento a la Comisión de Legislación General, y respondiendo al aliento que en este sentido nos diera el Diputado Dragan, creamos un foro de discusión acerca del proyecto de ley en cuestión, para que personas de todo el país pudieran acceder al texto en su forma actual, y comentar sobre él.
La respuesta ha sido abrumadora y desde el comienzo se produjo un muy fructífero intercambio de ideas. El archivo completo de la discusión se encuentra disponible por Internet bajo:
http://www.grulic.org.ar/pipermail/proposicion/2001-April/thread.html
También hemos llevado el proyecto a discusión al foro técnico más visitado de Internet, donde el proyecto fue muy bien recibido y de donde hemos recogido múltiples sugerencias. El protocolo completo de la discusión internacional se encuentra en:
http://slashdot.org/articles/01/04/28/010216.shtml
Este documento intenta condensar los conceptos vertidos en ambos foros, con el objetivo de auxiliar a los Sres. Diputados en la difícil tarea de legislar en un área técnica tan intrincada como el uso de software.
Comentarios sobre los artículos
Artículo 1º
“Artículo 1º: La Administración Pública Nacional, los Organismos Descentralizados y las Empresas donde el Estado Nacional posea mayoría accionaria emplearán en sus sistemas y equipamientos de informática, exclusivamente programas (software) libres.”
El argumento principal a favor de la obligatoriedad del uso de software libre en las entidades estatales es que constituye la única manera mediante la cual el Estado puede utilizar mecanismos de procesamiento electrónico de datos sin vulnerar la igualdad de los ciudadanos ante la ley, poner en riesgo su privacidad y exponerse a diversas estrategias extorsivas. Desde este punto de vista, limitar la aplicación de la ley a los organismos mencionados en este artículo es insuficiente, ya que también los poderes no administrativos del Estado utilizan software, y por lo tanto perjudican al ciudadano si éste no es libre.
Artículo 2º
“Artículo 2º: Entiéndese por programa (software) libre aquel cuya licencia de uso garantice al usuario, sin costo adicional, las siguientes facultades:
Uso irrestricto del programa para cualquier propósito
Inspección exhaustiva de los mecanismos de funcionamiento del programa
Uso de los mecanismos internos y de porciones arbitrarias del programa para adaptarlos a las necesidades del usuario
Confección y distribución de copias del programa
Modificación del programa, y distribución libre tanto de las alteraciones como del nuevo programa resultante, bajo estas mismas condiciones.”
La definición es correcta. Lamentablemente, podría ser interpretada de manera deliberadamente errónea, como permitiendo software para el que el titular de los derechos de autor garantiza estos derechos al usuario, pero sólo bajo condiciones prohibitivas y plagadas de obstáculos técnicos y económicos.
Para subsanar este problema, sugerimos extender la definición mediante el agregado del siguiente texto:
“Estas facultades presuponen acceso al código fuente del software. Por lo tanto, para calificar un programa como libre, el propietario de sus derechos de autor, si los hubiera, deberá garantizar a los usuarios el acceso a una copia de su código fuente en forma gratuita, o a cambio de una prima de servicio que no podrá ser significativamente mayor al costo habitual de mercado de materiales, mano de obra y logística necesarios para la confección y despacho de dicha copia.”
Artículo 3º
“Artículo 3º.- El programa fuente de cualquier programa libre debe constituir el recurso primario empleado por el programador para modificar e inspeccionar el mismo. Por lo tanto ningún programa que se categorice como libre puede contener cualquier restricción que dificulte su acceso, como tampoco debe poseer etapas intermedias tales como salidas de un pre-procesador o traductor propietario o no libre.”
Este artículo intenta especificar demasiadas cosas demasiado complejas, de modo que termina siendo un tanto confuso en su espíritu.
Si el requerimiento de que el código fuente de todo programa libre esté disponible figura en el Artículo 2º, como proponemos, entonces consideramos oportuno convertir el Artículo 3º en una definición de “código fuente”, y “programa” conceptos para los que sugerimos el siguiente párrafo:
“Artículo 3º.- Entiéndese por código fuente o de origen, o programa fuente o de origen al conjunto completo de instrucciones y archivos digitales originales creados y/o modificados por quien lo programara, más todos los archivos digitales de soporte, como tablas de datos, imágenes, especificaciones, documentación, y todo otro elemento que sea necesario para producir el programa ejecutable a partir de ellos. Como una excepción especial, podrán excluirse de este conjunto aquellas herramientas y programas que ya sean habitualmente distribuídos libremente por otros medios como, entre otros, compiladores, sistemas operativos y librerías. Entiéndese por software o programa a cualquier secuencia de instrucciones usada por una computadora para llevar a cabo una tarea específica o resolver un problema determinado.”
Artículo 4º
“Artículo 4º.- Las licencias de los programas libres que sean utilizados por la Administración Pública Nacional, los Organismos Descentralizados y las Empresas donde el Estado Nacional posea mayoría accionaria deberán, en todos los casos, permitir en forma expresa, modificaciones y trabajos aplicados, así como la distribución irrestricta de estas aplicaciones en los mismos términos que la licencia del programa original.”
Consideramos que las modificaciones que el Dip. Dragan propusiera al Artículo 1º del proyecto de ley original ya contemplan todo lo que este artículo regula, volviéndolo redundante e introduciendo el peligro de contradicción. Nuestra recomendación es eliminarlo.
Artículo 5º
“Artículo 5º.- El Poder Ejecutivo reglamentará en un plazo de ciento ochenta días, las condiciones, tiempos y formas en que se efectuará la transición de los actuales sistemas instalados hacia los programas libres que se caracterizan en los artículos 1º a 4º, y orientará en tal sentido las licitaciones y contrataciones futuras de programas de computación (software) realizadas a cualquier título.”
Nos limitamos a observar un probable error de tipeo, los artículos que se mencionan como caracterizando el software libre no son los del 1º al 4º, sino solamente los 2º y 3º.
Artículo 6º
“Artículo 6º.- A partir de la fecha límite del plazo de transición que establezca el Poder Ejecutivo, los Organismos Públicos Nacionales indicados en el artículo 1º de esta ley, no podrán emplear programas que almacenen sus datos en formatos no públicos, o cuyas licencias:
Impliquen cualquier forma de discriminación a personas o grupos,
No cumplan con los requisitos del artículo 2° precedente
Sean específicas o exclusivas para un producto determinado.”
Creemos que el espíritu de la ley, preservar la seguridad de acceso a la información de la información, estaría mejor representado reemplazando “no podrán emplear programas que almacenen sus datos en formatos no públicos, o cuyas licencias” por una formulación análoga a la siguiente:
“[…]no podrán almacenar información digital en formatos no públicos, ni utilizar programas cuyas licencias:[…]”
Artículo 7º
“Artículo 7º.- Una vez finalizada la fase de transición, cuya duración será reglamentada por el Poder Ejecutivo Nacional, de acuerdo a lo previsto en el artículo 5° precedente, solamente podrá ser efectuada la contratación y utilización de programas de computación libres.”
Recomendamos que las nuevas contrataciones de software comiencen a requerir licencias libres lo más pronto posible, y no esperen a la finalización de la migración.
Artículo 8º
“Artículo 8º.- Invítase a las Universidades Públicas Nacionales, a los Gobiernos Provinciales, Municipales y al Gobierno Autónomo de la Ciudad de Buenos Aires a adherir a esta iniciativa.”
Hemos observado que, de la misma manera que el uso de software no libre por parte del Estado perjudica a los ciudadanos, algunas prácticas comunes en algunas universidades estatales, que fuerzan a los alumnos a utilizar software no libre, perjudican a los estudiantes.
Artículo adicional: excepciones
En el proyecto de ley, en su forma actual, no está prevista una vía de gestión de excepciones para aquellos casos en los que no exista una solución libre adecuada para ser aplicada a una necesidad particular. Recomendamos regular esta situación de acuerdo al siguiente espíritu:
“Artículo nº.- En caso de no existir una solución libre apropiada a una necesidad concreta, las entidades estatales tendrán abiertos los siguientes cursos de acción:
a. Si tampoco existe una solución no libre a la necesidad en cuestión, y debe ser contratado su desarrollo, el autor del programa resultante del contrato deberá transferir el derecho de autor al Estado, que lo publicará como software libre. b. Si existen soluciones no libres al problema, la entidad podrá gestionar ante la Secretaría de Comunicaciones e Informática un permiso temporario de utilización de software no libre. La selección del producto deberá ser realizada de acuerdo al siguiente orden de preferencia:
Programas gratuitos, no libres, que cumplen con los primeros cuatro criterios enumerados en el Artículo 1º, pero no con el quinto criterio. Programas gratuitos, no libres, para los que existe un proyecto libre avanzado para su reemplazo compatible. Programas no gratuitos, no libres, para los que existe un proyecto libre avanzado para su reemplazo compatible. Programas que almacenan sus datos primariamente en formatos públicos. Otros programas.
Sólo en el caso 1., el permiso de uso del programa no libre podrá ser definitivo. En los casos 2. y 3., el permiso caduca automáticamente en el momento en que el producto libre pasa a estar disponible con la funcionalidad necesaria para satisfacer la necesidad concreta. En los demás, el permiso caducará periódicamente con un plazo de validez no mayor a los dos años, y deberá ser renovado luego de constatar que aún no existe una solución libre al problema. El proceso de autorización será público, a través del Boletín Oficial de la Secretaría de Comunicaciones e Informática. En los casos en que la entidad pública planee utilizar el programa no libre para almacenar o procesar datos confidenciales o críticos para el desempeño del Estado, la Secretaría de Comunicaciones e Informática publicará en su boletín, adicionalmente un informe acerca de los riesgos asociados con el uso de software no libre en esa área específica.”
Artículo adicional: responsabilidades
Recomendamos incluir en la ley un artículo fijando la responsabilidad por el cumplimiento de la ley en cada organismo público, de acuerdo al siguiente espíritu:
“Artículo nº.- Dentro de cada organismo estatal, la máxima autoridad técnica junto con la máxima autoridad del organismo son solidariamente responsables por el cumplimiento de esta ley.”
Agradecimientos
Este documento no hubiera sido posible de no ser por la inapreciable colaboración del Grupo de Usuarios de Linux en Córdoba (GrULiC ), de todos los participantes del foro de discusión (proposicion@grulic.org.ar), y muy especialmente de Marcelo Baldi, César Ballardini, Carlos Bederian, Ulises Cerviño Beresi, Fernando Cuenca, Marcos Dione, Flavia Dzodan, Lucas Di Pentima, John Lenton, Eben Moglen, Daniel Moisset, Alfredo Rezinovsky, Diego Saravia, Javier Smaldone, Inés Sombra, Richard Stallman y Juan Carlos Vazquez.