17 de octubre de 2012

La Comunidad de Software Libre tiene mucho que decir sobre seguimiento y control

¿Sabe usted qué es Linux?

Así como Windows es un sistema operativo para computadoras, también existen otros sistemas operativos. Microsoft Windows es un producto comercial y su código fuente (las órdenes escritas por seres humanos, que le indican al computador cómo funcionar) es un secreto industrial. Linux, en cambio, es software libre, y su código fuente es público y abierto.

Quince millones de líneas de código como estas permiten que existan
celulares Android o computadoras Canaimitas.
Linux es el núcleo de sistema operativo que usan las Canaimitas, los servidores de Google o tu celular Android, y está compuesto por más de 15 millones de líneas de código, escritas por decenas de miles de desarrolladores de todo el mundo a lo largo de 20 años. Linux es muy complejo, y, sin embargo, es sólo uno de los cientos de componentes que podemos encontrar en Canaima, Ubuntu o Android.

Trate de imaginarlo: ¿Cómo organizar a decenas de miles de personas para que fabriquen una máquina con millones de engranajes, y que al final todo funcione a la perfección? Eso es lo que hacen cotidianamente los que trabajan colaborativamente en el mundo del Software Libre.

La tecnología no es la solución a todos los problemas, pero es una herramienta importantísima para lograr que las personas podamos hacer seguimiento y contraloría social. El software libre es muy eficiente, tiene un porcentaje muy bajo de errores y es prácticamente libre de virus. ¿Cómo se ha logrado eso en el software libre? ¿Cómo podemos replicar esa experiencia al mundo real, concretamente al mundo de las obras de nuestro gobierno bolivariano, que a veces cuesta tanto terminar, o a veces comienzan de forma gloriosa pero luego comienzan a padecer de problemas indeseables? Si Linux, que es tan complejo, funciona tan bien, ¿por qué no hemos podido solucionar cosas mucho más sencillas?

Bien. Una de las ventajas del software libre es que la gente puede aportar mejoras y correcciones a los programas. Para facilitar esa tarea, se han creado, a lo largo de los años, muchas herramientas para permitir que la gente pueda entregar esas mejoras y pueda reportar errores y problemas. Se denominan "bug trackers" (aplicaciones para seguimiento de errores).

Bugzilla es uno de los "bug trackers" más populares.
Si usted encuentra un error en Linux o en cualquier herramienta de software libre, sólo tiene que ir a la página web del desarrollador y buscar en el bug tracker si ese error había sido reportado. Si nunca había sido reportado, usted puede crear un usuario (como en Facebook) y colocar un reporte del error que usted encontró, describiendo el problema, los mensajes de error y otros detalles. Si el error ya había sido reportado, usted puede añadir detalles adicionales que no habían sido señalados por quien abrió el reporte, e incluso discutir las soluciones.

Linux NO ES un proyecto caótico y anárquico. Tiene líderes, responsables y personas en diferentes niveles de jerarquía que deciden hacia donde va el proyecto, cuándo se hacen las cosas y qué se aborda en cada versión. Deciden qué mejoras y correcciones se aceptan, o cuales requieren ajustes antes de ser aceptadas. Hay mucha discusión. En otras palabras, no es un proyecto totalmente horizontal, pero tampoco es absolutamente vertical.

En cada proyecto hay personas responsables de revisar los errores reportados por la gente. Dependiendo de la gravedad de estos problemas y lo fácil o difícil que sea solucionarlos, estos responsables los enfrentan inmediatamente, los delegan a otras personas o discuten ampliamente cómo abordarlos, colocando una "marca" que indica el estatus del mismo.

Ahora, imaginemos que algo parecido se creara para nuestro gobierno, para hacer seguimiento y control a los proyectos, a nuestras oficinas públicas, a los centros de alimentación y salud, etc. Imaginemos una gran página web de un ente de seguimiento o contraloría, que incluya  todas las obras del gobierno bolivariano: aquellas hechas y aquellas en construcción.

Ahora, imaginemos que usted quiere reportar un problema: Por ejemplo, quiere reportar que el Pdval de Los Dos Caminos (ficticio) no tiene pollo desde hace un mes. Sencillamente ingresa a la página web de seguimiento, hace click en el botón "Quiero reportar un problema", y se le pregunta la categoría. Por ejemplo:
  • Alimentación
  • Banca
  • Obras en construcción
  • Seguridad ciudadana
  • Salud
  • Vivienda
Usted selecciona "Alimentación" y entonces el sistema le pregunta:
Usted quiere reportar problemas en:
  • ¿Un Pdval?
  • ¿Un Mercal?
  • ¿Café Venezuela?
  • ¿Otros?
Señale la primera opción, y entonces la página le mostrará un mapa de Venezuela, donde podrá ubicar el Pdval de Los Dos Caminos. Allí se le muestra una lista de problemas reportados; si alguien más ha reportado que en ese Pdval no hay pollo, simplemente añada una respuesta:

Pdval Los Dos Caminos
Problemas reportados recientemente:
  • Juancho Pérez (15 de oct 2012): Desde hace días no encuentro pollo.
  • María Tovar (15 de oct 2012): Hasta hace un mes sí lo conseguía, pero de pronto dejó de venir.
  • Luigino Bracci Roa (16 de oct 2012): Es cierto, la atención es muy buena pero voy todos los martes y jueves y no encuentro pollo.
Para algunos, el que el sistema muestre los problemas públicamente es una debilidad, pues -dicen ellos- nuestros enemigos mediáticos verán los lugares con más problemas y nos atacarán. Pero este es un sistema diseñado para denunciar y resolver fallas... si las fallas no se van a resolver, entonces tienen razón: no hagamos este sistema, no resolvamos los problemas y sentémonos a esperar hasta que Leopoldo López gane las elecciones en 2018.

Pero la idea es que las fallas se solventen. Imagine que colocamos a un trabajador del ministerio de Seguimiento, digamos a Pedrito Pinzón, a revisar las fallas reportadas. Pedrito abre el sistema, y entonces encuentra que 25 personas abrieron reportes denunciando que no hay pollo en el Pdval de Los Dos Caminos. Pedrito notifica a su supervisor, quien llama al director del Pdval, éste le explica lo que pasa (supongamos que el problema es que su distribuidor no le ha mandado el pollo) y entonces se toman las acciones para resolver el problema. 

Nada será más agradable para esas 25 personas que recibir un email diciéndoles: 
"Apreciado camarada,
Hemos conversado con Juan Tovar, coordinador del Pdval de Los Dos Caminos, en torno a los problemas con la existencia de pollo en dicho establecimiento. Él refirió problemas desde la Distribuidora CASA que ya hemos ubicado y solucionado. Si la semana que viene no encuentra pollo, por favor vuelva a abrir un reporte. 
Muchas gracias por ayudarnos a mejorar la eficiencia de nuestro gobierno bolivariano.
Pedrito Pinzón, Ministerio de Seguimiento". 


Esas personas irán de nuevo al Pdval, encontrarán su pollo y anotaremos muchos puntos como gobierno. Los casos se cierran y ya no aparecerán más en la página web, aunque sí quedan guardados en la base de datos para seguimiento posterior.

Ahora, imaginemos que esas personas la semana siguiente regresan al Pdval de Los Dos Caminos y, de nuevo, no encuentran pollo. Y que eso sigue pasando. Pues la gente continuará abriendo reportes y pronto el Ministerio de Seguimiento se dará cuenta que el coordinador de Pdval está saboteando o simplemente no sirve para este cargo. Si el reporte viene no de uno, sino de muchos Pdvales, el ministerio ya tendrá una idea de que el problema es en el distribuidor. Y así sucesivamente.

Cada vez que un usuario reporte algo y se compruebe que su denuncia es cierta, se le darán puntos positivos. Si el usuario denunciante esparce información falsa, recibe punto negativos. De esa manera, se establecerá un sistema de puntuaciones (similar al que tiene MercadoLibre para mostrar la confiabilidad de los vendedores) para ver cuales usuarios son confiables a la hora de denunciar. Si varios usuarios con alta confiabilidad reportan algo, eso se atenderá con más prontitud.

Estos softwares existen desde hace años y se les denomina "software de reportes de incidentes", "sistema de tickets" o "help desks", y se utilizan mucho en empresas que brindan soporte técnico. Quise dar el ejemplo concreto de los "bug trackers", porque detrás de ellos existen resultados concretos: aplicaciones tan complejas como las distribuciones Linux (entre ellas nuestro Canaima GNU/Linux, Ubuntu, Debian o los celulares Android), que, sin embargo, son 100% funcionales y muchos mejores que sus equivalentes comerciales.

Sé que estoy simplificando un poco las cosas; de hecho, los bug trackers son mucho más complejos de lo que comenté en las líneas anteriores, pero tampoco quiero escribir un artículo de un millón de líneas... sólo quiero dar una idea de cómo una página web con una aplicación bien diseñada y unos trabajadores conscientes y prestos a resolver, pueden ayudarnos enormemente en la tarea de seguimiento y contraloría social. Un par de estudiantes de octavo semestre de Informática podrían hacer un software como este en 2 o 3 meses. 

Ojalá podamos ver cosas así en el futuro.
Publicar un comentario