Logo Lainformacion.com
< Un gran consejo sobre tener que trabajar para un empresa
Compras incompletas, carritos abandonados >

Zen y el arte de la programación en tiempo real

Este artículo se publicó originalmente en Trend It Up, un blog de Sony Mobile donde colaboramos con anotaciones sobre el mundo de las tendencias combinadas de la tecnología, el diseño y las artes.

Quien pase sus días con lenguajes de programación y software de creación de animaciones debería reservar un rato para ver esta interesante charla de Bret Victor, que también resultará interesante a otros artistas y aficionados a la tecnología. Victor es un diseñador de interfaces y explorador de nuevas ideas digitales, también de las formas de visualizar conceptos complejos. En la conferencia se habla sobre algunos de los principios que usamos actualmente en la programación y el diseño de aplicaciones y videojuegos. Resulta algo más que inspiradora: te hace preguntarte por qué no todo el mundo trabaja ya así.

Tradicionalmente el trabajo de programación ha sido más o menos así: pensar en el código, escribir el código, ejecutar el código. A partir de ahí se obtenía el resultado, se probaba y vuelta a empezar. Podía haber ligeras diferencias en los tiempos de espera si el lenguaje era interpretado o había que compilarlo, o según los entornos de programación que se usaran, pero esa ha sido básicamente la idea durante mucho tiempo.

Codigovisual-1

Lo que muestra Bret Victor es un sistema que aprovecha la potencia de los equipos actuales para mostrar el resultado en tiempo real mientras se está escribiendo el código. Quien alguna vez haya utilizado el traductor de Google verá que el efecto es básicamente el mismo: con cada nueva letra pulsada la mitad de la pantalla cambia automáticamente mostrando cómo se traducen las palabras que se están escribiendo.

De esta forma resulta más fácil encontrar los bugs y errores en el código, calcular ciertos valores o probar ideas. Cuando se trabaja con conceptos matemáticos como matrices, sistemas de ordenación, funciones para procesar textos o elementos de las bases de datos, este sistema permite ver instantáneamente si el código escrito funciona o no. Bastan algunos datos de ejemplo.

Pero su verdadera potencia se desata cuando se programa en tiempo real en entornos tales como las animaciones o los videojuegos. Las variables «cobran vida» y pueden modificarse con el ratón, en vez de ser meros números con decimales. El programador puede explorar y descubrir cosas que sus creaciones pueden hacer sin apenas tocar el teclado. Incluso en entornos en los se trabaja con objetos que simbolizan personajes y elementos de mundos virtuales es posible ver todas las historias futuras, superpuestas, y elegir la que resulta más conveniente directamente con el ratón.

¿Quién dijo que programar era difícil?