Programador: definición perfecta

Programador, definición: Programar no es como hacer chorizos ni poner ladrillos, programar es un trabajo puramente intelectual, quizás la tarea más intensiva intelectualmente que conozco. A más horas, no hay más producción, a veces un programador puede ser más productivo en una mañana que en 2 semanas y lo más fascinante, esto no es un problema a resolver, sino algo inherente a la tarea de programar y hay que aceptarlo. Si no te gusta te puedes dedicar al cultivo del champiñón o cualquier otro negocio donde el resultado sea más predecible. Cada programador tiene unos ritmos personales de productividad e improductividad. Por tanto no se pueden poner horarios ni ser estrictos en las fechas de finalización, sino de crear un ambiente que favorezca la productividad de tareas intelectuales, algo que intenta hacer Google en sus oficinas. La imposibilidad de poner fechas también explica por qué Google nunca anuncia nada con antelación, poner una fecha es desconocer como se trabaja en el mundo de la programación. Si quieres que los programadores se involucren en tu proyecto hay que respetar su manera de funcionar y no hablarles como si la programación fuese como la tarea de construir una pared a un ratio de X ladrillos por hora.

Un programador trabajando solo o con un pequeño equipo en una start-up le toca quedarse hasta las tantas de la madrugada muchos días porque cuando estás a mitad de solucionar un problema no funciona lo de “son las 19:00, hora de irme, mañana más”. Cuando estás a mitad de concentración, motivado para acabarlo, dejarlo para mañana puede significar realmente mañana, un par de semanas o un mes. ¿Un programador ineficiente? No, es simplemente así, volver a concentrarse en esa tarea y acordarse de cada detalle conlleva una pre-tarea de varias horas y si hay otras tareas más urgentes que se cruzan, se postergará.

Tratar a un programador como un currito que hace sus horas y se va, es ignorar como funcionan las tareas intelectuales, la motivación humana, etc. Proponer a alguien programar un proyecto web viable solo a cambio de un salario o presupuesto cerrado (freelance) casi roza el insulto. Emprender conlleva un esfuerzo extra buscando un premio, por definición es incompatible pagar un salario fijo y pedir un esfuerzo extra.


Ahora solo me falta encontrar la definición perfecta de sysadmin para hacer pleno. Visto en el blog de Luigix que a su vez lo ha sacado del inmejorable post de Eduardo Manchón.

About the author

Óscar
has doubledaddy super powers, father of Hugo and Nico, husband of Marta, *nix user, Djangonaut and open source passionate.