La construcción de sentidos en el arte computacional: composición de lenguajes creativos

por Karen Palacio

Taller experimental teórico-práctico

Modalidad on line – 8 encuentros sincrónicos via zoom

Fechas: 16, 23 y 30 de marzo 6, 13, 20 y 27 de abril y 5 de mayo de 2022

Horario: 18 a 20 hs (Argentina)

Introducción

A partir de la desnaturalización del lenguaje humano y de abordar la programación como un ejercicio comunicativo, se propone que lxs participantes se acerquen con prácticas exploratorias a involucrarse creativamente con el funcionamiento de los lenguajes de programación, en una manera profunda: técnica e ideológicamente, explorando la construcción de sentidos desde la teoría y desde la práctica.

Crearemos mini-lenguajes (Domain Specific Languages) creativos , que nos ayuden a crear imágenes a partir de palabras, palabras a partir de música, música a partir de imágenes (etc) en bucles de semiosis infinita. Los integraremos a páginas web para poder interactuar con ellos y poder compartirlos. El curso será un recorrido donde en una primera instancia nos introduciremos a Javascript, con el cual haremos nuestros primeros dibujos y animaciones usando canvas. Luego, aprenderemos a interactuar con código externo, y que escribió otra gente, usando la librería ToneJS para hacer sonidos en la web. Uniremos dibujo y sonido, creando animaciones audioreactivas (visualización) y audio visoreactivo (sonorización). Usando NearleyJS haremos pequeños lenguajes de programación que nos sirvan para generar poemas, y que nos permitan dibujar con nuestras palabras. En el proceso nos detendremos y nos daremos libertad para reflexionar las formas en que la fantasía se relaciona con la programación: charlaremos sobre diversos proyectos de software que proponen, por su constitución y enunciación, nuevas formas de pensar la programación y el relacionamiento con las computadoras.

Objetivos generales

  • Acercarse, desde la intuición, la poética y la empatía al funcionamiento de los órganos involucrados en el cómputo: lenguaje, compilador, ejecución de código, sistema operativo, y adquirir familiaridad en abstracciones necesarias para la práctica de la programación (variable, control de flujo, condicionales, entorno de programación, ejecución de programas, paradigmas de la programación);
  • Explorar la idea de semiosis infinita a través de lo sinestésico / multisensorial / multimedial;
  • Que lxs participantes creen su propio mini-lenguaje (DSL) creativo, operando sobre el medio que elijan: pixel art, poesía, música, edición de video, visuales, etc.;
  • Exhibir, junto con documentación necesaria de cómo correrlo, estos lenguajes creados en una web colaborativa del taller, a fin de que otres interesades puedan explorar e inspirarse para otros proyectos o necesidades, promoviendo de esta manera la interacción con comunidades del software libre, entre otras.

Objetivos específicos

  • Practicar y contrastar Javascript declarativo, javascript OOP, javascript imperativo.
  • Ejercitar el hábito de enunciar intención de programación en lenguaje natural.
  • Ejercitar habilidad de pasar de lenguaje natural a lenguaje técnico.
  • Familiarizarse con el lenguaje de programación Javascript y su ecosistema.
  • Hacer páginas web interactivas y experimentales de generación de poemas, música y visuales.
  • Llevar adelante proyectos de programación creativa desde el entendimiento y la reflexión de los fundamentos técnico-poéticos subyacentes.

Tecnologías que se explorarán: Javascript. npm. node. Nearleyjs. ToneJs. Hydra. NLPjs. Piet.

Destinatarixs

Artistas visuales, sonoros, poetas, docentes, programadorxs, lingüistas y todas las personas interesadas en desarrollar a través de la práctica intuiciones y una visión profunda acerca de la programación creativa y de la construcción de sentidos a partir de alli.

Conceptos clave

Semiótica, Arte Multimedia y Digital, Compiladores, Lingüística, Filosofía de la computación, Programación Creativa.

Requerimientos


No se asumen conocimientos de programación, pero está orientado a artistas digitales/programadores creativos que hayan interactuado fuertemente con algún software creativo (ya sea Blender, Hydra, Sonic Pi, Tidal, Touch Designer, Ableton, etc)

Contenidos

El acto comunicativo “programación”. 

La programación como acto comunicativo: actitud de programación.

Estructura de un texto-programa: alfabeto. datos como palabras. tipo de datos simples. linea de código. bloque de código. 

Sintaxis / semantica de un programa.

función. ejecución de código js. 

Hydra. Paradigma sonido para hacer visuales.

Piet. Dibujo como fuente de programación.

Pixel synth

Conectando partes: audiorreactividad y Visoreactividad (visualización y sonorización de datos). 

Semiosis infinita: Haciendo que la música interactúe con los dibujos. Haciendo que los dibujos interactúen con la música.

Lo epidérmico en el arte computacional: procesos ⇔ resultado final.

Entender empáticamente el proceso de semiosis computacional: traducción, compilación, ejecución de código.

Entendiendo qué es un/el lenguaje formal: concepto de expresividad, reglas de producción, Gramáticas, notación BNF.

Introducción a NearleyJS

Demo: Haciendo un DSL que genere poemas de borges.

Semiosis infinita: un programa válido en este lenguaje de programación *es* un poema

Extendiendo un lenguaje para dibujar colores con palabras (Post processing con NearleyJS).

Extendiendo el concepto de compilador.

Tokenizacion, stemming, sentiment analysis, identificaciòn de intención

BIO Karen Palacio

Karen Palacio es una live coder, programadora y artista digital de Córdoba Capital, Argentina. Es diplomada en Ciencias de Datos del FaMAFyC, estudia la Lic en Ciencias de la Computación en el FaMAFyC y trabaja como A.I. Software Architect en una empresa de Software de Córdoba Capital. Como live coder de visuales ha hecho performances de improvisación de código en Cosquín, encuentros de noise, conferencias de tecnología, museos, y fiestas electrónicas -entre otros lugares- llegando a programar hasta 5 horas seguidas en vivo.

Duración: 8 clases – 2 meses // inicio 15 de marzo

Valores del taller AR$12800 (Mercado Pago en cuotas – Transferencia bancaria) – USD 120 (PayPal)

Python aplicado al arte

Taller teórico-práctico a cargo de Flavia Laudado y David Vinazza

Python es muy versátil y está presente en muchísimos y variados usos vinculados a la exploración multimedial: desde aplicaciones de aprendizaje automático pasando por programas de creatividad y ejecución digital hasta el desarrollo de videojuegos, es frecuente encontrar algún tipo de integración con este lenguaje. Utilizando el arte generativo como un disparador amplio y un posible escenario de acción, invitamos a aprovechar la accesibilidad y simpleza de Python para programar y diseñar algoritmos de forma creativa.

El taller está orientado a quienes quieran comenzar a programar con Python de forma creativa, navegando el límite difuso entre el arte y la programación. Se propone brindar una vasta introducción a la programación en Python, desde la perspectiva del código creativo y el arte generativo, partiendo de conceptos básicos y mutables para abordar ambas prácticas de forma exploratoria y colectiva, a partir de la construcción de un glosario vivo que dé cuenta del desarrollo del taller desde una perspectiva técnico-estética y de los debates que surjan.



El taller está orientado a personas que quieran introducirse en el arte generativo y la

programación creativa, mediante el lenguaje Python, con una perspectiva lúdica, buscando

experimentar y desarrollar algoritmos generativos.

*No se requieren conocimientos previos de programación


Taller teórico-práctico [on line]

8 encuentros teórico/prácticos de 2hs

+2 encuentros de apoyo de 2 hs

inicio 17 de Noviembre / 10 encuentros en 5 semanas

Lunes y Miércoles

18:30 a 20:30 hs (Chile – Arg) // 16:30 a 18:30 hs (Perú – Colombia – Ecuador – CDMX)

Valores:

AR$ 9200

USD 120

Contenidos:

Encuentro 1

Introducción al Arte Generativo

■ Definición general

■ Referencias

○ Introducción a Python

■ Diferencias con otros lenguajes

○ Recursos disponibles

Encuentro 2

Configuración de PyCharm para el taller

○ Elementos de Python

■ Variables y Tipos de datos

■ Funciones

○ Programa generativo

■ 20 GOTO 10

○ Referencias

■ Generatividad sin computadora

Encuentro 3

Elementos de Python

■ Diccionarios

■ Listas

○ Librerías y Frameworks

■ p5 (Análogo a Processing.py)

○ Funciones gráficas

○ Glosario vivo

○ Referencias

■ Inicios de la computación

ENCUENTRO 4: CLASE DE APOYO 1 – TEMÁTICA LIBRE A ELECCIÓN DE LXS PARTICIPANTES

Encuentro 5

Sistemas de referencia

■ Colores y coordenadas

○ Elementos de Python

■ Bucles y Expresiones condicionales

○ Programa generativo

■ Perlin Noise Pulsar

○ Referencias

■ Paletas de colores

Encuentro 6

Reglas en un sistema generativo

○ Librerías y Frameworks

■ pygame

○ Juego generativo

○ Referencias

■ Error y glitch como estética

Encuentro 7

Programación Orientada a Objetos

○ Elementos de Python

■ Clases, métodos y propiedades

○ Programa generativo

■ Game of Life

○ Referencias

■ Determinismo y aleatoriedad

■ Repetición y azar

ENCUENTRO 8: CLASE DE APOYO 2 – TEMÁTICA LIBRE A ELECCIÓN DE LXS PARTICIPANTES

Encuentro 9

Aplicación de funciones trigonométricas

○ Librerías y Frameworks

■ opencv

■ Programa generativo

■ Sistema de partículas

○ Referencias

■ Arte y matemática

Encuentro 10

Interactividad

○ Librerías y Frameworks

■ Requests

■ Midi

■ OSC

○ Cierre del Taller

Acerca de lxs docentes a cargo:

Flavia Laudado @flavlaudado

Flavia es oriunda de Ushuaia y está radicada hace más de una década en Buenos Aires. Finalizó sus estudios en la Licenciatura en Artes Electrónicas en el año 2018. Es docente y desarrolladora de dispositivos e instalaciones en entornos programables, aplicándose en ámbitos como imagen digital, electrónica, robótica y programación creativa. Sus espacios referenciales son la fotografía, el cine, la literatura, la naturaleza y lo cotidiano como fuente de inspiración. Ha trabajado de forma colaborativa e individual supliendo necesidades electrónicas para artistas y empresas, y de manera formal en espacios educativos como la Universidad de Tres de Febrero y Flexible Laboratorio.

David Vinazza @camposdebeats

David trabaja desde hace 15 años en el sector tecnológico, especialmente en infraestructura y automatización. Estudió Ingeniería Electrónica en la UTN FRBA, además de algunos seminarios orientados a la computación de alto desempeño. Es lector asiduo de ciencia ficción y entusiasta de la tecnología. Se considera programador creativo desde el 2015, cuando descubrió Processing de casualidad buscando crear visuales interactivas para su banda. Desde entonces ha participado en numerosos proyectos artísticos y predica un abordaje distinto a la programación y el software libre.


Laboratorio de Orfebrería Digital -Edición Remix Audio Web-

Por Flor de Fuego

Modalidad on line vía Zoom

Inicio: Lunes 6 de diciembre 17 hs (-3 UTC / hora en Argentina)

Fechas y horarios: 6, 9, 13, 16 y 20 de diciembre 2021

17 a 19 hs (-3 UTC)

//

Presentación

*No se requiere contar con conocimientos previos

El término orfebre procede del francés orfèvre [aurifaber ‘artífice’], y este a su vez tiene raíz latina en auri ‘oro’ y faber ‘arquitecto’, o bien del verbo latino facĕre ‘hacer, realizar’

Se dice que que une orfebre es una persona capaz de desarrollar trabajos artísticos maleando los metales y piedras preciosas para construir sus artesanías. 

Orfebrería digital significa trabajar desde la materia prima del bit, labrando el código, maleando de manera artesanal para producir una pieza digital.

Este taller es una continuación y extensión del Laboratorio de Ciberpoesía, se profundizará sobre el uso y la mezcla de los frameworks Hydra web de @ojack , p5js y p5.glitch creado por @teddavisdotorg con el fin de crear webs híbridas que funcionan como piezas audiovisuales interactivas.

Contenidos mínimos

Objetivo principal

  • sistema hexadecimal/código binario
  • glitch – data bending 
  • hydra 
  • p5js/p5live
  • p5.glitch 
  • tone.js para audio web
  • Introducción a html, css y JS en glitch.me 

La propuesta será aprender a generar códigos interactivos en los que puedan dialogar los diferentes frameworks, a modo de laboratorio experimental, dentro de Hydra como motor principal.

p5glitch es una librería que sirve para glitchear en tiempo real imágenes, vídeos y camaras

tone.js, por su parte, es una librería basada en web audio, para manipular sonido en la web.

Nos propondremos que cada participante realice su propia web interactiva, su pieza audiovisual aplicando las diferentes herramientas propuestas y las que surjan de la interacción entre todxs lxs participantes.

Acerca de Flor de Fuego

Es Profesora en Artes Plásticas orientada al Dibujo en la Facultad de Artes de la UNLP.
Es adscripta en la cátedra de Fotografía e Imagen Digital en la Facultad de Artes. Investiga sobre imagen digital y medios, produciendo imágenes y sonidos relacionados al live coding, animación, video e internet. Pertenece al colectivo CliC (Colectivo de Live Coders) con quienes participaron del festival +CODE en Buenos Aires y diversas charlas.

Participó también en MUTEK 2019 y 2020. Formo parte del Conversatorio sobre Género, software y programación al vuelo en Latinoamérica, realizado en el Centro de Cultura Digital de la Ciudad de México 2019. Además ha realizado proyecciones fulldome en el Planetario de la Ciudad de Buenos Aires y en Bogotá, Colombia para el festival Domo Lleno. Forma parte de un dúo llamado c0de p03try, han expuesto en lugares como JSAmsterdam Nation Conference, ICLC (International Conference on Live Coding), Irlanda. Festival Pumpumyachkan, Perú.

Desde 2019 trabaja en conjunto con WIP arte digital en el armado de propuestas para la difusión del livecoding utilizando Hydra y otras herramientas que faciliten y busquen el cruce de distintos lenguajes como el visual, textual y la performance.


Valores:

$6300 (Pesos argentinos)

Desde el exterior: USD80