¿Puede considerarse programar un Arte?
A muchos nos ofende incluso la pregunta. Es una discusión que tengo a menudo con mi mujer, ella es arquitecta (si, de esas de edificios, la pongo con minúsculas para diferenciar J) y cuando sale el tema saltan chispas. Toda esta discusión me viene a la cabeza a raíz de un artículo de Lipmman que acabo de leer.
¿Os acordáis de esas clases de cálculo infinitesimal o física de primero de carrera? Era muy sencillo, o lo veías o no lo veías. Algunos le llamaban “la idea feliz”, otros como mi suegro (también arquitecto) le llaman “la génesis”, en definitiva algo abstracto y difícil de definir que se tienen o no se tiene, que no sigue ningún proceso concreto repetible (que al menos conozcamos ahora), más bien es una inspiración, un arte.
¡Venga, seguro que os suena! Os ponen un problema por delante y sin saber cómo fluye el algoritmo que encaja, la arquitectura perfecta, el objeto concreto.
Particularmente pienso que es “tan solo” fruto de la experiencia y la creatividad. El hecho de resolver cientos de problemas en diferentes momentos cuando programamos hace que eso vaya enriqueciendo la “knowledge base” interna, quede grabado y salga cuando vemos un problema similar, esto es sencillo. Después entra la creatividad de cada uno, es decir, con las mismas piezas en la mente (experiencia y conocimientos) saber combinarlas para dar solución a un problema nuevo. Quizás esta es la parte más difícil de conseguir, lo que distingue a un programador senior con experiencia de Don Box.
David hablaba hace poco en su blog de la cantidad de proyectos que arrancaba, resolvía el reto y dejaba en un directorio perdido. Esto es la esencia de este aprendizaje, movida obviamente por la pasión y la vocación del desarrollador “tiburón” J
El que se nazca o no con esta creatividad es otra discusión. La experiencia puede adquirirse, pero nos quedaremos en el programador senior. Por ejemplo, yo me pongo mañana a pintar cuadros, dedico 30 años y probablemente sea un pintor más, pero no Picasso.
Vaya, me quedo sin batería. Por cierto, voy a tener que dejar de viajar en AVE y tener tiempo libre sin conexión al email, me vienen a la mente temas de lo mas raro…