Processing


Estaba pensando yo en qué lenguaje de programación recomendarte. Porque claro, hacer cacharros con basura está bien, pero hacer cacharros inteligentes con basura se sale por los cuatro cantos. Y el camino hasta el don de la inteligencia, me temo, pasa por alguna forma de programación. Además, que saber programar es bastante guay en sí mismo.

Total que me he acordado de game mod, un taller realizado por Steph Thirion el año pasado en Barcelona. Según palabras del propio Thirion:

Game Mod was a six hour long workshop with the objective of showing the participants that it is not required to understand code to experiment and play with it.

Although they had no experience in coding, the task of each participant was to make a mod (modified version) of a game built in Processing.

El juego en cuestión era una version del Breakout. Ese en el que hay que romper ladrillos con una pelotica. Aunque es posible que lo conozcas más como Arkanoid. Y el resultado del taller es tan bonito como esto:

Así que esto se hace con Processing. Y debe ser sencillo, porque se supone que esta gente no tenía experiencia previa. Pues sí. La verdad es que es un lenguaje bastante agradecido. Pero mejor te cuento desde el principio.

Processing es un proyecto creado por Casey Reas y Benjamin Fry, ambos miembros del MIT Media Lab, en un intento por proporcionar un lenguaje de programación apropiado para el diseño digital y la producción de proyectos multimedia en general.

Orientado hacia una comunidad de usuarios poco acostumbrados a picar código, el resultado de este proyecto es un lenguaje de programación, basado en Java, sencillo y fácil de manejar que a pesar de su sencillez permite la ejecución de proyectos de calidad profesional. Sobre todo en el apartado gráfico donde claramente se ha invertido gran cantidad de esfuerzo por parte del equipo de desarrollo. Esto es especialmente afortunado, porque podemos tener feedback visual de nuestros programas prácticamente desde la primera línea, lo que simplifica muchísimo el proceso de aprendizaje mediante ensayo y error.

Pero lo mejor está por llegar, porque Processing es open source, lo que no sólo quiere decir que no te va a costar un duro. Implica, además, que tiene detrás toda una comunidad de gente que dedica sus esfuerzos a mejorar el lenguaje día a día. Como consecuencia directa de esto se pueden encontrar en la web unos cuantos tutoriales y ejemplos así como cantidad de librerías de lo más elegante. Desde tratamiento de sonido hasta comunicación con un wiimote pasando por motores de sistemas de partículas.

Además, el carácter open source de este lenguaje también le ha valido ser elegido para la programación de microcontroladores como Wiring y Arduino (que seguro que te suena de otras películas) lo que nos va a ahorrar tener que aprender otro lenguaje más adelante.

El compilador está disponible para Windows, Mac y Linux ( lo que siempre es grato a los ojos de Dios) y la salida por defecto tras compilar nuestros programas (sketches, como los llama esta gente) está en forma de applet java. Que es otra forma de decir que lo que programes aquí correrá en cualquier ordenador que tenga un navegador web.

De hecho, incrustar uno de estos sketches en una pagina web no es más complicado que hacerlo con un video de Youtube. Esto, unido a la consabida afición por el exhibicionismo de los artistas multimedia en general, hace que sea fácil encontrar ejemplos y experimentos en la red. En blogs y paginas personales y sobre todo en OpenProcessing, un espacio de exhibición a modo de wiki en el que la gente expone sus programas junto con el código fuente y su descripción para el uso y disfrute del resto de la comunidad.

Por esto, y por otras cosas que seguro se me escapan, Processing se aproxima desde todos los frentes a lo que aquí entendemos como BUENO. Así que ya estas tardando en bajártelo y en ir practicando, porque a partir de ahora lo vamos a usar para hacer maldades.