Lo queramos o no
Y ni siquiera tres
Sólo tenemos tres alternativas:
El ayer, el presente y el mañana.
Porque como dice el filósofo
El ayer es ayer
Nos pertenece sólo en el recuerdo:
A la rosa que ya se deshojó
No se le puede sacar otro pétalo.
Nicanor Parra -- Obra Gruesa
Hace 10 años atrás, era 1992, yo estaba recién llegado a un Chile que daba sus primeros pasos democráticos nuevamente. Muchas cosas han cambiado profundamente en estos 10 años. Otras, no tanto. Es extraño como algunas cosas avanzan tan rápidamente y cambian tanto que casi no las reconocemos, mientras otras mantienen una posición incólume y casi indiferente al paso de tiempo. Un par de ejemplos bastan: la Universidad de Chile y la Católica se acaban de conectar a Internet a principios de ese año, pasando los sistemas de correo electrónico telefónico (que se intercambiaban dos veces al día) a un sistema en línea. La softel de ese año trae como grandes novedades los equipos de fax, que algunas empresas están decidiendo comprar. Por otro lado, la comisión de descontaminación ambiental anuncia que terminará con el smog en Santiago.
En computación, la estación de trabajo Sun, el equipo más avanzado del mercado, era de una potencia de cálculo casi mil veces más lenta que un PC de supermercado de hoy, tenía una pantalla gráfica en blanco y negro, el servidor de disco tenía un disco parecido a una RAM de hoy y la RAM era casi inexistente. Mi primer PC notebook lo compré en 1994, tenía algunos cientos de megabytes de disco duro, 4 Mbytes de RAM, una pantalla en colores (256 colores) de 640 por 480 y era un 386 SX. Costaba unos 5.000 dólares, y corría Linux.
Sin embargo, el cuento no es el mismo cuando hablamos de software. Los problemas que enfrentamos a diario son muy parecidos: nuestros escritos, nuestros mails, nuestros programas, repiten una y otra vez los mismos problemas, la misma funcionalidad. Los sistemas se siguen cayendo, la forma de sincronizar procesos concurrentes son las mismas formas primitivas de hace unos 20 años, las líneas de código se repiten una y mil veces en varias capas de emulaciones para hacer que todo ande tan lento como siempre. Este trabajo lo escribo en una ventana que simula ser un terminal conectado en una puerta serial virtual, con un editor que cree funcionar en una vt-100.
Al escribir cualquier trozo de software, nos asalta a todos la sensación de ya haber escrito ese mismo código antes, de ya haber resuelto mil veces el mismo problema. Como Sísifo, nos vemos obligados a inventar de nuevo la solución al problema, porque, por supuesto, no encontramos nunca donde fue que escribimos ese código. O, peor aun, lo encontramos, pero es suficientemente distinto el ambiente, la biblioteca o el lenguaje, para justificar la re-escritura completa. ¿Estaremos condenados por algún Dios envidioso a repetir los mismos gestos hasta la eternidad?
Tal vez esta diferencia de progreso entre Hardware y Software se justifique en sí misma: perdemos tanto tiempo portando aplicaciones de un sistema a otro, que nunca terminamos de tener tiempo para enfrentar los verdaderos problemas. En definitiva, los informáticos pasamos el 90% de nuestro tiempo resolviendo problemas estúpidos (pero difíciles).
Al final, nunca nos queda tiempo para resolver los verdaderos problemas que debiéramos estar enfrentando. Después de todo, una vez que dominamos bien un lenguaje de programación y podemos empezar a hacer aportes, resulta que tenemos que empezar a aprender otro. Sin contar con instalar la nueva versión del sistema operativo en el computador que acaba de llegar.
Entretenido, pero seguimos sin haber avanzado mucho.