Cuba y el Software libre

La mayor parte de este artículo es un correo que envié a la lista linux-l de Cuba, cuando se discutía el hecho de si valía la pena que empresas cubanas se dedicaran a crear ERPs desde cero, cuando en el país existe la orientación de migrar a software libre.

La cuestión es que aunque hace tiempo se viene hablando en nuestro país de migrar al software libre, parece ser que ahora, gracias a Venezuela, se cogerá esto en serio, no obstante, además de las usuales dificultades, usuarios con desconocimiento, una gran cantidad de software escrito para Windows, todavía falta bastante para que incluso los mismos que impulsan el software libre en la isla logren desprenderse del modelo del software propietario.
El problema es que no basta usar linux, ni software libre en general, estoy seguro que aunque se haga obligatorio usar software libre en las empresas (lo cual creo que es incorrecto, mas bien se debería exigir que las empresas usen solo software legalizado, pero eso es para otro artículo) todavía faltaría la mentalidad de colocar cada desarrollo en un repositorio, ya sea nacional, internacional, o de la misma empresa, para así lograr retro-alimentación de la comunidad, no solo cubana; pero es muy probable que a la mayoría de los directivos eso de dar el código fuente, con la licencia que sea, les resultará muy difícil de aceptar. Quizás el camino más corto, o mejor, un camino más, sea crear empresas que desde sus inicios usen software libre, el problema estaría que hasta donde sé, crear una empresa nueva es bastante difícil en nuestro país, obviamente hablo de siempre de empresas estatales (recuerden que en Cuba no existen empresas privadas lo cual veo muy equivocado, pero también es para otro artículo).
La cosa es que si el gobierno definitivamente apoya al software libre, entonces automáticamente aparecerán nuevas oportunidades de negocio, y no creo que haya muchas empresas capaces de aprovechar rápidamente esta coyuntura. Y aquí entra algo como un ERP, es de mentalidad de software propietario empezar las cosas desde cero, pero una empresa nueva, fresca, suyos integrantes apuesten fuertemente por el software libre, porque lo conocen, a la hora de comenzar un proyecto, no solo un ERP, siempre buscarían lo que está hecho, y trabajarían sobre ello. Por eso pienso que además de los movimientos gubernamentales por hacer que las empresas que existen migren, tendría que existir una política de "incubación" de empresas, o pronto nos veremos inundados de empresas europeas y latinoamericanas dando soporte,cuando en nuestro país alcanza el talento.

El arte y la programación

Hace un tiempo comparé la programación con la literatura , ahora seré algo más general.

Gracias a un amigo conocí la definición de arte de Umberto Eco, que no recuerdo literalmente, y que además está expresada en un lenguaje sumamente técnico, pero que en definitiva es algo como esto: Algo artístico es aquello donde el contenido trasciende al significado… bueno no exactamente, aquí habría que cambiar “algo” por mensaje, contenido por denotación y significado por connotación. En general esto es que un cuadro, un relato, una pieza musical llegan a ser arte cuando de alguna manera se bastan así mismas para existir…, para generar significados según por quien sean apreciados.

Como estamos en el siglo XXI usemos las definiciones de Internet:

El término arte procede del término latino ars. En la Antigüedad se consideró el arte como la pericia y habilidad en la producción de algo. Es solo a partir de finales del siglo XV, durante el renacimiento Italiano, cuando, por primera vez se hace la distinción entre el artesano y el artista (artesanía y bellas artes) y equivalentemente entre artesano, productor de obras múltiples y artista, productor de obras únicas. ...
http://es.wikipedia.org/wiki/Arte



La mezcla de estas dos definiciones pueden ayudar a descubrir hasta que punto la programación puede ser artística (quede claro que hablamos de la programación en sí, de la escritura de código, no del resultado final, algo así como lo que menciona Thomas Mann su Doctor Faustus cuando dice que muchas obras musicales tienen dos formas de ser apreciadas, con los oídos y con la vista, está ultima se refiere a la partitura y solo está destinada a los conocedores o iniciados).

Entonces, que es programar? Básicamente escribir código, pero en realidad es mucho más que eso, hacer un buen programa recuerda mucho a la anécdota china del emperador, el pintor y el cangrejo:

“Un día el Emperador quiso tener el dibujo más perfecto posible de un cangrejo, así que mandó a llamar al mejor dibujante del imperio y le dijo:

- Te doy una casa, sirvientes, una pensión y todas las comodidades que necesites, para que me pintes el cangrejo más perfecto que se haya dibujado jamás.

El dibujante, feliz, aceptó y se fue a su nueva casa.

Se sucedieron los días, los meses, los años, se fueron 30 años y el Emperador no tuvo noticias del pintor, cansado de esperar hizo que lo trajeran a su presencia.

- 30 años pasaron desde que te pedí el dibujo del cangrejo, mi paciencia se ha agotado y te exijo que me muestres tu trabajo.

El pintor asintió y pidió que le trajeran tinta, un pincel y papel, y en presencia del Emperador, en apenas unos instantes dibujó un cangrejo perfecto”

Claro que ya quisiéramos los programadores estas condiciones, pero en general para crear un programa de calidad debemos irnos a un rincón y rumiar los requerimientos del sistema y encontrar el mejor diseño posible, para luego, poco a poco, a veces a base de prueba y error (creo que a esto último le llaman programación evolutiva), lograr que nuestro sistema se apegue lo más posible a la realidad idealizada del cangrejo.

Pero este chino era un artista?

O un artesano?

Si luego de los tantos siglos que pudieran haber pasado, alguno de nosotros se encuentra con el dibujo perfecto de un cangrejo, seguramente lo admiraríamos, seguramente quisiéramos colgarlo en una pared de nuestra casa, pero… es arte?

Según Oscar Wilde lo artístico debe ser inútil y bello, el dibujo del cangrejo sería el caso.

Regresemos a Eco, a la parte de la connotación, como interpretar esto? Yo pienso que esta connotación personalizada solo puede lograrse mediante el reconocimiento de uno mismo en la pieza artística que se contempla(o que se oye o que se ve), por ejemplo, cuando me leí “El Extranjero”, de Camus, el cinismo y la apatía del protagonista, calaron profundamente en mí, no es que quisiera ser así, ni que lo sea, pero de alguna manera me vi reflejado en este libro, no como un todo, no hablo del retrato, hablo de ver ese pedazo de vida transcurrir frente a mí, mostrándome una realidad existente y falsa al mismo tiempo, yo la hacia existir y sin embargo era falsa. Yo fui parte del relato, no porque lo leí, sino porque conjugando la lectura con mis pensamientos, con mi propia vida, le encontré un significado a la novela que la hace única para mí, y que la haría única para otra persona que la lea.

Entonces es esto, aventurémonos a soltar una definición: Arte es aquello que es capaz de conjugarse con su público para alcanzar una nueva dimensión única, y tantas como público exista.

Que les parece, y la programación?

Desafortunadamente un programa es siempre el mismo programa, quizás las condiciones en que fue creado, las condiciones en que es distribuido pueden generar sentimientos distintos y únicos, pero jamás el código mismo, el código es solamente una pieza de artesanía, nada más.

PD: No se han fijado que en todas las revistas, programas, o lo que sea siempre se dice: "Arte y Literatura"? Nunca se han preguntado por qué? Eso lo dejamos para el próximo artículo.