Taller Bots Libres

Aprende a crear bots en la red social Mastodon

Imparte: Julián Pérez

Coordina: Nacho Rodríguez

Facultad BBAA UCM

14 y 15 Oct 2019

BIO

Artista visual interesado en cómo nos relacionamos con los nuevos medios e Internet.

 

Participo activamente en proyectos que promuevan la Cultura Libre de manera colaborativa y trabajo con proyectos y comunidades que giran en torno a los datos como material artístico, la programación creativa, narrativas digitales y tecnologías del directo.

Estructura del taller

  • DÍA 1
    • Introducción a los Bots: Definición, Contexto
    • Fediverso / Mastodon
    • Ejemplos de bots
    • Práctica1: Bot de texto con Tracery
  • ​DÍA 2
    • ​Práctica2: Bot con processing + nodejs
    • Cierre: Ideas para continuación bot

Puedes seguir esta presentación en este link:

Anotaciones, preguntas, links, etc:

Qué es un bot?

Programa informático que efectúa automáticamente tareas repetitivas a través de Internet, cuya realización por parte de una persona sería imposible o muy tediosa 

- Wikipedia

El turco

Wolfgang von Kempelen

1769

ELIZA

1er Bot conversacional

1963

Kasparov VS IBM Deep Blue

1997

2000

Are you human? - Aram Barthol

Captchas

2001

Botnet / Spambot

2005

The Sheep Market - Aaron Koblin

Amazon Mechanical Turk

2006

Public API Twitter

2011

Siri

2014

Amazon Alexa

2014

Microsoft Cortana

2016

Granjas de Bots/Trolls

Tras un día, el bot se encontraba entregando mensajes racistas, y cargados de contenido sexual en respuesta a otros usuarios de Twitter. - Wikipedia

2016

Tay / Bot IA Microsoft

Los bots os parecen buenos :) o malos :(?

:)

 

un argumento de que los bots son BUENOS proviene de la idea de que los bots pueden ser una especie de "prótesis social", una posibilidad para que los individuos y las comunidades amplíen su capacidad comunicativa utilizando medios procedimentales

 

así que los "buenos" robots buscan información que de otro modo estaría oculta y la sacan a la superficie sin intervención humana

"Twitter bots and the performative critique of procedural writing" Presentación en el  SXSW Interactive 2016 - Allison Parrish

:(

 

"bot" es una palabra que a veces se utiliza para las cuentas de spam, que son, por supuesto, un mal que nos afecta a todos... contaminan el canal en forma de notificaciones de seguimiento... se entienden como una fuente de ruido no deseado sin la cual estaríamos mejor sin ellos, y Twitter hace todo lo posible para dificultar a la gente la creación de cuentas con el fin de enviar spam

 

la narrativa clásica en los medios de comunicación sobre los robots (y la automatización de cualquier tipo) es que nos van a quitar nuestros trabajos

"Twitter bots and the performative critique of procedural writing" Presentación en el  SXSW Interactive 2016 - Allison Parrish

BOTS ARE SKATEBOARDING

 

...el skateboarding es un acto creativo y político. La práctica del skateboarding revela que los espacios urbanos tienen topografías y affordances que van más allá de los procesos de diseño de arriba-abajo que les dieron origen

 

si los patinadores se esfuerzan por debilitar la autoridad de la arquitectura y el diseño urbano, no es de extrañar que las ciudades odien a los patinadores y hagan todo lo posible para restringir su acceso a los espacios, incluyendo la criminalización

 

"Twitter bots and the performative critique of procedural writing" Presentación en el  SXSW Interactive 2016 - Allison Parrish

Ejemplos de Bots

Gastos de las tarjetas black en riguroso diferido de 10 años

Ejemplos de Bots

  • Base de datos: CSV
  • Filtración
  • Comunicación de guerrilla

Artículo del proceso

Artículo de la parte técnica

Mezcla dos titulares de TheNewYorkTimes en uno

Ejemplos de Bots

  • API The New York Times
  • Software de gramática que da sentido a la frase

Otros proyectos similares:

- @nyt_first_said

- @predartbot

Genera diferentes tipos de polillas y le pone un nuevo nombre generado aleatoriamente

Ejemplos de Bots

Cadena de ADN de emojis random

Ejemplos de Bots

Generador de poemas en inglés

Ejemplos de Bots

Más ejemplos

¿Por qué usar Mastodon?

¿Qué es Mastodon?

Centralizado

Federado

Descentralizado

Fediverso

Fediverso

Fediverso

Fediverso

Mastodon API

Congress Edits

Gab

Práctica 1

Crear un bot con Tracery

  1. Crear cuenta en botsin.space
  2. Activarla como bot
  3. Ir a Cheap Bots, Toot Sweet!
  4. Autorizar cuenta de Mastodon
  5. Editar con Tracery
    1. ​Bot de texto
    2. Bot con emojis
    3. Bot con imágenes

Práctica 1: Crear un bot con Tracery

Práctica 1: Crear un bot con Tracery

  • Clon de Cheap Bots, Done Quick! pero para Mastodon
  • Utiliza Tracery, que es el código Javascript que crea gramática generativa
  • Pensado para no-programadores
  • Editor web
  • Hosting
  • Gratuito

Algunos ejemplos con Tracery:

Práctica 1: Crear un bot con Tracery

Práctica 1: Crear un bot con Tracery

Ideas

  • Recordatorios, cuidados, consejos,...
  • Onomatopeya, ruido, objetos,...
  • Frases típicas, cotidianas, célebres, fílmicas,...
  • Agenda política
  • Meme
  • Personajes: el cuñado, políticos, ...
  • Emojis: historia, paisaje, suceso,...

Práctica 1.1

Tracery con imagen (SVG)

Ejemplo básico:

Práctica 1.1: Tracery con imagen (SVG)

{ "origin": "Con el código a continuación no vemos la imagen, 
pero hemos creado el contenedor donde cargaremos la imagen: 
{svg <svg xmlns=\"http://www.w3.org/2000/svg\" 
xmlns:xlink=\"http://www.w3.org/1999/xlink\" 
width=\"1024\" 
height=\"512\">
</svg>}" }

OJO: dentro de la etiqueta svg " pasan a ser \"

Seguimos el ejemplo en el pad

Práctica 1.1: Tracery con imagen (SVG)

Práctica 2

Bot con Processing y node.js

  1. Instalar Processing
  2. Instalar Processing command line
  3. Instalar nodejs
  4. Obtener API keys de la cuenta de Mastodon
  5. Crear sketch que será la carpeta del proyecto
  6. Abrimos terminal de nuestro OS y vamos al directorio del proyecto
  7. npm init y completamos campos
  8. index.js >> bot.js
  9. creamos archivo bot.js y lo abrimos con editor de texto
  10. hacemos un "hello world" o un "ola k ase"
  11. instalamos modulos:
    1. npm install mastodon-api dotenv

Práctica 2: Bot con processing y nodejs

  1. Declaramos que queremos utilizar la librería mastodon-api
    1. const mastodon = require('mastodon-api);
  2. Construimos objeto M para las claves API
  3. M.post(path, [params], callback)
  4.  

Práctica 2: Bot con processing y nodejs

Taller Bots Libres BBAA UCM

By Julián Pérez

Taller Bots Libres BBAA UCM

  • 514