¿Cómo generar contenidos sin barreras en nuestras aulas virtuales?
El 9 y 10 de octubre participé del FIEP, en la Universidad Nacional de Villa María donde di junto a la Lic. Mailén Turletto un taller llamado “Creación de contenidos sin barreras de acceso en nuestras aulas virtuales”.
Los temas que tratamos fueron:
El principio del acceso universal (personas con diversidad funcional, con dispositivos antiguos, con mala conectividad, etc.).
Problemas de acceso temporales y permanentes.
Los cuatro principios: perceptible, operable, comprensible, robusto.
Aplicación de los principios en el taller:
Evaluación del contraste de colores
Configuración del texto alternativo en imágenes
Publicar texto marcado semánticamente (títulos, encabezados, nunca subirlos como imágenes)
Navegación a través del teclado
Creación de PDFs accesibles
Subtitulado de videos (a cargo de la Lic. Mailén Turletto)
Aquí comparto un video que grabé posteriormente para compartir los conceptos trabajados en el taller, y debajo la presentación por diapositivas en formato LibreOffice.
Hice algunos videos para mis estudiantes que comparto también por este lado, para quienes tengan ganas de empezar a aprender a usar una hoja de cálculo.
Los videos están realizados utilizando LibreOffice Calc, que es parte de la suite ofimática libre que se descarga desde este enlace y se puede compartir libremente: https://es.libreoffice.org/
Estoy trabajando en la carga de contenidos en una plataforma Moodle, y muchos/as docentes me envían algunos cuadros en imágenes que podrían estar en texto. Por una cuestión de accesibilidad, siempre que el tiempo me alcanza, paso esos cuadros a código.
Voy a ir guardando en este posteo esos códigos, para volver a usarlos yo misma, y para compartir con quienes se encuentren en una situación similar.
Recuadrito a la derecha de un texto
<div style="float: right; width: 40%;background-color: #d5dfee; padding: 1.5em; margin: 2em; border: 1px #123872 solid; text-align: center;"><em>"He pasado una noche estupenda, pero no ha sido esta"</em></div>
“He pasado una noche estupenda, pero no ha sido esta”
Recuadrito con bordes redondeados
<div style="float: right; width: 40%;background-color: #d5dfee; padding: 1.5em; margin: 2em; border: 1px #123872 solid; text-align: center; border-radius: 25px;"><em>"He pasado una noche estupenda, pero no ha sido esta"</em></div>
“He pasado una noche estupenda, pero no ha sido esta”
<div style="clear: both;"><div style="float: right; width: 20%;"><img src="https://irisfernandez.com.ar/betaweblog/wp-content/uploads/2023/04/405px-Tux.png" alt="tux"><p style="font-size: 70%; font-style: italic; text-align: center;" >Fuente: Wikipedia</p></div><p>Tux es el nombre de la mascota oficial de Linux. Creado por Larry Ewing en 1996, es un pequeño pingüino de aspecto risueño y cómico basado en una imagen que Linus Torvalds encontró en un servidor FTP. </p></div>
Fuente: Wikipedia
Tux es el nombre de la mascota oficial de Linux. Creado por Larry Ewing en 1996, es un pequeño pingüino de aspecto risueño y cómico basado en una imagen que Linus Torvalds encontró en un servidor FTP.
En estos meses, desde la difusión del ChatGPT, se pusieron en discusión varias estrategias con respecto al vínculo entre educación e Inteligencia Artificial, desde la prohibición hasta la apropiación.
Por mi parte, creé un grupo en Facebook y otro grupo en Linkedin con el objetivo de recopilar información, y elaboré este video en el que hablo del tema y propongo no perder el eje: atender a la diversidad, cuidar la accesibilidad, evitar los sesgos, prestar atención a las licencias y a la soberanía tecnológica.
¿Tienen política los artefactos? Langdon Winner Publicación original: “Do Artifacts Have Politics?” (1983), en: D. MacKenzie et al. (eds.), The Social Shaping of Technology, Philadelphia: Open University Press, 1985. Versión castellana de Mario Francisco Villa. http://www.ub.edu/prometheus21/articulos/tienen.pdf
¿Trabajás en sistemas? Está en tus manos hacer un mundo mejor. Estudiá UX y accesibilidad. No dejes afuera a las personas mayores y a las personas con discapacidad.
¿Dirigís una institución educativa donde se trabajan temas de tecnología? Que en cada carrera haya materias de accesibilidad, para formar profesionales que naturalmente hagan productos que no dejen afuera a las personas con discapacidad y a las personas mayores.
¿Tenés una empresa y contratás gente de sistemas? Exigí que cumplan las pautas de accesibilidad. Todo lo que se hace, desde un sitio web, un sistema para turnos, un cajero automático o una promoción, debe estar hecha sin barreras para personas con discapacidad y personas mayores
¿Trabajás en el Estado? ¿Está en tus manos la producción de contenido? Creá PDFs accesibles, creá contenido accesible para la web, asesorate acerca de cuáles son las herramientas que te permiten que tus producciones no dejen afuera a personas con discapacidad y personas mayores.
¿Construís puertas, muebles, edificios, pupitres? No crees objetos que dejen afuera a personas mayores, o personas con algún grado de diversidad funcional.
¿Manejás un auto? No tapes rampas al estacionar, no estaciones en paradas de colectivo, ya que las personas mayores necesitan que frene junto al cordón para poder subir y bajar. No asumas que todas las personas oyen, la bocina no es una opción para que la gente se mueva.
Viví tu vida sabiendo que existe gente diversa. Gente flaca, gorda, que oye y que no oye, gente que ve más, menos, en blanco y negro, o no ve nada. Gente con un brazo solo o que se desplaza en silla de ruedas. Gente mayor, gente lenta, gente con dolores crónicos. Gracias.
En el mundo del software libre y el código abierto existen herramientas increíbles, aunque poco conocidas. Es el caso de uMap, una herramienta para crear mapas personalizados de manera colaborativa, con base en OpenStreetMap.
Hacemos clic en “Crea un mapa” y obtenemos un mapa donde debemos configurar primero el título (1) la región que se va a ver en el mapa: buscamos por ejemplo el país o ciudad donde vamos a agregar nuestros marcadores, y luego hacemos clic en el icono de “Guardar este centrado y acercamiento” (2).
Ya podemos comenzar a agregar hitos (3) en cada lugar en que queremos poner información.
En cada marcador tenemos una gran cantidad de opciones: la capa (podemos tener distintas capas con diferente información), el título, la descripción (que puede contener texto, imágenes y videos), la forma del marcador, etc.
Arriba a la derecha tenemos la opción de guardar, y luego podemos desactivar la edición para ver el mapa tal como lo verán quienes lo visiten.
Para que más personas puedan modificar el mapa debemos hacer clic en el icono de la llave y decidir si se necesita el enlace secreto de edición o si cualquier persona que acceda al mapa podrá modificarlo:
El mapa podrá compartirse a través de un enlace, o embeberlo dentro de un sitio.
Moodle es una plataforma LMS (Learning Management System) ampliamente utilizada. Se usa tanto en universidades como en institutos, empresas y todo tipo de proyecto. En cada contexto existen distintos términos para cada cosa, por eso es muy importante aprender a personalizar el paquete de idioma español.
En estos días instalé un Moodle 4.0.1, y lo primero que me chocó fue su mensaje de bienvenida en masculino: “Bienvenido a …”
Ya estoy muy acostumbrada a utilizar un lenguaje neutro, o por lo menos incluir femenino y masculino cada vez que me dirijo a un grupo, así que me puse a editar el lenguaje de mi plataforma para que sea más inclusiva en cuanto a género.
Cómo personalizar el idioma de la plataforma
Para personalizar el idioma de la plataforma hay que tener un usuario administrador.
Lo primero va a ser ir al menú “Administración del sitio”, “Idioma”, “Personalización del idioma”.
Lo primero que nos pregunta Moodle es cuál de los idiomas instalados vamos a personalizar. Allí en el desplegable elegimos nuestro paquete de idiomas (previamente instalado en la sección correspondiente).
A continuación vamos a elegir “Abrir el paquete de idioma para editar”.
Allí se nos mostrarán los diferentes archivos PHP que contienen cadenas de texto. Podemos seleccionar todos o algunos de ellos. Si no tenemos idea de dónde están las frases que queremos cambiar, seleccionamos todos.
En la misma pantalla, debajo, encontramos la opción “Cadenas que contienen”, y allí escribimos la palabra o frase textual que queremos encontrar para personalizar. Por ejemplo, yo escribí “Bienvenido”.
El sistema me muestra todas las veces que encuentra la cadena “Bienvenido”, aunque esté incluida en otra cadena, por ejemplo “Bienvenidos” o “Bienvenido/a”. En cambio, si escribo “Bienvenidos”, no me va a mostrar las cadenas donde esta palabra esté en singular. Hay que pensar cuál es la unidad mínima de nuestra búsqueda.
A la derecha tenemos la columna “Traducción local personalizada”, donde escribiremos nuestra frase. Si hay contenido entre llaves tenemos que escribirla exactamente igual, porque gracias a estas cadenas con variables se mostrará por ejemplo el nombre de usuario, el nombre del curso, etc.
Una vez que modificamos las cadenas que queríamos modificar, elegimos debajo la opción “Guardar los cambios en el paquete de idioma”. Si hicimos las cosas bien no es riesgoso guardar los cambios porque cuando volvamos a esta pantalla la vamos a ver con la cadena original y la reemplazada, es decir que fácilmente podemos volver atrás los cambios eliminando lo que escribimos allí.
Se nos pide confirmación, elegimos “Continuar”.
¡Listo! Ya podemos ver los cambios aplicados en la plataforma:
¿Cuál es el riesgo de esta operación?
Hay que tener mucho cuidado en no reemplazar una frase que vemos en un contexto, pensando que solamente se utiliza allí. Por ejemplo, si yo reemplazo “Bienvenido de nuevo” por “¡Hola, qué bueno que estás de nuevo en el curso de música!”, esa cadena se va a mostrar a estudiantes de los cursos que no son de música también. Por eso es muy importante reemplazar las cadenas por una equivalente, salvo que ya conozcamos mucho la plataforma y sepamos dónde aparece cada frase.
Como en toda herramienta de autor, que permita crear los contenidos para nuestros y nuestras estudiantes, es fundamental que el tipo de actividad, el tipodepregunta y fundamentalmente la respuesta que brindamos ante el error, favorezcan la construcción del aprendizaje.
Para ello, a través de distintas estrategias que requieran elaborar hipótesis, confirmarlas o descartarlas, los y las estudiantes vuelven a revisar el contenido aprendiendo de sus respuestas anteriores.
Cuando damos charlas para un grupo de personas en una videoconferencia de Jitsi y queremos que más personas puedan verla a través de Fediverse.tv o de Youtube, necesitamos seguir unos pasos bastante simples.
Recomiendo practicar estos pasos varias veces antes de ser anfitrión/a de una charla, ya que hay varias cosas que pueden salir mal, poniendo en riesgo el evento.
Fediverse.tv (Peertube)
Gracias al grupo Clementina y a RikyLinux en particular, hace un par de años que utilizo Fediverse.tv para subir algunos de los videos que voy creando. Se trata de una instancia de Peertube (esto significa que el software “Peertube” está instalado en el servidor de Fediverse.tv, pero que el mismo software puede encontrarse en otros lugares).
Primer paso: crear la cuenta en la instancia de Peertube a través de la cual vamos a transmitir, por ejemplo fediverse.tv
Segundo paso: hacer clic en el botón Publicar. Elegir la opción Ir a en vivo y cliquear en vida normal (una sola transmisión común que al terminar queda grabada en el servidor con el mismo enlace).
Tercer paso: completar la información sobre el video (nombre, comentarios, imagen de portada). Buscar la clave de transmisión y pegarla en algún lugar seguro. Vamos a necesitar esta clave para conectar Jitsi con Peertube.
La clave está formada por dos datos: el primero es el enlace correspondiente a Fediverse.tv y el segundo una clave que se genera por única vez por cada transmisión y no se repite.
Tenemos que combinar ambas claves de la siguiente manera:
URL de RTMP en vivo + una barra + Clave de transmisión en vivo
Cuarto paso: entrar a la videoconferencia de Jitsi y elegir en el menú desplegable la opción “Iniciar transmisión en vivo”. Pegar la clave combinada como se explicó anteriormente.
¿Cómo sabemos que se está transmitiendo correctamente?
Primero: se oye un mensaje que avisa “Livestreaming is on” (transmisión en vivo activada).
Segundo: accediendo al enlace del video creado en Fediverse.tv desde otro dispositivo, se puede ver y escuchar la transmisión. Cuidado: el sonido de este segundo dispositivo se va a escuchar como eco en Jitsi. Hay que hacer algo para que esto no ocurra (por ejemplo, silenciar el video que se está mirando).
Cómo hacer la transmisión por Youtube
Los pasos para realizar la transmisión vía Youtube son muy similares. Sólo se agrega un paso que es el de loguearse en una cuenta de Youtube.
Primer paso, hacer clic en el botón de subir video, y elegir “Transmitir en vivo”.
Se puede programar o directamente acceder a la transmisión en vivo. Una vez en el panel de transmisión, aparecerá la clave (igual que en el caso anterior) que debemos copiar para pegar en Jitsi.
Una vez copiada la clave, ir a Jitsi y pegarla en la opción “Iniciar transmisión en vivo”. La diferencia será que en este caso se nos pide loguearnos en la cuenta de Google. Para ello, tenemos que aceptar los términos del servicio.
Al finalizar la transmisión, otro paso que se agrega en este caso es que debemos elegir si descartar la edición (conservar el video tal como se grabó) o editarlo en Studio.
Para trabajar sobre una superficie que pueda cambiar de lugar (para liberar la mesa), usé unas baldosas grandes que tengo en casa. En ellas fui pegando distintas cosas para guiar el tren, empezando por un tapacanto de melamina que tenía guardado:
Después de varias pruebas llegué a la solución pegando precintos mediante cinta de papel, pero podrían usarse muchas otras soluciones.
Una vez que el trencito ya funcionaba correctamente armé la barrera con el Arduino:
¿Qué se necesita?
Placa Arduino
Protoboard (placa de prueba / placa sin soldaduras)
Cables
Servo motor
Sensor ultrasónico (distancia)
Optativo: un buzzer, batería de 9v y conector Plug Jack para conectarlo al Arduino y usar la barrera sin la computadora
Conexiones
Lo ideal para hacer este montaje es ya haber utilizado por separado cada uno de los tres elementos: el servo motor, el buzzer y el sensor de distancia / ultrasónico.
cable anaranjado: va a un pin de tipo PWD (los de la tilde de la eñe), en este caso al 9
cable color marrón: GND (tierra)
cable color rojo: +5v
El sensor ultrasónico:
VCC – a 5v
TRIG – al pin 12
ECHO – al pin 13
GND – a gnd
El buzzer
Pin 10 (el positivo)
GND (el negativo)
Programa
Aquí comparto el código utilizado para que la barrera se levante cuando el sensor ultrasónico detecta algo cerca:
#include <Servo.h>
#define PIN_TRIG 12
#define PIN_ECO 13
int buzzer = 10;
int tones[ ] = {261, 277, 294, 311, 330, 349, 370, 392, 415, 440,466, 494};
//DO, DO#, RE, RE#, MI, FA, FA#, SOL, SOL#, A, A#, B
//Estas son las frecuencias que corresponden a cada nota, para usar en el buzzer
Servo myservo;
int pos = 0;
void setup() {
Serial.begin (9600);
pinMode(PIN_TRIG, OUTPUT);
pinMode(PIN_ECO, INPUT);
pinMode(buzzer, OUTPUT);
myservo.attach(9);
}
void loop() {
//Este fragmento de código es para tomar la información del sensor ultrasónico HC-SR04
long duracion, distancia;
digitalWrite(PIN_TRIG, LOW);
delayMicroseconds(2);
digitalWrite(PIN_TRIG, HIGH);
delayMicroseconds(10);
digitalWrite(PIN_TRIG, LOW);
duracion=pulseIn(PIN_ECO, HIGH);
distancia=(duracion/2)/29;
//Aquí hacemos que la distancia se muestre en el "Monitor Serial"
Serial.println(distancia);
//Acá ponemos una condición: si la distancia es menor a doce cm, que suene el buzzer y se baje la barrera
if (distancia < 12) {
//suena el buzzer en la frecuencia indicada por la matriz que está en
tone(buzzer, tones[8]);
delay(50);
noTone(buzzer);
delay(50);
tone(buzzer, tones[8]);
delay(50);
noTone(buzzer);
delay(50);
for (pos = 130; pos >= 0; pos -= 1) { // Lleva la variable pos desde 130 grados hasta 0, de uno en uno
myservo.write(pos); // pone el servo en la posición indicada por la variable pos
delay(15); // espera 15ms
}
delay(1000);
for (pos = 0; pos <= 130; pos += 1) { // lleva la variable pos desde 0 hasta 130
myservo.write(pos); // pone el servo en la posición indicada por la variable pos
delay(15); // espera 15ms
}
}
}