Los programadores como superhéroes

Durante esta semana se ha difundido un vídeo de code.org en el que varias celebrities del celuloide empresarial tecnológico (con la aparición estelar de Chris Bosh, basquetbolista de la NBA que estudió computación) se unen para sacar a relucir la importancia de “este super poder” que apenas se trata en el 10% de escuelas americanas.

creatividad

El vídeo no deja de ser entrañable (frase de Steve Jobs incluída), y tengo que admitir que como desarrollador, me parece una gran propuesta.

 

Pero de lo que peca el slogan es de seguir la tendencia de mitificar una profesión que, aún resultando compleja y sumamente enriquecedora, se ampara en el éxito de unos pocos “genios” que supieron dar con las necesidades de la sociedad y tomaron buenas decisiones en el momento justo.

El programador: una dosis de racionalidad y otra de creatividad

Ya habíamos hablado de un tema parecido en la entrada Software y Programadores: Ejes principales de la evolución, y es que en un mundo tecnológico como es el nuestro, cada día se hace más patente la dependencia del software.

Hay que hacer hincapié que tener nociones de programación será cada vez más una necesidad que una opción, ya que no dejará de ser el punto de inflexión entre programar o ser programado. Impresoras 3D, robótica casera y el Do It Yourself irán poco a poco ganando terreno a la dependencia centralizada de la producción industrial, permitiendo al cliente personalizar e incluso diseñar y supervisar cada etapa del desarrollo de un producto hasta su consumo final.

Es paradójico sin embargo que se tenga la idea del informático como un ser antisocial, regido por unas normas firmemente arraigadas en una tabla ASCII, y permanentemente absorto en código indescifrable. Más aún soy de la opinión de que éste es el gran problema de las ingenierías (al menos en nuestro país), que se centran en ofrecer un contenido sistematizado de aptitudes racionales, dejando de lado una parte tan esencial como es la creatividad.

Programar es resolver problemas usando un lenguaje especializado. No dista mucho del trabajo de un escritor, o de un artista, y sin embargo, me he cruzado en la vida con muchísimos informáticos incapaces de ver esta conexión. Hay una gran dosis de abstracción y conceptualización de ideas en aquello que muchos tachan de “picar código“, una situación que espero vaya poco a poco cambiando conforme los lenguajes de programación se abran a un discurso más semántico y humano (os dejo como corolario de esta aseveración un vídeo al final del artículo de una ponencia de Bret Victor, una mirada que se ajusta mucho a mis propias conclusiones), salvando quizás ese obstáculo que suele echar hacia atrás a todos esos “desarrolladores en potencia” a los que le falta la parte técnica para consumar sus proyectos.

Desmitificando la labor del programador

Dicho esto, quería dejar claro que muchas de estas iniciativas se apoyan en el éxito obtenido por unos pocos, mientras que la inmensa mayoría acaba trabajando en empresas dirigidas por directivos anclados en esa visión puramente sistémica del informático, nublando su parte creativa, y acabando con el carácter de innovación que se espera de una profesión como es la nuestra.

Antonio Ortiz ofrecía un discurso semejante hace escasos días, al tachar al vídeo de incidir y reincidir en la excepción y no en la norma.

Resulta sencillo hablar de cómo el joven Zuckerberg programó en un par de noches lo que acabaría siendo la red social más grande de la historia, o cómo grandes compañías de la talla de Microsoft o Apple nacieron en un garaje, pero me parece un despropósito ofrecer únicamente esa mirada al espectador, que no es más que una excepción, a lo que ocurre en la realidad.

La mayoría de proyectos de software están enfocados a resolver problemas puntuales, y no generalistas. Facebook solo hay uno, y sin embargo al día nacen miles de proyectos de software industrial o empresarial, con presupuestos ajustados y un margen restringido.

No hay que olvidar que un proyecto de desarrollo es un proyecto enfocado a un cliente (una empresa, o un target), y siempre va a estar limitado en este aspecto. Eso no quita que se pueda innovar y de vez en cuando surgan startups realmente increíbles, pero lo cierto es que al final del mes hay que pagar las facturas, y lo que acaba dando dinero no suelen ser estos últimos.

Resumiendo: me alegro de que haya cada vez más una concienciación de la importancia que tendrá en el día a día la programación (tanto a nivel conceptual de resolución de problemas como las potentes herramientas de creación que nos procura), que se rompa con la visión del informático solitario y asocial, pero sin olvidar que hablamos de una profesión (un modo de vivir si se quiere) más, con sus pros y sus contras.

Si este tipo de iniciativas sirven para que empresas de la talla de Google “regale” 15.000 raspberry pi a colegios británicos para facilitar la transición y formar futuros científicos de computación (o al menos que no le tengan miedo a un microprocesador), bienvenidas sean.

 

Edit a día 21 de Enero del 2016: Los chicos de WhoisHostingThisEmail se han puesto en contacto conmigo por si me interesa compartir la infografía que han sacado sobre los lenguajes más importantes a día de hoy en la industria (EN).