Lenguajes de programación gráfica y alfabetización digital

La generalización del uso de la tecnología digital y su presencia en prácticamente todas las actividades humanas abarca desde hace tiempo las realizaciones artísticas, no sólo en disciplinas tradicionales como la música o el cine sino también creando las nuevas variantes de arte tecnológico, performático o no. Esta realidad se refleja en la educación artística hoy que no es ajena al proceso de tecnificación que se está viviendo. Sin embargo, es evidente la manifestación de distintas trabas y dificultades al momento de aplicar recursos informáticos en el campo de la formación de los estudiantes.

Las falencias y dificultades que aparecen al momento de realizar la labor de formación artístico-tecnológica tiene muchos aspectos, pero podemos mencionar simplemente dos situaciones que ejemplifican el tipo de problemas que se presentan. Por un lado existen deficiencias y carencias estructurales que en gran medida se originan en dificultades económicas: falta de equipamiento básico como las mismas computadoras, proyectores, equipos de audio y red de internet entre otras. Es cierto que los planes estatales nacionales y locales están revirtiendo en parte este problema y constituyen un gran avance, pero de todas maneras es mucho lo que falta, sobre todo en zonas alejadas de las grandes ciudades. En segundo lugar aparece la dificultad que plantea a los docentes, por diversos motivos, el empleo de los recursos tecnológicos disponibles y el establecimiento de nuevos canales y estrategias didácticas basadas en éstos. Ya sea por falta de conocimiento, estímulo o interés, introducir nuevos o no tan nuevos dispositivos tecnológicos dentro del ámbito educativo es todavía un desafío.

Alfabetización digital.

De todas maneras hay una dificultad que es de distinto nivel y que tiene significado, origen y problemáticas diferentes. Es la del concepto de alfabetización digital y de su desarrollo o ampliación de acuerdo al avance de las tecnologías digitales, y del uso que se hace de éstas.

A pesar de la existencia de planes estatales para la inclusión informática, “… los jóvenes haciendo uso del chat, navegando en distintas páginas de Internet no adecuadas a su nivel educativo o utilizando ciertos programas multimedia, pensamos erróneamente que tienen amplios conocimientos y habilidades en esta área, cuando están usando solo un 10% de lo que ofrece la herramienta informática”. (Sandra Spitzer, 2012).

Esto implica no sólo un desaprovechamiento de las posibilidades de la tecnología, sino que también una falta de adecuación a las condiciones que exige una adecuada alfabetización digital. El concepto de alfabetización es dinámico en general, pero mucho más en relación a la tecnología cuyos tiempos de renovación y modos de penetración en todos los ámbitos humanos están en una franca aceleración sin que se pueda prever otra situación.

Además la mayor parte de los contenidos y de las habilidades que las personas adquieren sobre la tecnología están en su mayor parte orientados a su función como usuario de aplicaciones dirigidas al ámbito de la producción, la administración y la provisión de servicios, como procesadores de textos, bases de datos, planillas de cálculo entre otras. Y los otros usos en general consisten en navegar en las redes sociales, emplear buscadores para conseguir información y ver videos y escuchar música.

Naturalmente la importancia de estos aspectos del empleo de la tecnología es muy grande y sus beneficios son importantes, pero hay otros que están cobrando una importancia creciente y sobrepasan estos límites, entre éstos la habilidad para programar.

Por lo que esta situación podría traer como consecuencia una doble insuficiencia: tanto en la formación en campos que en poco tiempo van a ser mucho más importantes para la inclusión del sujeto en el medio y la otra en la incorporación de la herramienta informática y el mundo digital por el sujeto desde una perspectiva meramente utilitaria relacionada con el mercado de trabajo.

En estas definiciones existen dos perspectivas: la de asociar al sujeto como una pieza más del ordenador, cuya conducta y por lo tanto su subjetividad está adaptada y programada de acuerdo a las necesidades del dispositivo, o como un sujeto creador cuya relación con este dispositivo sea no sólo la de un operador sino la de un participante activo en su conformación y empleo.

En el campo de la actividad artística ocurre el mismo fenómeno. La mayor parte de la utilización de la tecnología está dirigida a editores de audio, video y procesamiento de imágenes. Esto tiene como razón fundamental el enorme abaratamiento de los costos de las producciones artísticas debido al fácil acceso a estos softwares y a la digitalización de la mayor parte de los medios audiovisuales que se producen y difunden. Sin embargo colocan al artista en una posición similar en relación al uso de la tecnología a la que tiene un administrador que usa una planilla de cálculo.

En ese horizonte la programación utilizando lenguajes de programación gráfica orientados a la actividad artística tiene mucho que aportar en el campo educativo y social, como una herramienta crítica y creativa para considerar a las tecnologías como formas culturales. Estos softwares permiten otras formas de apropiación de la herramienta tecnológica mucho más activa por parte del creador y no lo limita al rol del usuario, similar al de una pieza de una cadena de producción. Por medio de ellos puede incorporar a su creación una herramienta informática adaptada a sus necesidades artísticas, además de abrir la posibilidad de la existencia de nuevas disciplinas como el arte interactivo, que si bien existía desde antes tiene en este momento un desarrollo y unas posibilidades que lo hacen cualitativamente diferentes.

Los lenguajes de programación gráfica.

Cuando se piensa en programación, programas y programadores, generalmente se los concibe como actividades que pueden ser realizadas únicamente por profesionales altamente especializados y capacitados, alejando por lo tanto a muchas personas de la posibilidad siquiera de intentar conocer ese mundo.

Es cierto que parte de este supuesto tiene sustento. Saber programar significa, entre muchas otras cosas, conocer y dominar un lenguaje, y luego saber aplicarlo. Es un lenguaje artificial que tiene reglas y principios, que es necesario conocer y entender. No sólo eso sino que del mismo modo que existe una inmensa variedad de idiomas que se hablan en el mundo, son también diversos y variados los lenguajes de programación. Cada lenguaje posee específicas reglas y principios, pero al igual que los idiomas, generalmente un lenguaje de programación tiene a otro como antecesor, de manera tal que compartirán muchísimos elementos en común. A su vez, no todos tendrán las mismas funciones y/o campos de aplicación específicos, y tampoco la misma complejidad para aprenderlos. Es por este motivo que ciertos tipos de lenguajes son más propicios para la iniciación en el campo de la programación. Uno de estas clases de softwares son los lenguajes de programación gráfica (en inglés VPL, por “visual programming lenguaje”), que por sus características son muy adecuados para el acercamiento a la experiencia de la programación.

Un lenguaje de programación gráfica o visual (VPL) es cualquier lenguaje de programación que permite a los usuarios crear programas manipulando sus elementos a través de representaciones gráficas en lugar de tener que especificarlos textualmente. Un VPL permite programar con expresiones visuales, empleando textos y símbolos gráficos como elementos de la sintaxis o nota secundaria. Por ejemplo, muchos VPL están basados en la idea de “cajas y flechas”, donde las cajas u otros objetos de pantalla son tratados como entidades, relacionadas por flechas, líneas o arcos que representan relaciones. Otros presentan una interfaz gráfica compuesta de bloques de distintos tipos que se arman como rompecabezas construyendo grupos a través de los cuales circulan las instrucciones. También hay programas específicos con símbolos de circuitos electrónicos, matemáticos u orientados a la robótica.

En el ámbito educativo existe un interés creciente en desarrollar herramientas y lenguajes que mediante el juego faciliten un aprendizaje de las bases de la programación. Uno de los lenguajes de programación orientados al aprendizaje para niños más populares es Scratch, de distribución gratuita, del MediaLab del MIT. Un desarrollo complementario al que se puede acceder on-line es Snap!, de la Universidad de Berkeley. En la misma línea Google ha presentado recientemente su propio lenguaje para el aprendizaje. Se trata de Blockly, un editor de programación gráfica on-line que permite construir aplicaciones mediante bloques. Una de las grandes ventajas que ofrece esta última herramienta es que permite exportar a lenguajes más complejos como JavaScript, Dart, Python y XML.

Programar para bailar. Software Isadora. Experiencias educativas.

El Equipo de Investigación en Tecnología Aplicada a la Danza, InTAD, con proyectos de investigación acreditados en el Departamento de Artes del Movimiento, Universidad Nacional de las Artes, en Buenos Aires, Argentina, que integro y dirijo, desde hace diez años lleva adelante experiencias no solo educativas y de formación sino artísticas, para lo cual se apoya en las tecnologías multimediales interactivas. Uno de los softwares que utilizamos es Isadora, un lenguaje de programación gráfica basado en la idea de cajas y cables, que tiene su origen en el software Max escrito por Miller Puckette en los años 80, del cual derivaron Max/Msp, Pure Data y muchos otros. Si bien tiene herramientas de procesamiento de sonido está fuertemente orientado hacia el procesamiento de imagen en tiempo real y a la interacción con el medio o el performer. Se caracteriza por tener una interface gráfica muy intuitiva, muy adecuada para su empleo por artistas que no tienen formación en informática, matemáticas o ciencia. Es muy potente ya que tiene partes del programa bastante importantes representadas por gráficos llamados “actores” que se colocan en un espacio de trabajo llamado “escena” y se conectan entre sí mediante cables para configurar los flujos de datos. Permite lograr resultados impactantes con poco trabajo de programación, por lo cual ayuda a romper la desconfianza y la lejanía que en general tiene un bailarín o un actor hacia la tecnología digital.

Es un software propietario que requiere comprar una licencia para acceder a guardar los trabajos o patches. De todas maneras muchos artistas lo usan en modo demo, que permite de todas maneras su uso. Existen otros desarrollos que tienen algunas de las funciones de Isadora, como el ARGOPd programado en Pure Data, pero su empleo es bastante más complejo y si bien tiene una potencia y posibilidades similares necesita de un aprendizaje mucho mayor. Una de las posibilidades del uso de Isadora es permitir la práctica de la programación gráfica en un entorno amigable y adiestrar así al programador en sus procedimientos antes de abordar otros softwares.

Nuestro equipo de investigación realizó actividades de vinculación con las escuelas de danza de nivel medio de la Ciudad de Buenos Aires y a través del Conectar/Lab del programa Conectar Igualdad, introduciendo el software Isadora como herramienta específica de aprendizaje y experimentación para las artes del movimiento, a través del uso de las netbooks que poseen los alumnos. Estas experiencias tienen dos objetivos principales teniendo en cuenta que participan tanto alumnos como docentes, y teniendo en cuenta los problemas planteados al principio de este trabajo. En primer lugar acercar a los docentes y alumnos esta herramienta para la programación artística, difundiendo sus características y los principales conceptos para su manejo. Y en segundo lugar potenciar y estimular el uso de las netbooks y el vínculo entre los alumnos y éstas, cambiando el uso de la herramienta de una forma utilitaria a otra más participativa y creativa, modificando la posición del alumno frente a ella y acercando nuevos horizontes de inclusión y oportunidad.

Perspectivas.

La falta de softwares de acceso gratuito con interfaces más amigables para el usuario destinados al procesamiento en tiempo real de imagen y sonido es una de los problemas que más obstáculos ofrece para el estudiante o artista interesado y para el docente. En ese sentido sería deseable que las universidades públicas y/u otras instituciones destinen recursos para su desarrollo. Hay interesantes desarrollos de sistemas operativos y naturalmente aplicaciones específicas para distintas disciplinas, pero siguen faltando herramientas específicas más adecuadas.

Un proyecto en el que participan algunos integrantes de nuestras universidades y que ocasionalmente recibe algún recurso es Moldeo, empleado por la Prof. Alejandra Ceriani de la Universidad nacional de La Plata, Argentina, para espectáculos de danza, y por otros artistas para instalaciones multimedia y obras performáticas. Es un desarrollo muy importante, pero su empleo sigue siendo bastante dificultoso para personas no iniciadas en la informática, por lo que su empleo como herramienta de acercamiento y alfabetización informática no es adecuado.

Ejemplos de lo que pienso que hace falta son el Pd-L2Ork, por la Linux Laptop Orchestra, en el ámbito de la Virginia Polytechnic Institute and State University, USA, y el Integra Live, del Birmingham Conservatoire, UK. En ambos casos las instituciones formaron o se asociaron con grupos de desarrolladores para tomar el software Pure Data y adaptarlo a sus necesidades educativas y artísticas, mejorando sus interfaces y haciéndolos mucho más manejables.

En este momento hay una importante cantidad de trabajo disponible y de libre acceso hecho por infinidad de programadores, por lo que no sería difícil tomar alguna de estas líneas de desarrollo (Moldeo, por ejemplo) y llevarla a la producción de la herramienta que necesitamos para cumplir los objetivos de mejorar la alfabetización informática y apuntar a modificar el modo de uso de la tecnología a través de la experiencia artística. Lo que hace falta es dedicar los recursos humanos necesarios en la dirección adecuada, aprovechando la disponibilidad de infraestructura y conocimiento que hay en nuestras instituciones.

Referencias:

Scratch: http://scratch.mit.edu/

Snap!: http://snap.berkeley.edu/

Blocly: https://code.google.com/p/blockly/

InTAD: http://intad1.wordpress.com/

Isadora: http://troikatronix.com/

ARGOPd: http://paresys.pagesperso-orange.fr/ARGOPd/index.html

Pure Data: http://puredata.info/

Musix: https://musixdistro.wordpress.com/

Moldeo: http://www.moldeo.org/

Max/Msp: http://cycling74.com/

Pd-L2Ork: http://l2ork.music.vt.edu/main/?page_id=56

Linux Laptop Orchestra: L2Ork » Linux Laptop Orchestra

Integra Live: http://www.integralive.org/

Alejandra Ceriani: http://www.alejandraceriani.com.ar/

Spitzer, Sandra. LA INFORMATICA -INCLUSION Y RETENCION EDUCATIVA-; Sitech Sudeste, Sindicato De Trabajadores De La Educación del Chaco. http://es.scribd.com/doc/170116288/La-Informatica-Inclusion-y-Retencion-Educativa, Resistencia, 2012

4 Me gusta

<3 Le agrego:

2 Me gusta

A mi los que me gustan son:

  • Makecode: Con esto le enseño a programar a no informáticos (guardaparques, biólogos, etc). El de Adafruit es para microcontroladoras, la versión de la BBC está traducida al español, y hay uno para programar juegos <3
  • Nodered: Lo usamos en un curso de IoT, uno puede hacer un bot de twitter en 15, y también lo uso con gente que nunca ha programado
  • Icestudio: Para programar algo tan avanzado como una FPGA, pero lo hace tan sencillo que mucha gente (sobre todo artistas) logran sintetizar hardware mucho más rápido y mejor, de lo que programan.
  • Apache Nifi: Si alguien cree que los lenguajes visuales son de juguete, Nifi es una forma empresarial muy galleta para realizar transformaciones de datos.
2 Me gusta

Gracias, los voy a probar.

Aníbal planteaste un tema muy interesante. Totalmente de acuerdo, la tecnología digital vino y está permeando todo. Hasta el arte. Desconocía completamente estos usos en danza y artes del movimiento. Muy muy curioso.

Del texto me queda una duda. Me pregunto cómo es que separás o diferencias el software de edición de (audio/video/imagen) y estos otros lenguajes o herramientas. Creo que el argumento planteado a los editores pinta a les usuaries como simples ejecutores. Esto me parece problemático porque al describir a las herramientas de arte no expandís en esta otra posibilidad. O no me quedó claro. Veo o entiendo la idea de las cajas y flechas, pero si nos pusiéramos muy puristas, al final siento que seríamos simples ejecutores de cajas y flechas.

En fin, pregunto por curiosidad: ¿cómo se diferencian ambos? Y quizás, ¿aún mantendrías ese argumento de los editores?

1 me gusta

Hola José, gracias por tu comentario. Por supuesto que no niego, sino más bien reivindico el valor de las herramientas de edición de video y de audio. Son muy poderosas como formas de democratización del conocimiento y de la posibilidad de crear, de la misma manera que los edtores de texto, las planillas de cálculo y todos los sotwares que usamos todos los días.
Los lenguajes de programación visual son algo distinto. Son lenguajes de programación, no una herramienta programada para una tarea definida de antemano. Empleando editores de audio para música, por ejemplo, el usuario emplea las posibilidades del software previamente definidas por el programador, que tiene una idea de qué es la música, qué cosas se hacen y cómo se hacen. Uno no puede más que hacer música de la manera que el fabricante determina que se hace, aún aceptando toda la elasticidad que tienen y la “hackeabilidad” posible. Empleando un lenguaje de programación en cambio uno no solamente compone música, sino que programa el instrumento digital que refleja la propia idea de la música. Desde el punto de vista de la potencia creativa está en otro nivel. Además que pensando en la alfabetización digital son la puerta de entrada al mundo de la programación, como lo reconocen los creadores del sotfware didáctico, como Scratch, que inicia a los niños en la programación en una edad en la que emplear código es mucho más dificultoso para ellos.
No se trata de pensar que uno es mejor que el otro: editores y lenguajes de programación cada uno tiene su lugar. Si yo tengo que hacer un trabajo de edición no tiene sentido que me haga mi propio software cuando existen muchos y muy buenos. Pero si se trata de crear, los lenguajes de programación ofrecen posibilidades que los editores ni imaginan, sobre todo en el nuevo arte sonoro, o el arte interactivo donde el sonido y la imagen se procesan en tiempo real en relación con el entorno. La seguimos, ¡abrazo!

2 Me gusta

Ahhh me queda mucho más claro. Comparto totalmente en que cada cosa para lo que sirve, por ende cada una es buena en su contexto y para lo que fue creado.

Entonces la diferencia radica en el nivel de abstracción, esto me aclara montones la diferencia que planteaste de ejecutar vs crear.

¡Gracias por responder y por el artículo!

1 me gusta

ojo esta otra herramienta que me encontré: https://youtu.be/UH0A2iujtY8

1 me gusta

Súper interesante, lo voy a ver en detalle, gracias!

1 me gusta