Mobile World Congress y la accesibilidad

Durante esta pasada semana ha tenido lugar el Mobile World Congress, uno de los congresos más importantes del mundo sobre nuevas tecnologías y dispositivos móviles.

He tenido la oportunidad de asistir al congreso como miembro del equipo creador de uno de los poquísimos proyectos relacionados sobre accesibilidad que se pudieron ver en el congreso. De la mano de Fundación Vodafone, junto con Technosite y otros socios, se mostró el proyecto Medicamento accesible. Este software desarrollado para Symbian, Windows Mobile y Android permitirá identificar un medicamento, su fecha de caducidad y acceder al prospecto del medicamento.

En el congreso se pudieron ver muchos dispositivos de todo tipo y se pueden estudiar las tendencias del mercado para los próximos meses y años.

Muchas tablets de 7 y 10 pulgadas y teléfonos móviles cada vez más inteligentes. Diseños curvilíneos o de líneas cortadas a cuchillo. Dispositivos diminutos y otros buscando el equilibrio de la mayor pantalla posible que pueda ser sostenida en la mano. Pero muchos de ellos tienen en común dos cosas: todo táctil, el botón físico desaparecerá; la conexión a Internet de forma inalámbrica es casi obligado en cualquier dispositivo. Con esto podemos deducir que los productos de apoyo deben seguir estas tendencias y dejar de lado las combinaciones de teclas como método único de control y empezar a utilizar gestos sobre las pantallas táctiles.

Decepcionante la poca importancia de la accesibilidad en el congreso, salvo por unos pocos proyectos relacionados con fundaciones o empresas pequeñas, la accesibilidad brillaba por su ausencia. Google sigue pensando, erróneamente, que el nivel que incluye actualmente Android es más que suficiente. No se da cuenta que existen iniciativas de terceros desarrollando soluciones de accesibilidad para esta plataforma porque su accesibilidad actual es del todo insuficiente. Una de estas iniciativas parte de Codefactory, empresa creadora de lectores de pantallas y magnificadores para Symbian y Windows Mobile, que ahora comienzan a interesarse por Android. Tuve la grata visita de varios miembros de esta empresa para hablar de accesibilidad, Android, nuevas tecnologías y más.

Aún más decepcionante fue la postura de Samsung y su sistema operativo Bada. El encargado de hacernos una demostración quedó un poco desorientado cuando le pregunté sobre la accesibilidad de Bada. Su respuesta, a grandes rasgos, es que no se incluía nada específico pero que no era un tema importante para Samsung.

Más esperanzadoras fueron las posturas de la gente de HTC que, con diseños muy bonitos pero poco accesibles, acogieron de buena gana todas las mejoras y consejos que este servidor les dio para hacer que sus dispositivos resulten más accesibles y usables a personas con diversidad funcional. Otras empresas demostraron conocer la necesidad de un interfaz accesible pero muchas de ellas se limitaban a comentar que Android proporcionaba pocas facilidades al desarrollador para hacer interfaces complejos y accesibles aunque eran conscientes de que es algo a mejorar tanto por parte de Google como de sus productos.

Una noticia conflictiva fué la alianza entre Nokia y Microsoft con las implicaciones que esto provocaría en cuanto a la accesibilidad y el catálogo de teléfonos potencialmente accesibles para personas con discapacidad visual. Tuve la oportunidad de conocer y hablar con gente de Nokia, aunque presencialmente nos centramos en el proyecto del medicamento accesible, a través de correo electrónico me explicaron que la postura de Nokia es seguir trabajando con Symbian para los teléfonos de gama media y baja. Ante la problemática de teléfonos con Symbian pero que no pueden soportar la instalación de un lector de pantallas o magnificador me comentaron que la gama media tendrían unas características de hardware más que suficientes para la ejecución de los lectores de pantallas presentes actualmente en el mercado. Conocían la problemática de la carencia total de accesibilidad de Windows Phone Series pero que Microsoft era el único responsable.

Otras iniciativas sobre accesibilidad que aparecían en el congreso se orientaban a la teleasistencia, terapias de rehabilitación y autonomía telefónica de personas mayores y personas con discapacidad física.

Lo mejor del congreso, junto con la oportunidad de tocar y probar nuevos dispositivos y tecnologías, fue la gente con la que compartí la experiencia. Compañeros de Technosite y Fundación Vodafone que tuvieron que soportarme en el stand de Vodafone. Visitas de gente desconocida y conocida que hicieron más amena la estancia y cuyo punto en común fue el interés en hacer cosas accesibles y de calidad. Personas como Enrique Varela, Oscar Gorri, Caroline Ragot de Codefactory y otras muchas personas compartieron esta experiencia del Mobile World Congress conmigo. Sin olvidar a los que estabamos trabajando allí en el stand de Vodafone.

Chess-wise otro ejemplo de accesibilidad para ciegos en iPhone

En la App store empieza a verse los resultados del movimiento en pro de la accesibilidad en los juegos para iOS, el sistema operativo de Apple para dispositivos móviles. Poco a poco van apareciendo más títulos de aplicaciones que, bien incorporan un diseño accesible para ciegos o para otros perfiles de discapacidad.

Un ejemplo de este creciente interés en pro de la accesibilidad y de la accesibilidad como criterio de calidad es el del juego Chess-wise, o Ajedrez mente. el creador de este juego de ajedrez para iPhone se ha interesado en hacer que su juego, que antes no era nada accesible, lo sea para usuarios ciegos que utilicen voiceOver en su iPhone.

El desarrollador ha adaptado el tablero de juego y gran parte de sus opciones para que un jugador ciego pueda disfrutar del juego de ajedrez en su iPhone.

El juego está traducido al castellano y, aunque hay algunos fallos de traducción, se puede jugar con normalidad. Aún existen algunos fallos de accesibilidad para personas ciegas pero el juego es completamente jugable por usuarios con discapacidad visual total.

Aunque las mejoras de accesibilidad se limitan sólo para el uso y disfrute de personas ciegas, es esperanzador que este movimiento en pro de la accesibilidad del software para iPhone e iPad comience a dar sus frutos.

Puedes encontrar el juego de ajedrez en la App store de Apple buscando los términos chess-wise o Ajedrez mente

Kindle 3, esperanzas de accesibilidad en los lectores de libros electrónicos

En el día de hoy he tenido la oportunidad de probar un Kindle 3 de Amazon. Este dispositivo es uno de los lectores de libros electrónicos más conocidos del mercado.

Este modelo, aunque con menor relieve en las teclas físicas que modelos anteriores, sigue utilizando botones físicos fácilmente identificables por una persona ciega aunque hay que señalar que su principal interfaz es su pantalla de tinta electrónica.

Personalización de la visualización

El dispositivo permite ampliar el tamaño de letra y el espacio entre líneas de forma que una persona con problemas de visión parcial podría personalizar la visualización del texto para leer más cómodamente. Aunque hay que indicar que la pantalla es mate y sin retroiluminación. Tampoco permite invertir el color de la pantalla por lo que algunos perfiles de discapacidad visual pueden encontrar que las soluciones de visualización propuestas por Kindle resultan insuficientes para su perfil de discapacidad.

Síntesis de voz

Este modelo, importado de Reino Unido, incluye dos voces de bastante calidad. Personalmente opino que la voz masculina tiene mayor calidad que la femenina. El dispositivo permite 3 velocidades (lenta, normal y rápida). Las voces poseen bastante calidad de dicción y en el nivel normal de velocidad la entonación es muy buena.

El sistema de navegación en la obra es por páginas y modo lectura contínua.

Se desconoce si incluirá voces en castellano cuando Amazon abra su tienda en España por lo que aún no queda claro si el dispositivo resultará accesible para lectores ciegos que quieran leer textos en castellano.

Accesibilidad limitada

El dispositivo obliga a solicitar ayuda a alguien que vea bien para activar la voz para los menús y navegación y para la lectura de un libro. Lo mismo sucede para personalizar el tamaño de letra y demás opciones de visualización.

Pero el principal problema de accesibilidad que presenta el dispositivo es que muchos libros presentes en la tienda de libros de Amazon poseen características de protección del Copyright del autor que impiden leer la obra utilizando la síntesis de voz. Aunque varias asociaciones de ciegos de EEUU han comunicado su protesta a Amazon parece que las presiones de editoriales y escritores son más importantes que el derecho a la integración y al acceso a la cultura por parte de personas con discapacidad visual.

MyEvents, ejemplo de utilidad, simplicidad y accesibilidad para iOS

Dentro del catálogo de aplicaciones disponibles en la App store, la tienda de aplicaciones de Apple para sus dispositivos, encontramos aplicaciones muy diversas más o menos útiles. Un ejemplo de ello es MyEvents, una aplicación simple y efectiva. Su cometido principal es mostrar cuántos días faltan para un evento determinado. De esta forma se puede planificar el evento con suficiente tiempo.

Esta aplicación posee mucho potencial como suplemento a la aplicación de calendario de iOS ya que su desarrollador es receptivo a mejoras y sugerencias.

Accesible sin proponerselo

La aplicación es realmente accesible al utilizar los controles comunes de iOS, el sistema operativo de Apple para dispositivos móviles, encontrando únicamente un par de pequeños errores de etiquetado. Conozco al desarrollador de esta aplicación y se sorprendió gratamente de que su aplicación resultase accesible.

Concienciación y compromiso

El desarrollador de esta aplicación, @DFreniche, ha mostrado interés en hacer sus desarrollos accesibles al conocer la necesidad de los usuarios con discapacidad del acceso a las aplicaciones de la App store. Este trabajo de hacer accesible los interfaces de las aplicaciones, en muchos casos y gracias a una API de accesibilidad bien integrada en el sistema, es algo sencillo y que no requiere demasiado esfuerzo, siempre y cuando el interfaz siga las guías de diseño definidas por Apple.

Touch type, teclado virtual accesible para ciegos en Android

Una de las limitaciones más importantes que existen en Android, en cuanto a accesibilidad del sistema para usuarios ciegos, es la imposibilidad de utilizar el teclado virtual en pantalla debido a las limitaciones de exploración de los elementos en pantalla a través de la pantalla táctil. Con Talkback o spiel, los dos lectores de pantallas compatibles, actualmente, con Android no se puede explorar la pantalla tocando con los dedos ya que el usuario, cuando coloca un dedo en la pantalla, activa el elemento y después de la activación la síntesis de voz verbaliza qué se ha activado. Esto provoca que el intentar escribir utilizando el teclado en pantalla sea una operación bastante compleja.

La solución ofrecida por el equipo de desarrollo de accesibilidad de Google y el proyecto Eye-free es un tanto ridícula. Oficialmente dicen que se utilice un teléfono con teclado físico o se conecte un teclado externo vía Bluetooth para poder escribir cualquier cosa. Esta solución va en contra del mercado, en el cual cada vez aparecen más teléfonos con sólo pantalla y sin botones. El conectar un teclado externo Bluetooth implica introducir una clave numérica en el terminal para emparejar los dispositivos, ¿pero, si no podemos teclear cómo introduciremos la clave de emparejamiento?

La comunidad de usuarios y desarrolladores de Android no tiene porqué conformarse con las decisiones de Google para Android. Un ejemplo de esto es el proyecto Touch type, desarrollado por un grupo de desarrollo independiente de Google.

Teclado virtual a semejanza de iPhone

Touch type es un programa para Android que permite sustituir el teclado habitual en Android por otro teclado con la particularidad de ser compatible con la síntesis de voz y accesible en la gestión de gestos en la pantalla.

El método de escritura es muy similar a uno de los métodos que ya se utilizan en el iPhone o en el iPad. Se debe arrastrar el dedo por la parte baja de la pantalla, cada vez que el dedo se coloque sobre una letra, esta será verbalizada. Si dejamos de tocar la pantalla, la letra será introducida en el campo de texto.

Para saber más sobre Touch type puedes visitar la página oficial del proyecto Touch type para Android

Esperanzas en un Android accesible para ciegos

Actualmente el proyecto Touch type está en versión beta, por lo que su funcionamiento no es del todo fiable, pero los resultados obtenidos en esta versión inicial hacen que se tengan esperanzas en tener un Android accesible para ciegos a medio plazo.

Lo que queda por hacer en accesibilidad de Android

Tras obtener una solución para el teclado virtual en Android, sólo falta que los lectores de pantallas se puedan utilizar a través de gestos en la pantalla en lugar de utilizar trackballs, cursores o touchpads, así como algunos botones de navegación. Además se debe conseguir una mayor integración de las librerías de accesibilidad para las aplicaciones disponibles en el Market de Android. Con esto podríamos decir que Android será un duro competidor de iOs en cuanto a la accesibilidad para usuarios ciegos.

En cuanto a otros perfiles de discapacidad decir que Google sigue distraída sin prestar oídos a las necesidades de otros perfiles de discapacidad.

Lectores de pantalla

Un lector o revisor de pantallas es una herramienta de asistencia para discapacitados visuales grabes o totales cuya principal función es transmitir al usuario la información que se visualiza por pantalla.

Dentro de los interfaces de texto (como serían la consola de Windows, MSDOS o el Bash de Linux) las funciones del lector de pantalla son simples. Sólo tiene que poder leer cada una de las diversas líneas de texto que aparecen en la consola y transmitirlas al usuario. Otras funciones asociadas para este tipo de lectores son las posibilidades de revisar línea a línea la pantalla, verbalizar los cambios sufridos en la pantalla o crear cuadros de detección para prestar mayor atención a zonas específicas de la pantalla.

El tener un interfaz visual basado en texto y con una estructura de distribución de la información simple, como es el caso de las consolas de texto, simplifica mucho la tarea del lector de pantallas. El problema aparece cuando el interfaz consiste en elementos visuales como iconos, cuadros de texto, ventanas, barras de desplazamiento y demás controles visuales utilizados por la mayoría de interfaces gráficos de usuario comunes en Windows, GNome, KDE y MacOS X.
En este caso el lector de pantallas tiene que realizar una interpretación previa de lo que existe y se ve en la pantalla para transmitirlo al usuario.

Esta interpretación del contenido visual se hace siguiendo un protocolo y conjunto de reglas denominado off screen model.

Dependiendo del tipo de Off screen model el lector de pantallas permitirá una exploración focal (siguiendo al foco del tabulador), exploración línea a línea (como el cursor de JAWS o un lector de pantallas para consola), exploración posicional (como hace voiceOver), o exploración gerarquica utilizando el árbol de objetos (como hace NVDA y tiflowin).
También influirá a la hora de transmitir cierta información como la fuente y color del texto de un control visual, el tamaño del control, el estado del control (activo, visible, oculto, etc) o las caracteristicas de accesibilidad o información alternativa del control (tooltips, globos de texto, etiquetas descriptivas, etc).

Hay que prestar atención en la diferencia que hay entre «lo que existe en la pantalla» y «lo que se ve en la pantalla» ya que el uso de ventanas solapables en los interfaces gráficos puede provocar que el usuario sin discapacidad visual no vea lo que hay detrás de una ventana aunque siga existiendo en el interfaz. El lector de pantallas debe detectar si el control o elemento del interfaz está visible para notificarle el estado al usuario ciego. El lector de pantallas puede controlar la información visual consultando al sistema operativo sobre el árbol de objetos visuales o parasitando el controlador de video, siendo la primera opción la menos intrusiva ya que no se requiere de la instalación de ningún driver o parche de control de video.
El árbol de objetos visuales es una representación abstracta de lo que hay en un interfaz gráfico de usuario. Es utilizado por el sistema operativo para estructurar los diversos elementos de un interfaz gráfico y actualizar el estado y gestionar los eventos. En el árbol de objetos podemos tener la rama inicial en el escritorio y de ella nacen varias ramas hijas representando a las ventanas de las aplicaciones abiertas que tengamos en ese momento, de una de esas ramas pueden colgar subramas para representar subventanas, botones, barras de menú, etc presentando una vista gerarquizada de los elementos del interfaz.

El lector de pantallas también debe estar pendiente del dispositivo de entrada, sea este un teclado, una pantalla táctil o una botonera. El usuario ciego deberá utilizar el dispositivo de entrada para explorar el interfaz gráfico e interactuar con él. Por esta razón el lector de pantallas deberá modificar el comportamiento del dispositivo de entrada para incluir ciertas combinaciones de teclas, gestos o movimientos determinados para realizar las funciones de exploración en el interfaz(leer una ventana o cuadro de texto, moverse al elemento anterior o siguiente del interfaz, activar un elemento del interfaz, etc).

El lector de pantallas debe transmitir el resultado de la interpretación del interfaz al usuario con discapacidad visual utiizando un canal accesible para él, como puede ser voz sintética, eventos de sonido o salida por un dispositivo de lectura braille.

En resumen, un lector de pantallas se compone de los siguientes elementos:

  • Módulo de control del interfaz gráfico
  • Módulo de control del dispositivo de entrada
  • Módulo de salida de información
  • Off screen model

Dentro del catálogo de operaciones que un usuario puede pedir a un lector de pantallas están: Leer caracter, palabra, línea anterior, actual o siguiente; consultar tipo, tamaño y color de fuente, leer título y última línea de la ventana, repetir lo último verbalizado, etc.

Algunos ejemplos de lectores de pantalla son: NVDA, Window eyes, JAWS, Dolphin HAL, Thunder, voiceOver, Orca, Mobile speak, Talks, out spoken, virgo, tiflowin, lector98, habla, parla, etc.