mitago.net

Página web de Celso González

Sentirse como un programador

hacker Una de las cosas que más me cuesta explicar a la gente no informática con la que me relaciono es la sensación que tienes cuando oyes la llamada del código.

Suele suceder cuando llevas un tiempo sin programar. Puede que durante ese tiempo hayas estado con ordenadores durante diez horas al día, navegando, administrando, leyendo... pero no programando.

Entonces un día, sin previo aviso, te entra el gusanillo. Tienes una idea o decides llevar adelante un proyecto que tenías aplazado y comienza la vorágine.

Al principio, con fiebre extrema, pasas horas aprisionado delante de la pantalla, el teclado echa humo y desarrollas líneas de código a toda velocidad. El síntoma principal es el insomnio, normalmente la fiebre te entra a primeras horas de la noche, y no vas a perder el tiempo durmiendo o cenando. Las únicas distracciones que te permites son levantarte a preparar una cafetera, ya que otro síntoma es el consumo de bebidas estimulantes. Cierras el irc, el jabber, el correo y los feeds por leer se acumulan, todo lo que te pueda distraer es eliminado y solo tienes un objetivo: el código.

La siguiente fase es la de reorganización. En un momento dado te das cuenta que tu mente va más deprisa que el código que generas, antes de entrar en esta fase es al revés, y que deberías parar un momento a generar un código más eficiente, más portable, más legible, algo más estandarizado y que incluso un subversión te vendría bien. Al final pasas del subversion por el tiempo que te llevaría leer tres páginas de documentación y sufres del clásico síntoma de libreritis. Empiezas a organizar clases en librerias, creas apis, renombras variables y desgastas dos milímetros las teclas de copiar y pegar.

La tercera fase es la del piño. Te quedas atascado con un problema, ya que al único que compilan los programas a la primera es a Chuck Norris. Un fallo que no encuentras, una situación que no te habías planteado o cualquiera de los múltiples poltergaist que se encuentra un programador. Llenas el código de printfs, de asignaciones de variables y juras en arameo. Al llegar a esta fase, si no vives solo, tu pareja percibe que no te ha visto últimamente y decide venir a empreñarte con tonterías como "¿qué haces?" o "¿qué te pasa?" justo a mitad de una sesión de debug.

Esta fase se puede prolongar en el tiempo y tu nivel de cabreo sube de forma exponencial, además tu pareja también se cabrea contigo diciendo que la ignoras, que la chillas y que además hay que ir al super para hacer la compra. La mayoría de divorcios de programadores son provocados por una mala asignación de valores no detectada.

Poco a poco el cabreo se te va pasando, pero el interés por el programa bloqueado también, es en ese momento cuando vuelves a la vida real. Empiezas con las comidas a las horas que toca, ves algo de televisión, incluso duermes, pero... no del todo.

El problema se ha quedado incrustado en tu cerebro en segundo plano, si te concentras un poco incluso le oyes dar vueltas por ahí dentro, y precedido por un toque de trompetas aparece la solución al jodido bug. Da igual lo que estes haciendo o la hora que sea, normalmente las tres de la mañana, vas corriendo al ordenador y tienes una recaída de la fiebre inicial y entre gritos y exclamaciones varias descubres que funciona

Por último tienes el subidón, terminas el programa y la cosa funciona. Buscas gente a quien contarselo, si el programa es complejo te das cuenta de lo bueno que eres y te cuelgas medallas. Caminas por la calle con una sonrisa de oreja a oreja y cuando la gente te mira lamentas que ellos no sepan todo lo que tú has hecho, pero el subidón se pasa y vuelves al letargo. Volverá a pasar un tiempo hasta que tengas tú idea o que el proyecto te apasione y mientras tanto pasaras las horas con tu ordenador esperando, ¿deseando?, que vuelva esa sensación.

En resumen, no se si un programador es un yonki, que tiene que meterse su dosis para tener el subidón de forma periódica, o un enfermo crónico con recaídas en su enfermedad. ¿tú que piensas?

mié 26 abril 2006 01:5135 comentarios