Salvando las distancias, la libertad creativa de profesionales más artísticos (como puede ser un pintor o un músico) incluye dominar sus herramientas para expresarse. En vez de usar instrumentos o pinceles, un desarrollador emplea lenguajes, arquitecturas y patrones para plasmar soluciones a problemas. Quizás responda a un fin menos artístico, pero estas actividades comparten la necesidad de saber utilizar herramientas existentes para crear algo totalmente nuevo. Esa capacidad resolutiva es la creatividad.
Sobre todo la gente ajena a la profesión de desarrollador piensa que cursar una carrera o una formación profesional relacionada con la tecnología facilita todo lo necesario para ejercer completamente una carrera en este sector. Pero nada más lejos de la realidad. Solo aporta las piezas más básicas (y necesarias) de un puzzle al que se llama experiencia.
Es por eso que formarse o mantenerse actualizado en un sector tan rápido en cuanto a avances se refiere implica la necesidad de saber ser creativos en cuanto surge un nuevo reto. Sin duda, la mejor forma de aprender nuevas tecnologías es jugar con ellas, creando proyectos de cero (aunque luego mueran sin ser completados en un repositorio perdido de GitHub), planteando un problema para poder solucionarlo después. No es necesario que tenga un valor utilitario. En mi caso, por ejemplo, probar nuevas tecnologías o herramientas simplemente por hobby me ha servido para añadir más piezas al puzzle, aparte de la diversión añadida.
Saber adaptarse a nuevos retos en cada nuevo proyecto, y hacerlo de forma ágil, usando esas piezas sueltas, es otro de los motivos por lo que esta es una carrera creativa. A la hora de escribir código, siempre hay más de una forma de dar respuesta a cada uno de los problemas o requisitos del proyecto. Esa intuición para escoger un camino u otro denota también una pizca de creatividad. Por último, no hay que olvidar que un buen desarrollador se esforzará por crear un código que, además de funcionar, estará bien diseñado y será limpio, casi una obra de arte (es más, el arte digital cada vez adquiere un mayor reconocimiento).
Y no solo en la programación. Saber traducir las necesidades de un negocio a unos requisitos definidos requiere también de una alta dosis de creatividad. Igual que ser capaz de modelar datos del mundo real en un esquema de base de datos de manera escalable, de crear una arquitectura que se adapte a los requerimientos o de implementar una interfaz de usuario con un alto nivel de usabilidad y estética también requieren de mucha creatividad.
Difícilmente un proyecto digital será un camino recto desde la A hasta la Z. Ojalá fuera tan sencillo, aunque seguro sería bastante más aburrido.