Programar a ciegas, así es el desarrollo y la accesibilidad para y por invidentes

Por David Ormeño @Arcanus_tco

El evento Zinc Shower es un marco en el que las ideas sobre economía creativa y colaborativa se comparten y se debaten. Entre los ponentes está Jonathan Chacón Barbero, un experto en accesibilidad y software libre que demostrará cómo es posible programar a ciegas, toda una aventura tecnológica de la mano de un invidente.

Su conferencia tendrá lugar el viernes 8 de mayo a las 16:00 de la tarde como parte de las sesiones ZincTech, pero antes hemos podido conversar con él sobre la importancia de la accesibilidad, y no solo para el usuario final, sino también para los que como él trabajan como desarrolladores de software y tienen algún tipo de discapacidad.

Un experto en accesibilidad

Jonathan nos contaba cómo ya empezaba a hacer sus pinitos en programación a los 4 años y a los 6 creó su primera aplicación. Programó para el Commodore Amiga y en 1995 se quedó ciego, algo que no le detuvo en esa vocación: a través de herramientas de accesibilidad como lectores de pantalla pudo seguir desarrollando su trabajo, primero como desarrollador independiente para Symbian y Windows y más tarde como consultor en accesibilidad para finalmente pasar a formar parte del grupo de I+D de Ilunion, de la Fundación ONCE.

En todos estos años Jonathan ha estado colaborando en diversos proyectos orientados a proporcionar soluciones para personas con discapacidades en materia de accesibilidad. Uno de los últimos asido VirtuAssist, un proyecto orientado a incrementar la autonomía de personas con discapacidad cognitiva. Para ello se hace uso de Google Glass, un dispositivo que permitía aportar información de contexto a personas que por ejemplo tienen autismo y para las cuales este desarrollo actúa como una especie de Pepito Grillo, un asistente que les guía a la hora de situarles en el contexto en el que se encuentran -espacial y temporal- y que les guía en la realización de todo tipo de tareas cotidianas y profesionales.

Jonahtan nos contaba también cómo cuando conoció el iPhone 3GS -que califica como " el primer smartphone táctil accesible"- se lo compró y comenzó a desarrolar aplicaciones y sobre todo juegos para él, lo que le hizo crear su propio sello de software, Tyflos Accessible Software, bajo el cual distribuye esas creaciones en la App Store de Apple. El primero que lanzó fue el buscaminas, un juego que adaptó para que pudieran disfrutarlo personas sin discapacidad como personas con discapacidades como los ciegos o los sordos.

A ese juego le siguieron otros como las tragaperras o la sopa de letras, pero siempre con un principio básico: la de que la accesibilidad afecta a todos los ámbitos, no solo pensaba en personas ciegas -de lo contrario "crearía un gueto digital"- sino en otros tipos de discapacidad.

Barreras para desarrolladores con discapacidad

Más interesante aún es su reflexión sobre las barreras que actualmente existen en las plataformas software del mercado. Jonathan confiesa trabajar en OS X porque es un sistema operativo especialmente accesible, aunque reconoce que Windows ha dado pasos importantes y Windows 10 promete en este sentido.

En Linux la situación es distinta porque la implicación de los desarrolladores con discapacidad es muy limitada y hay una gran dependencia de recursos hardware a los que los programadores tienen que acceder para poder aportar características de accesibilidad a sus programas. Lo que funciona en cierto hardware en materia de accesibilidad puede no funcionar en otro, y eso complica toda la situación, nos explicaba. El entorno de escritorio GNOME es uno de los que más en cuenta tienen a estos usuarios, pero aún así, como confesaba Jonathan, " queda mucho trabajo por hacer ".

Las cosas son igualmente singulares en el terreno de los desarrolladores con discapacidades. " Los propios fabricantes no piensan en personas con discapacidad, y si lo hacen solo piensan en los usuarios finales, no en los trabajadores [desarrolladores] ". En este punto nos hablaba de los entornos de desarrollo más extendidos en la actualidad y de su compromiso con la accesibilidad.

XCode, la solución de Apple, era una de las destacables, " aunque en las herramientas para el nuevo Apple Watch ya no es posible desarrollar sin utilizar las herramientas de diseño de interfaz". Eso es toda una barrera para quien como Jonathan desarrolla esas interfaces para sus aplicaciones directamente desde el código, y no con herramientas visuales. Microsoft Visual Studio no estaba tan preparado como XCode pero aún así había proporcionado ciertas facilidades en las últimas ediciones, pero no así en la edición Visual Studio Code. Por su parte Jonathan criticaba duramente a Android Studio, una suite que no cuenta con ayudas para la accesibilidad y que no piensa en ese tipo de desarrolladores.

Aquí este desarrollador nos explicaba que la evolución de todos entornos ha sido en cierta medida lógico: las herramientas son muy visuales, algo que entre otras cosas permite monitorizar toda la información de depuración de un vistazo. Eso complica las cosas para los desarrolladores con discapacidad, pero las facilita para los programadores modernos sin discapacidades. Estos, explicaba, " quieren hacer cosas de ahora sin tener como base las de antes. Pero es que todas estas plataformas de desarrollo tenían un común denominador:

Las herramientas están muy orientadas al uso de ratón, a usar sintaxis coloreadas, y todo lo que hagas visual si no pones alternativas (no solo visual, también con comandos de voz) lo aparta de las personas de discapacidad.

Esa ausencia de alternativas se mostraba por ejemplo con Macromedia Flash y con Action Script, para las cuales el desarrollo era totalmente inaccesible, pero algunos han aprendido y lo han tenido en cuenta. Un buen ejemplo es Eclipse, el entorno de desarrollo integrado que se ha convertido en referente para los desarrollores con alguna discapacidad -" eso sí, mientras no usen plugins especiales "- y que es para Jonathan un ejemplo de cómo plantear esa alternativa de la que nos hablaba este programador.

La accesibilidad como base de cualquier desarrollo

Jonathan también nos hablaba de la accesibilidad de nuevos segmentos de producto como el de los wearables. Mientras que el Apple Watch era para él el único dispositivo con opciones en materia de accesibilidad, nos comentaba cómo sus pruebas con un Moto 360 con Android Wear habían sido muy decepcionantes. No por el hardware -el dispositivo tiene un altavoz- como por el software -el sistema operativo no ofrece síntesis de voz, sino solo sonidos-. No solo eso: en Android Wear no hay opciones de accesibilidad como un lector de pantalla o un magnificador, mientras que WatchOS, el sistema operativo del Apple Watch, ya contempla esa posibilidad aunque aún no esté desarrollado.

Le preguntamos a Jonathan por las recomendaciones que le haría a las empresas que trabajan en este sector, y la primera fue clara: que piensen en como las soluciones de accesibilidad -y de nuevo hablaba de accesibilidad en el sentido amplio- afectan a más de 1.000 millones de personas en el mundo que tienen " algún tipo de discapacidad reconocida ". No solo eso: sus familiares y amigos se ven afectados en menor o mayor medida, y eso hace que si las empresas se fijaran en ese segmento ampliaran de forma clara su mercado objetivo.

También recomendaba no diseñar y desarrollar productos hardware y software pensando a corto plazo, sino hacerlo para que esos productos y servicios sirvan " ahora, mañana, y también pasado mañana, y que le sirvan a todo el mundo". En este sentido hacía una última reflexión:

Hoy corres, saltas, escuchas, ves, pero dentro de 40 años no vas a poder hacerlo igual porque todas las personas, con o sin discapacidad tenemos una enfermedad: envejecemos.

Eso hace que sea importante que tengamos en cuenta una accesibilidad de la que al final todos sacaremos muy buen partido. De hecho, nos comentaba " cualquier cosa diseñada con la accesibilidad como base acaba siendo más fácil", algo que de nuevo destacaba en los productos y servicios de Apple, que lo tenían en cuenta y que desde hace tiempo son un referente en usabilidad y diseño. Jonathan concluía nuestra conversación con una frase que él mismo había acuñado " con licencia Creative Commons, ya sabes, puedes usarla pero cita la fuente ":

La accesibilidad debe ser una base del proyecto y no un parche del producto.

Bien dicho.