Archivo de Abril 2005

La soledad del codigo fuente

Viernes, 29 de Abril de 2005

“Después de unos cuantos años programando uno empieza a pensar en la cantidad de lineas de código que ha escrito, la cantidad de programas y aplicaciones en las que he participado. Todas esas líneas de código están por ahí, ejecutándose en algún ordenador, otras, la mayoría, abandonadas en algun soporte magnético y otras ni siquiera ya existen”

Sigue leyendo pensamientos filosóficos del mundo de la programación en la web de mi amigo kotrina

De programador a administrador (I)

Jueves, 28 de Abril de 2005

La alucinante aventura de un programador que se pasó a sistemas.
?Que es lo que sucede cuando un programador, con 7 años de experiencia en el desarrollo, se pasa a sistemas como administrador de servidores de aplicaciones?

Antes de empezar, deciros que llevo trabajando en el mundo del desarrollo 7 años, los 3 últimos con Java. He pasado por varias empresas, algunas grandes, otras pequeñas, pero siempre me he dedicado al desarrollo. Como casi todos los programadores, mi carrera ha sido más o menos parecida. Olvidaros del modelo de categorización ?programador - analista programador ? analista - jefe de proyecto - gerente de cuenta?. Ese modelo está obsoleto y no es real, al menos en la pequeña y mediana empresa española. El nuevo modelo, que a continuación voy a describir, tiene como peculiaridad de que cualquier categoría incluye a todas las anteriores, de manera que a mayor categoría, mayor nivel de trabajo o ?enmarronamiento?.
Sin más preámbulos, las verdaderas categorías que dividen a los programadores en las empresas españolas son las siguientes.

1. Picapica raso
Conoce mucho el lenguaje pero no conoce la metodología ni el proyecto. Suele ser joven e inexperto, por lo que tiene a otro picapica (ver picapica power/leader) que le enseña como funcionar y se pasa el día preguntándole cosas. Llega pronto y se va a su hora. No sufre, pero tampoco piensa, por lo que es feliz, pero gana poco. Un picapica raso puede serlo toda su vida o, si se esfuerza, se documenta y aprende rápido, puede llegar a convertirse en…

2.Picapica pauer (power).
Conoce mucho el lenguaje, conoce la metodología y conoce el proyecto. Como programa rápido, participa en varios proyectos, a veces a la vez. Descubre errores de arquitectura en el código, propone ideas y participa abiertamente en el desarrollo. Va como apoyo técnico a algunas reuniones y le arregla los problemas a su jefe. Este programador es feliz, pues hace lo que le gusta y lo hace bien, por lo que es respetado.
Pero si tiene mucha iniciativa probablemente se vea limitado dentro de su equipo, ya que querrá empezar a hacer las cosas a su manera, mejorando la arquitectura actual o utilizando nuevo software (librerías open source por ejemplo) y se verá frustrado por el verdadero espíritu de ?mínimo coste? de la empresa de servicios. Sus ideas son vetadas y no se le permite volver atrás para mejorar lo creado hasta ahora, ya que requieren tiempo de implementación y bajo ningún concepto se querrá asumir este coste adicional. Si la aplicación funciona, la empresa lo quiere tal y como está, no hay tiempo para mirar atrás.
Por esta razón, tendrá que trabajar todavía más duro para conseguir hacer todas estas mejoras con éxito sin implicar retrasos en el proyecto, tarea bastante arriesgada, por lo que se empieza a quedar tarde. La felicidad de ésta persona es directamente proporcional a su amor por la tecnología. De la calidad de su trabajo para no morir en el intento y la ?permisividad? de la empresa para tolerar este tipo de iniciativas dependerá que llegue a convertirse en…

Continuará…

Al principio, todo era mágico (1)

Domingo, 17 de Abril de 2005

Para mí, la informática y la programación han estado siempre unidos de una manera especial. Desde que mi padre en 1986 me regaló mi primer ordenador, un Amstrad de 64k, mi inquietud por saber como funcionaban los ordenadores por dentro me ha llevado siempre al aprendizaje de la programación.

Claro que entonces no era como ahora. Aquel Amstrad (que todavía conservo como un tesoro) venía con dos libros: un manual de usuario y una guía de referencia Basic. Eso era lo bueno, que el propio sistema tenía un lenguaje de programación integrado. Podías picar tres líneas, darle a RUN y tenías un programa funcionando sin tener que compilar ni linkar.
Así que ni corto ni perezoso cogí los dos manuales y empecé a leer. El libro de referencia Basic era incomprensible. Con ocho años es un poco dificil leerse del tirón la sintaxis completa de todos los comandos de un lenguaje. Sobre todo cuando lo más complicado que habías leido hasta ahora había sido el “Pirata Garrapata” o “Fray Perico y su borrico” del Barco de Vapor.

Sin embargo el manual de usuario se podía seguir bastante bien. Era como una especie de tutorial desde cero que explicaba como funcionaba todo, desde cargar y ejecutar programas (desde cinta, ojo) hasta una explicación del lenguaje Basic. Venía con cientos de ejemplos que se podían copiar (a mano claro) y probar. Era realmente estupendo teclear lineas y lineas llenas de palabras en inglés mezcladas con números y ejecutar luego a ver que pasaba. Podías improvisar algo y cambiar el funcionamiento de tu pequeño programa. Hacer pequeños calculos y escribirlos en colores, dibujar figuras geométricas, hacer sonar estridentes melodías. Es imposible explicar esa sensación.

Amstrad CPC 464, que retro!

Después de jugar empezó a llegar lo gordo. Primero fueron las variables, más tarde las condiciones y los saltos. Los bucles, la entrada de datos, los arrays. Entonces los programas de ejemplo ya empezaban a hacer cosas más complejas: tenían menúes, interactuaban con el usuario y mostraban información útil.

El final del libro no podía haber sido más apoteósico: el listado completo de tres pequeños juegos. Una especie de arkanoid llamado “rompeladrillos”, un bombardero y un juego de tablero que nunca supe como jugar. Teclear el listado completo fue algo agotador y me llevo varios días. Había que salvar en cinta y continuar al día siguiente. Finalmente al ejecutar el juego no funcionaba: había errores. Así que había que volver a repasarse el código entero en busca del “bug”. Finalmente el juego funcionó. No sabéis lo que disfruté cambiando los colores del juego, la velocidad de movimientos o toqueteando por que sí. Fue apoteósico. Si no hubiera sido por aquellas tardes pegado al ordenador, ahora hubiera sabido jugar al futbol.

Al cabo de no mucho tiempo, el segundo libro de referencia empiezó a cobrar sentido. Era como una chuleta gigantesca, donde estaban todos los comandos, para que servían y como se utilizaban. No era facil entender que hacían algunos, pero con probarlos a veces podías averiguar para que servían. Otras ni probando claro. Después vinieron las revistas, los videojuegos y los cargadores (con los pokes)… la verdad es que fueron años cojonudos, llenos de diversión y aprendizaje en un rústico lenguaje que ahora casi ni recuerdo. Basic.

Bueno, y así fue como aprendí a aprender a programar.

Los años cada vez pasan más deprisa

Domingo, 17 de Abril de 2005

Hace casi nada cumplí 27 años. ?Y que cierto es que cada vez pasan más deprisa verdad? Llega un momento, no sabes muy bien cuándo, que te parece que los años pasan volados y no sabes ni por qué.
?Y sabes por qué es? Pues tiene una explicación bastante lógica y sencilla.
Cuando tienes cinco años y cumples seis, ese añito que has cumplido es tan solo un sexto de tu vida. Vamos, una barbaridad. Echa cuentas y dime si es mucho o no? Yo que tengo 27, un sexto de mi vida son cuatro años y medio. ?No está nada mal para un cumpleaños verdad?
Y cuando tienes doce y cumples trece, pues un treceavo de tu vida. Volviendolo a comparar con los 27, son 2 años más o menos. Tampoco está mal, pero ya no es tanto.
Y cuando tienes 26 y cumples 27 años, tan solo ha pasado un veintisietavo de tu vida. Los recuerdos de este último veintisieteavo son bastante poco si lo comparamos con los recuerdos del resto de tu vida.
Por eso cada vez lo años nos parecen que pasan más deprisa. Aprovecha, no sea que cumplas 80 y ni te hayas ni enterado…