1.
Partimos de la siguiente idea: el desarrollo de software y, específicamente, la programación, es un trabajo. Esto quiere decir que consiste en una actividad humana que genera bienes tangibles e intangibles, los cuales tienen cierta valoración en la sociedad1. El bien que genera puede ser un bien social en la medida en que responde a la satisfacción de necesidades de la sociedad, o puede ser un bien “mercantil”, como una forma amputada del primero, en cuanto que el producto que genera se concreta como mercancía en el mercado.
Esta formulación inicial implica que la programación es una actividad humana, y conlleva a recuperar el papel del programador como sujeto consciente ante su obra. Al mismo tiempo, se trata de evitar una perspectiva exclusivamente centrada en el producto físico del trabajo, es decir, en el software desarrollado. Esto es necesario porque existen al menos dos perspectivas que pueden adoptarse al tratar sobre la tecnología. La primera hace énfasis en el carácter instrumental de la tecnología, el cual es definido por el criterio de eficacia y la concibe meramente como dispositivos o sistemas. Desde la otra, la “tecnología” incluye la generación de dispositivos y sistemas tecnológicos, pero los engloba en el conjunto de estrategias interpretativas y prácticas de los sujetos involucrados en su desarrollo. Esto quiere decir que, desde el primer enfoque, el programador es el ejecutante del producto generado, mientras que desde el segundo enfoque los dispositivos son devienen por las relaciones, las decisiones y las estrategias de un conjunto de actores – especializados o no – que participan en las cadenas de desarrollo y apropiación de los dispositivos tecnológicos.
Podemos tomar como referencia al Proyecto Canaima para ilustrar esta diferencia. Desde el punto de vista del producto físico, el sistema operativo Canaima debe cumplir con razonable eficiencia los objetivos que se esperan de todo sistema operativo. Las condiciones mediante las cuales se llegó a ese resultado se vuelven obscuras ante los observadores. Desde el otro enfoque, el Proyecto Canaima no es posible sin la interacción de comunidades de usuarios y desarrolladores, instituciones públicas, centros de educación y usuarios comunes. Y este tipo de relaciones son las que condicionan el resultado final. De allí que una mirada integral apuntaría a observar las condiciones sociales y organizacionales que hacen que el proyecto tenga tales o cuales características. Ambas perspectivas no son antagónicas en el sentido de que la observación de las relaciones de desarrollo deben conducir a una evaluación de las características del producto, pero lo contrario no suele ser cierto: en la medida en que nos fijamos sólo en el producto dejamos de lado cuáles fueron las condiciones para su desarrollo, a qué actores involucró, y qué fines persigue.
Dentro de la última perspectiva percibimos el “resultado” de la programación, pero no caemos en cuenta de los procesos – actuales o históricos – que están presentes en su aparición. Por lo tanto, tampoco somos conscientes de que todo sistema tecnológico está integrado no sólo de dispositivos, sino también de los roles de los usuarios y operadores, de modos organizacionales y de procesos sociales más extensos. Así, la racionalidad técnica y económica nos invita a reducir el trabajo humano a la elaboración de herramientas, a las cuales deben adaptarse los usuarios para responder a sus requerimientos de funcionalidad. En contraste, pensar en el desarrollo como “trabajo” y como “procesos” equivale a rescatar la importancia del sujeto tanto como el carácter político-cultural del desarrollo tecnológico. Solamente a partir de entonces podemos preguntarnos cómo promover una forma de desarrollar tecnología que se encuentre mejor integrada con las necesidades del ser humano2.
2.
¿Qué es lo que hace característico al trabajo del programador? Lo que distingue al programador es su relación con las dinámicas de generación y uso del conocimiento, es decir, el trabajo del programador es especial porque se encuentra basado no solamente en el esfuerzo físico, sino sobre todo en la competencia que posee sobre un conocimiento especializado. De allí que podemos preguntarnos de qué forma se encuentra presente el conocimiento en la labor del programador. En otras palabras, qué formas de conocimiento participan en su labor de programador. Como respuesta provisional, digamos que el conocimiento se encuentra en la forma de lógica, matemáticas y de lenguajes naturales, aunque pueden nombrarse otras formas de conocimiento asociadas a su labor3.
Si la lógica, la matemática y los lenguajes naturales forman la base del desarrollo de software, podemos preguntarnos ¿de dónde viene este tipo de conocimientos? Ciertamente, se trata de un conocimiento generado a través de ciclos ancestrales de conformación de saberes y de realización de trabajo. Esto quiere decir que es el resultado de dinámicas históricas y culturales que pertenecen a la historia de la humanidad, y que son anteriores a la cristalización de la forma contemporánea del capitalismo. Por lo tanto, si el conocimiento es el resultado de ciclos sociales de saber y de trabajo, resulta lógico considerarlo como un bien común de la sociedad, antes que como un bien que puede ser privatizado en interés del capital empresarial. Desde este punto de vista, el conocimiento generado históricamente debe volver a la sociedad para alimentar nuevos ciclos de formación de conocimientos y de creación de bienes materiales y culturales para toda la sociedad.
El conocimiento, hoy día, tiene un carácter mucho más especializado y complejo que en otras épocas, por lo tanto, es todavía más necesario hallar una lógica que permita conciliar las formas de generación de conocimientos con la necesidad de salvar las diferencias que genera la distribución desigual de recursos en la sociedad. En otras palabras, los avances tecnológicos de nuestra época traen como consecuencia nuevas condiciones para la generación de conocimiento y para el trabajo, las cuales deben resolverse tomando como centro el desarrollo integral del ser humano. La tendencia hacia la privatización del conocimiento apunta hacia el rompimiento del flujo social del saber-trabajo, por lo cual origina alternativas que son opuestas a la dinámica propia del conocimiento. En cambio, la transformación de los procesos de trabajo y de generación de saber en un sentido liberador, contribuye a impulsar un modo de desarrollo tecnológico dirigido hacia la atención integral de las necesidades del ser humano.
3.
La lógica del conocimiento en el entorno organizacional y productivo en el que se desenvuelven los programadores en la actualidad debe ser distinto al que se promueve desde la empresa capitalista. Sin embargo, la cuestión va más allá de salvar las condiciones de acceso y uso del conocimiento, aunque sin duda esto constituye un pilar invaluable. Pero si nos limitamos solamente a la crítica de los monopolios estamos quedándonos en la perspectiva del bien producido y, por lo tanto, observamos sólo una parte de la situación. En cambio, podemos preguntarnos cómo la generación de bienes de información accesibles conduce también a la transformación de las condiciones por las cuales los mismos se producen, es decir, el trabajo, las relaciones sociales y el propósito que persigue. Así, si desde el punto de vista del software libre, las denominadas “cuatro libertades” ayudan a defender las condiciones de acceso al conocimiento, ¿cómo podemos hacer para que esta defensa ayude a la transformación de los modos de generación de saberes en la sociedad?
Precisamente el software libre ofrece un buen ejemplo. El desarrollo del código se hace de forma colaborativa y, el resultado, vuelve de nuevo a la comunidad como contraprestación por el apoyo recíproco. Es decir, la búsqueda de un bien accesible crea las condiciones para la transformación de las condiciones de trabajo. Sin embargo, a veces esto tampoco es suficiente, porque hace falta precisamente el componente de la finalidad que persigue el esfuerzo del desarrollo. Tomemos como ejemplo que, en Wall Street (Nueva York), plaza emblemática del capitalismo financiero, que tiene una incidencia gigantesca en la dinámica del capital actual, utilizan software libre. Y el movimiento Ocuppy, que realiza protestas en contra de las empresas y la crisis del capitalismo, también utilizan software libre. Ahora bien, el software que se utiliza en uno y otro lado cumple con las cuatro libertades del software, al menos en teoría; pero ¿acaso cumple el mismo papel para los dos?
Una concepción más integral del software libre debe fundarse en que el software ser resultado de un proceso que apunta a la generación de bienes sociales libres. Por lo tanto, lo que hace que el trabajo del programador sea un proceso trascendente es que responda a fines consensuados socialmente. El hecho de responder a fines sociales tiene consecuencias para todo el proceso de desarrollo, puesto que las necesidades sociales entran en el proceso desde el mismo momento de la concepción del producto tecnológico. Por lo tanto, no es suficiente con asumir que la sociedad es un usuario o receptor abstracto de los productos de programación, sino que hace falta comprender que la construcción de necesidades sociales, el consenso en torno a los fines y la conformación de mecanismos protagónicos de atención a los mismos genera resultados cualitativamente diferentes a los que se presentan solamente desde la perspectiva del producto. En contraste, si el fin social de la programación está planteado desde el principio, muchos aspectos técnicos y organizacionales del desarrollo irán mostrándose consecutivamente.
En resumen, es claro que la programación de software no es una actividad políticamente neutra. En principio, cuenta con un conjunto de sujetos que, integrado dentro de ciertas dinámicas de organización del trabajo, se ocupa de generar productos informáticos que pueden servir a la sociedad en general y no solamente al mercado. En el camino, puede ocuparse de defender el carácter abierto y responsable de las herramientas que maneja. Sin embargo, para que su trabajo tenga sentido, debe interesarse por apoyar la transformación de las condiciones sociales en las que se desenvuelve su trabajo. La posibilidad de elegir entre diferentes alternativas se encuentra en manos del programador, y por lo tanto, responderá a un criterio ineludiblemente político.
1No podemos dejar de destacar la importancia de la LOTT cuando dice: Artículo 320. El proceso social de trabajo constituye la fuente fundamental del conocimiento científico, humanístico y tecnológico, requerido para la producción de bienes y la prestación de servicio a la sociedad. Las invenciones, innovaciones y mejoras son producto del proceso social de trabajo, para satisfacer las necesidades del pueblo, mediante la justa distribución de la riqueza.
2Roca, S. (09/11/11). “Del conocimiento libre a la emancipación cognitiva”. Disponible en: http://www.aporrea.org/tecno/a133261.html
3El conocimiento también se encuentra en los enfoques y métodos de conceptualización, diseño y desarrollo; sean las formas de organización del trabajo como los métodos más específicos de programación, así como las técnicas y las herramientas utilizadas. Aunque en ocasiones se asume que estos tópicos son manejados por diferentes especialistas, la verdad es que no puede comprenderse uno sin el otro.
roca.santiago@gmail.com