Introducción

En el Máster Front End Online Lemoncode, participamos un equipo de 12 de profesores, y también una serie de empresas que están adheridas a nuestra bolsa de trabajo. ¿Alguna vez te ha picado la curiosidad de saber de donde venimos o qué hacemos? Continuamos esta de serie de posts entrevistando a Juan José Montiel, profesor del máster Front End Online Lemoncode, experto en accesibilidad y Microsoft MVP.

La Entrevista

juanjo.jpg

Juanjo, para los que no te conozcan podrías darnos una pequeña introducción de quién eres y a que te dedicas...

¡Hola a todos! Soy Juanjo Montiel, y por resumir mucho, soy un niño friki al que le encantaba la tecnología, que se ha hecho mayor y tiene la gran suerte de seguir en el mundo del software, haciendo, la mayor parte del tiempo, lo que más le gusta: programar.

Tengo treinta y cuatro años (¡cómo pasa el tiempo!) y actualmente trabajo en Pasiona, una empresa especializada en tecnologías Microsoft. Casado y padre de un terremotillo de casi cuatro años por el que se me cae la baba, intento pasar el mayor tiempo posible con mi familia, y dedicarle algo de mi tiempo libre a seguir aprendiendo sobre el mundo del software, que avanza a pasos agigantados y nos deja atrás como nos descuidemos.

Como decía al principio, me apasiona la tecnología, y sobre todo resolver problemas mediante la programación. Me encanta desarrollar programas que sean útiles para otras personas, y que les ayuden a hacer alguna tarea que sea importante para ellos. Es por eso por lo que en mi tiempo libre intento desarrollar software para personas ciegas, para ayudarnos a ser más independientes, y derribar, mediante la tecnología, las barreras que muchas veces ella misma nos pone delante.

Lo reconozco, también soy muy pesado con la accesibilidad, pero es que considero que es un tema muy importante y que se tiene tan poco en cuenta… que se necesitan personas un poco pesadillas como yo, para que la gente tome conciencia de ello y desarrolle software usable y accesible.

¿Cuáles son tus lenguajes y tecnologías favoritas

Mi lenguaje favorito de programación es C#, sin duda. Empecé a programar en él en 2006, y desde siempre me ha parecido un lenguaje super flexible y elegante. Antes me daba un poco de pena estar restringido a Windows, pero desde que apareció .Net Core en escena ya soy completamente feliz 😉

Ser invidente y programar es algo que los que estamos pegados a pantalla y ratón nos parece impresionante, ¿Cómo se adaptan las herramientas para que puedas trabajar? ¿Cómo es tu día a día?

Yo cambio la pantalla por un lector de pantallas, que es un software que es capaz de transmitir la información del sistema operativo mediante una síntesis de voz. En broma siempre digo que es como tener a un enanito incansable en la oreja que me va narrando el partido.

Si el sistema operativo es accesible (tiene algún tipo de servicio que sea capaz de enviar toda la información necesaria al lector de pantallas), es el primer paso fundamental para trabajar. Luego, necesito que el software que se ejecuta sobre ese sistema operativo sea también accesible. Por ejemplo, Visual Studio, que es la herramienta con la que trabajo la mayor parte del tiempo, es bastante accesible: atajos de teclado, envío de información a la capa de accesibilidad para que el lector de pantallas pueda transmitírmela… Con VS Studio puedo leer el código, el “autocomplete”, las ventanas de depuración, la indentación… prácticamente todo.

Y con respecto al ratón, pues es como si no existiera, de ahí la importancia de los atajos de teclado. Normalmente, si una aplicación tiene todos los atajos necesarios para interactuar con ella en su totalidad, la productividad al usarla es bastante mayor que utilizando un ratón, pues no tengo que quitar una mano del teclado, seleccionar un icono, pulsarlo, y volver al teclado. Eso sí, hay que tener algo de memoria para recordar los atajos, que en muchas ocasiones rozan el absurdo: control + alt + shift + insert + v, por ejemplo 😉 ¡Las únicas veces que he usado el ratón han sido para manejar una pistola en un audiojuego de zombis accesible.

¿A qué velocidad eres capaz de atender al lector de pantalla? ¿Cuánto tardarías en leerte un libro técnico?

¡Pues la verdad es que no tenía ni idea! así que he cogido la primera página del libro que me estoy leyendo ahora mismo (contiene 820 palabras), y a la velocidad a la que trabajo, he tardado en leérmela un minuto y 41 segundos… así que haciendo cálculos, diría que a unas 480 palabras por minuto, más o menos. ¡No está nada mal! La verdad es que más de veinte años trabajando con el lector de pantallas te dan una velocidad bastante respetable a la hora de leer y ser capaz de procesar lo que estás escuchando. Eso sí, cuando se trata de libros técnicos ni de broma puedo leer sin parar a esa velocidad. ¡mi mente no da para tanto!

Si esta entrevista la estuviera leyendo una persona con baja visión y tuviera ganas de meterse en el mundo de la programación ¿Qué le aconsejarías para arrancar?

Si es una persona con baja visión pero que aún puede utilizar magnificadores de pantalla, lo tendrá bastante más fácil, ya que podrá usar casi cualquier tipo de herramienta. Si se trata de una persona ciega, le diría que lo primero es orientarse en los lenguajes para los que existan herramientas de desarrollo accesibles con lectores de pantalla. Visual Studio es muy accesible, y Eclipse también, así que a partir de ahí, que elija el lenguaje de programación que más le guste. Es verdad que normalmente podemos llegar a programar con el bloc de notas (es algo que hice hasta que tuve que trabajar en equipo con personas sin discapacidad), pero la productividad que nos otorgan estas herramientas no tiene nada que ver con la velocidad de desarrollo cuando lo hacemos todo a mano. En el mundo laboral, diría que se hace imprescindible contar con un IDE accesible.

Afortunadamente los lenguajes de programación son eso, lenguajes textuales que para una persona ciega no entrañan más dificultades que para alguien que ve, así que es cuestión de que les guste, que empiecen a aprender algún lenguaje, les pique el gusanillo de seguir aprendiendo… y no se rindan cuando encuentren escollos en el camino. Y sobre todo, que pregunten. Hay comunidades online de programadores ciegos, y por supuesto, cualquier cosa, seguro que me encuentran por Twitter 😊

Accesibilidad, es un palabro desconocido para muchos compañeros, ¿Cómo lo definirías?

La accesibilidad en el software tiene como objetivo que dicho software pueda ser utilizado por el mayor número de personas posible, independientemente de sus conocimientos, capacidades personales o equipo utilizado.

A mí me gusta decir que la accesibilidad es, simplemente, la forma correcta de desarrollar software. Centrándonos en tecnologías web, si haces un sitio web, querrás que el mayor número de personas posible lo utilice, aunque esa persona hable un idioma distinto, tenga un equipo diferente al tuyo, o no pueda ver la pantalla de su ordenador. Es la máxima expresión de un trabajo bien hecho, y hecho para todos, sin discriminación de ningún tipo. La web se basa en unos estándares, y nació con la premisa de ser universal. Si un sitio web no es accesible, ya está dejando de lado los principios básicos sobre los que se cimentó la WWW.

¿Qué recursos básicos nos recomendarías para meternos en este mundo?

Hay varios recursos que siempre suelo recomendar a quienes quieren introducirse en este mundo. El primero y principal, es el enlace a las WCAG (Web Content Accessibility Guidelines, o “pautas de accesibilidad para el contenido web”): http://www.sidar.org/traducciones/wcag20/es/

También podéis verlo en la web oficial del W3C en inglés: https://www.w3.org/TR/WCAG20/

Esta versión de la WCAG era la recomendada hasta Junio de 2018, cuando se publicó la versión definitiva de las WCAG 2.1: https://www.w3.org/TR/WCAG21/. Para esta versión no he encontrado traducción al español.

Otra web que siempre recomiendo es la del blog de Olga Carreras, consultora de accesibilidad con artículos súper interesantes sobre accesibilidad web: https://olgacarreras.blogspot.com/

¿Cuales son tus aplicaciones favoritas y web preferidas en cuanto a nivel de accesibilidad?

La verdad es que es una pregunta difícil. Una web cien por ciento accesible y que me guste mirar… no sabría ahora mismo ni deciros una. Webs bastante accesibles y que mire a menudo, podrían ser por ejemplo la página de justeat (donde la estructura de encabezados de los menús me va genial para explicar a los alumnos porqué es importante una buena estructura de encabezados).

Otra web que miro mucho y que pese a sus problemas de accesibilidad no es difícil de navegar, es stack overflow. Algún día debería comentarles la posibilidad de que pongan encabezados en cada respuesta, porque es bastante tedioso saltar entre ellas 😉

Y por último , una web que era muy accesible y que con su nueva versión me parece a mí que se va a terminar la cosa, es la web de compras de Mercadona. Sí, es muy fea, pero en su día la hicieron accesible y la han mantenido así 😊

Y.. ¿Con cuáles de las conocidas te has llevado una sorpresa desagradable por el bajo nivel de accesibilidad que tienen?

¡Esta lista podría ser muy larga! Casi todas las webs de grandes compañías de telecomunicaciones (Movistar, Jazztel…), bastantes bancos (ING, Banco Sabadell), transportes (Vueling, Ryanair, Renfe…), hasta la web de Correos tiene un captcha visual sin alternativa de audio para consultar un localizador de envíos. ¡Y lo mejor es que todas las que he mencionado deberían ser accesibles por ley!

¿Qué conceptos básicos deberíamos de tener en cuenta a la hora de crear un sitio web para que sea accesible?

Por poner puntos muy importantes: etiquetar las imágenes relevantes y dejar con “alt” vacío las decorativas, mantener una buena estructura de encabezados, asegurar el acceso por teclado a todas las funcionalidades (navegar sin ratón suele ser una buena forma de verificarlo 😉 ), etiquetar correctamente todos los formularios y marcar de forma adecuada cuándo se produce un error y porqué ha ocurrido, asegurar un contraste adecuado entre fondo y texto para facilitar la navegación a personas con baja visión, y evitar el solapamiento de los distintos bloques de la web cuando se amplíe la pantalla… ¡Es lo básico para que no nos volvamos locos al navegar una web!

¿Es cierto eso de que la accesibilidad además ayuda a subir el ranking de SEO de un sitio web?

Por supuesto. Como dijo alguien una vez, “Google es ciego”. A google (o cualquier indexador) le da igual que vuestro sitio web sea más bonito o más feo. A ellos les interesa recabar información de vuestro sitio para indexarlo. Si vuestro sitio web es accesible, tendrá una buena estructura, lo que ayudará a que los robots la entiendan. Las imágenes estarán etiquetadas, por lo que será fácil indexar cada una con su descripción… así con otros muchos aspectos.

¿Qué vas a cubrir en la sesión de accesibilidad del máster en esta edición?

Mi idea es cubrir los puntos más importantes. Hablaré de los aspectos que explicaba más arriba (entre muchos otros), y os enseñaré mediante ejemplos sencillos y fáciles de entender cuáles son los errores más comunes de accesibilidad a la hora de desarrollar un sitio web, y lo más importante, cómo solucionarlos. Además, os enseñaré cómo solventar los errores más habituales al trabajar con distintos frameworks Javascript (Angular, React…), y os proporcionaré documentación de accesibilidad de cada uno de ellos.

Así mismo, os proporcionaré enlaces de interés para que podáis seguir profundizando en la materia, y las herramientas necesarias para que podáis hacer vuestras propias pruebas de accesibilidad.

Por último te gustaría compartir algo adicional con los lectores.

¡Sí! ¡Si habéis llegado aquí después de semejante tostón, seguro que podréis soportar la clase de accesibilidad sin dormiros por el camino!

Y ahora, en serio: solo recalcaros la importancia de la accesibilidad. Pensad que la accesibilidad web es la única garantía de que personas como yo podamos acceder a los sitios que construyáis sin toparnos con barreras que nos impidan el acceso. La tecnología nació para ayudar, y vosotros tenéis el poder (y la responsabilidad), de contribuir a romper barreras, en lugar de a perpetuarlas o crear otras nuevas por no tener en cuenta que no todas las personas tenemos las mismas capacidades.

Juanjo, muchas gracias por tu tiempo

¡Muchas gracias a vosotros por dejarme contar todo esto, y sobre todo, por hacerme un hueco en este master. La accesibilidad se tiene tan poco en cuenta, en gran medida, porque no hay formación. Con vuestro ejemplo, estáis ayudando a que los desarrolladores sepan de qué se trata, y sobre todo, entiendan su importancia y su finalidad. ¡Muchísimas gracias!