Listado

Introducción a Creative Coding

Iniciamos una serie de artículos sobre Creative Coding con este primer acercamiento a los orígenes y actualidad de la disciplina.

Autor/a

Fecha de publicación

23/5/2022

Compartir

Twitter

LinkedIn

Creative coding es un término que se utiliza para describir una amplia gama de prácticas artísticas que utilizan el código, la programación informática, como medio. Suele distinguirse de la programación estándar, la más funcional, porque no tiene como objetivo resolver problemas para el usuario o automatizar procesos, por ejemplo, sino que tiene como fin expresar ideas y conceptos. Está mucho más ligado a experiencias que a términos funcionales.

Este término parece algo actual, muy de moda, porque la relación entre arte y tecnología siempre ha pasado muy desapercibida para el público general, pero sus orígenes se remontan a los años 50 y 60 del siglo pasado, en lo que se denominaba Computer Art: cuando se empezó a experimentar con las posibilidades creativas que tenían las máquinas para generar arte.

Lo que se buscaba en este movimiento era programar algoritmos que permitieran al ordenador renderizar el resultado a través de un elemento visual, pudiendo incluso añadir un factor de aleatoriedad para obtener varios resultados a partir del mismo programa, cada uno de ellos único y a veces inesperado para el autor. Esta es la belleza de esta disciplina.

Para conocer más sobre las historia del computer art os recomendamos el libro When the Machine Made Art, que hace un análisis exhaustivo de este movimiento de arte digital durante las décadas de los 60, 70 y 80. Otro recurso muy interesante también es The Recode Project, un proyecto en el que uno de sus objetivos es preservar las obras pioneras que se hicieron en la década de los 70.

De entre todas las personas que contribuyeron a este movimiento es necesario resaltar el trabajo de Vera Molnar, artista húngara considerada pionera del arte computacional y generativo. Aquí podéis ver algunas de sus obras.

Conociendo el contexto histórico todavía nos falta responder unas preguntas. ¿Por qué surge? ¿Cuál es la motivación? El arte es una forma de expresión que podemos realizar a través de código. La mayoría del tiempo que estamos programando en el trabajo tenemos un fin en mente, una lista de objetivos, de tests que se deben cumplir, mientras que con esto se abre un nuevo modelo mental en el que puedes, simplemente, experimentar y jugar. Siempre se dice que la innovación se encuentra cuando la ciencia y el arte se conectan, cuando se crea esa armonía, así que aprovechar esta oportunidad para explorar ideas tiene muchas ventajas ya nos permite incluso abarcar otras disciplinas como el diseño, la física, matemáticas, arte y música, además de desarrollar tanto nuestro lado creativo como el lógico. Todo esto, sin duda, nos ayuda a ser mejores programadores y programadoras en nuestro día a día.

Desde aquella época a hoy en día han pasado más de 60 años, que hablando de tecnología es una eternidad, por lo que, como os podréis imaginar, han surgido una gran cantidad de herramientas, lenguajes y tendencias.

Uno de los proyectos más importantes que existen actualmente es Processing. Es un lenguaje de programación y un entorno de desarrollo de código abierto basado en Java que apareció a principios de los años 2000 y cuyo principal objetivo es hacer la programación accesible a artistas, diseñadores, educadores, principiantes, etc. En resumen, al mayor número de personas posible. Además, hace hincapié en la facilidad para crear prototipos rápidamente para probar ideas, por eso a un programa en Processing se le denomina Sketch.

Cuenta con una fundación, con su mismo nombre, a través de la cual se mantienen diversos proyectos Open Source, entre ellos p5.js. Tiene una comunidad increíblemente sana e inclusiva, además de ser grandes defensores del sofware libre y de la alfabetización del mismo, así que son un ejemplo en muchos aspectos. Es muy recomendable visitar su página de Community porque es una declaración de los valores de su comunidad y toda una referencia en este sector.

Y, como decíamos antes, dentro de todo este ecosistema nos encontramos con p5.js, que es una reinterpretación de Processing, pero esta vez mediante JavaScript, para poder ejecutarlo en web. La API es muy similar y la curva de aprendizaje muy baja, por lo que en muy poco tiempo se pueden conseguir grandes resultados.

En los siguientes artículos hablaremos más en profundidad sobre la librería.

Relacionados

Detalles de implementación en los tests, un artículo de Kent C. Dodds

Una nueva traducción de un gran artículo de Kent C. Dodds: Testing Implementation Details. Una conclusión: si ya es bastante complicado hacer tests, ¿por qué hay que crear tantas reglas para hacerlo más difícil?

20/2/2024

Referentes 2: Cuatro nombres imprescindibles a los que seguir la pista

Hace unos meses en RedRadix comenzamos una serie para ir recopilando y compartiendo los nombres de aquellos profesionales que, por sus trayectorias y contribuciones, son un referente para nosotros. Aprovechando que recientemente se ha celebrado el día Internacional del Programador, sumamos cuatro entradas: Julia Evans, Torsten Grote, Chris Coyier y Carlos Azaustre.

20/9/2023

Button Text