Sobre mí: ¿Programador se hace o se nace? (Parte 1 de 3)

Esto es una historia autobiográfica acerca de mi relación con la programación. De cómo siempre ha estado presente en mi vida desde que yo recuerdo y de cómo se convirtió en mi trabajo.

En la Prehistoria.

Mi pasión por la informática comenzó de muy pequeño, antes de que en las casas hubiera acceso a internet: en la Prehistoria. Recuerdo que creé mis primeros programas copiando códigos BASIC de un libro en un Amstrad de 64 bits.

De aquel código no entendía casi nada. Mi único interés era que si conseguía copiarlo todo sin equivocarme, al final podría jugar a algo, o bien obtendría un programa que no me valía para nada. Mi única referencia sobre lo chulo que iba a ser el programa era el número de líneas que tenía que copiar. A más líneas, suponía yo que mejor sería el juego, aunque lo cierto es que muchas veces, ni siquiera eran juegos…

La Edad Media: Las guerras en el IRC.

Más adelante, en mi adolescencia, se popularizó el IRC, unas pocas miles de personas nos conectábamos a diario al IRC-Hispano, y fue entonces cuando descubrí el lenguaje de scripting del mIRC, el programa que más se utilizaba para conectarse. Los scripts del mIRC tenían muchas utilidades: mensajes automáticos, agregar menús con diversas opciones, etc. Aunque probablemente las más importantes tenían que ver con el IRC-War. No sé muy bien por qué ni contra quién, pero recuerdo que había auténticas guerras en el IRC y había scripts exclusivamente dedicados a ello: a llevar a cabo acciones tanto ofensivas como defensivas.

El código de los scripts era accesible por cualquiera, lo cual permitía investigar, aprender cómo funcionaba y modificarlo o crear código a tu gusto. Sea como fuere, el caso es que gracias al scripting, a base de mirar el código escrito por otros y de una forma totalmente autodidáctica, aprendí a dar mis primeros pasos en el mundo de la programación: asignación de variables, bucles, condicionales,…

Por aquel entonces también aprendí las bases del HTML y del CSS y creé mis primeras páginas web. Poco después, empecé también a crear páginas usando algunos CMS. En aquella época usaba PHPNuke y PostNuke, para los cuáles también podía crear mis propios plugins y ampliar sus funcionalidades.

La Universidad (Primera parte).

Llegué a la Universidad de Santiago de Compostela con 17 años para estudiar la Licenciatura en Matemáticas. Allí me encontré con una asignatura de Informática en la que se estudiaba estructura y funcionamiento del ordenador, metodología de la programación y se aprendía pseudocódigo, Fortran 77 y Matlab. He intentado buscar el programa, pero en el más antiguo que he encontrado, que es éste, de apenas unos años después, ya se estudiaba Fortran 90.

Yo partía con ventaja, porque ya tenía unas buenas nociones de programación. Sin embargo, el estudio formal, la comprensión del funcionamiento matemático subyacente y el análisis del costo computacional de los algoritmos, me sirvieron para dar un gran salto en mi capacidad analítica y resolutiva.

Psicotécnicos y Administración Pública.

Antes de terminar los estudios de matemáticas, me vi en la necesidad de incorporarme al mercado laboral. Aposté por preparar oposiciones y me presenté a las de Auxiliar Administrativo del Estado, que aprobé a la primera. A decir verdad, también partía con mucha ventaja, porque un tercio del examen era psicotécnico, que venían a ser matemáticas bastante básicas. Aproximadamente otro tercio era informática, casi todo ofimática e informática básica. Por lo que sólo tuve que preparar la parte de legislación, que era el otro tercio.

Al incorporarme a mi nuevo puesto de trabajo, me empecé a encontrar con tareas monótonas y repetitivas. Empecé entonces a implementar algunos programas que automatizaban aquellas tareas, lo que llamó la atención de mis superiores, que inmediatamente comprendieron la capacidad transformadora de la programación. Me dieron bastante vía libre para programar y automatizar todo lo que se me ocurría, y también me supieron encargar desarrollos específicos. Era una relación muy interesante, porque por una parte tenía el input de los objetivos que marcaban los jefes y por otra parte el input de los compañeros que serían los usuarios finales y yo era quien analizaba todos los requerimientos y planteaba la solución.

Continúa en la segunda parte