Accesibilidad… ¿en el backend?
Puedes leer este artículo en inglés aquí.
Cuando se habla de accesibilidad digital, la mayoría de la gente piensa que las prácticas de este tema las realizan únicamente los desarrolladores y diseñadores frontend. Si bien es cierto que la mayor parte del trabajo está en estas áreas, los que trabajan con el backend no están del todo excluidos de este tema.
Pero yo, el desarrollador de back-end, no hago diseño de pantalla, escribo media docena de líneas de HTML una vez en la vida, ¿cómo podría ayudar en este escenario?
Bueno, siempre hay una manera. A continuación traigo algunas ideas de acción de personas de backend en el área de accesibilidad.
Actuación
No es nuevo que escuchemos que es sumamente importante realizar optimizaciones de rendimiento en las aplicaciones, y esto suele tener dos motivos principales:
- El rendimiento puede ser un factor decisivo para que el usuario complete una compra , y la falta de rendimiento en un sitio puede resultar en la pérdida de clientes potenciales;
- Google considera la puntuación de rendimiento del sitio como un criterio de clasificación de búsqueda .
El usuario tarda una media de 3 segundos en dejar de acceder a una página porque aún no se ha cargado . Pero imaginemos un escenario en el que el usuario es persistente y está dispuesto a pasar “todo este tiempo” esperando: justo en la entrada al sitio ya tendrá una mala impresión, posiblemente la lentitud le provoque una ansiedad o irritación que puede ( y probablemente lo hará) influirá en el resto de la experiencia del sitio.
internacionalización
La internacionalización tiene que ver con la accesibilidad. En la práctica, ambas técnicas tienen un objetivo común: hacer que el usuario entienda el contenido de la pantalla .
Este es un trabajo que depende mucho de la aplicación que se está desarrollando para ser considerado "trabajo posterior" o "trabajo frontal" (o ambos), pero una cosa es un hecho: cuando se está desarrollando algo diseñado para ser multilingüe, el trabajo debe ser hecho de internacionalización consistente. ¿Quién nunca ha entrado en un sitio “traducido” al portugués, pero notó varios textos en inglés? Sí, no sigas ese ejemplo.
¡Oh! Esto parece demasiado simple para siquiera mencionarlo, pero es muy común olvidarlo en la vida cotidiana: use el atributo langen HTML, generalmente se usa en el elemento raíz de la página (etiqueta html), pero también se puede usar cuando una parte específica de la página está en un idioma diferente al resto del sitio. Este atributo es muy importante para que el navegador identifique el idioma que se utiliza en la página y sugiera traducciones automáticas basadas en el idioma del navegador del usuario.
Aprende lo básico
Aunque no forme parte necesariamente de tu día a día, es recomendable saber qué es la accesibilidad y cómo funciona en el contexto de una aplicación Web/Móvil. A menudo, los desarrolladores de back-end generan páginas HTML y, cuando lo hacen, es posible que esas páginas no estén estructuradas de la manera más fácil de usar posible.
Hablar con compañeros de otras áreas
Si tu equipo ya tiene cierta madurez en relación a la accesibilidad en áreas como frontend y diseño, habla con personas de estas áreas para saber cómo se hace este trabajo y cómo puedes ayudarlos. Tal vez solo falte un campo de descripción para las imágenes alternativas o información adicional en los detalles del producto, y sí, estos detalles parecen tan pequeños que son insignificantes, pero junto con otras mejoras terminan marcando una gran diferencia.
Límite de tiempo para completar acciones
El tiempo no debe ser una limitación que impida que el usuario complete una actividad, es decir, si el usuario necesita 5 minutos o 1 hora para enviar un formulario, así sea, la aplicación debe estar preparada para ambos escenarios.
Por supuesto, no podemos ignorar el hecho de que existen varias limitaciones técnicas que nos pueden impedir brindar esto, pero siempre es bueno evitar este tipo de problemas que solo generarán frustración para el usuario. Además, como explica el W3C , hay algunas excepciones a esta regla:
- Eventos en tiempo real: debe haber un límite de tiempo para la actividad, como una subasta en línea.
- Actividades en las que el tiempo es esencial: el tiempo es esencial y aumentar el límite invalidaría la acción, como una oferta por tiempo limitado en un sitio de comercio electrónico.
- Límite de 20 horas: aunque es poco probable que una tarea tarde más de 20 horas seguidas en completarse, el W3C lo eligió como límite, después de eso se permite un límite de tiempo.
Como recomienda el W3C , debemos proporcionar una forma de mostrar el significado de una abreviatura cuando se usa en la página, para ayudar a los usuarios que:
- tener dificultad para descifrar lo que significa un acrónimo;
- confiar en los lectores de pantalla;
- tener memoria limitada;
- tienen dificultad para utilizar el contexto en el que se encuentra para comprender el significado de la sigla.
reautenticación
Imagina el siguiente escenario:
Mi banda favorita de todos los tiempos está tocando cerca de donde vivo y tengo la rara oportunidad de cumplir este sueño de verlos. Ya sabiendo que la competencia para garantizar las entradas será grande, dejo todas mis inscripciones listas en la web, a la espera de que se liberen las entradas para su compra. Cuando por fin están disponibles las entradas, garantizo la mía, tecleo los datos de mi tarjeta y todo, pero… cuando voy a finalizar la compra se me cae la sesión. En ese momento me asalta la desesperación, rápidamente me vuelvo a autenticar y cuando trato de proceder con la compra veo el triste mensaje… entradas agotadas .
Una "especie de" situación aburrida, ¿verdad? Así es.
Bien, eso es un problema, pero ¿qué tiene que ver con la accesibilidad?
Efectivamente, este no es un problema exclusivo de accesibilidad, pero si esta situación ya causa gran irritación a los usuarios que no tienen ninguna limitación, ¿imagínense para aquellos que solo pueden usar el mouse o dependen de un lector de pantalla para navegar?
Por eso debemos tener cuidado cuando implementamos flujos que requieran autenticación, el usuario debe poder continuar con su actividad sin perder ningún dato si su sesión expira. En este escenario de ticket, existen algunas soluciones que alivian el problema:
- Extender el tiempo de sesión periódicamente mientras el usuario está activo en el sitio;
- Reservar el ticket y guardar los datos del formulario a medida que el usuario los digita, en caso de que por alguna razón no pueda completar el llenado y desee continuar más tarde;
- Proporcione una opción para volver a autenticarse sin salir de la página actual y continuar el flujo después de la reautenticación.
En escenarios donde se puede buscar por texto para encontrar contenido, es interesante contar con un mecanismo que sugiera contenido con nombres similares, en caso de que el sistema sospeche que hay un error ortográfico en la búsqueda. De esta forma, evitamos que el usuario tenga que hacer una segunda búsqueda, corrigiendo su error y solo así encontrando lo que busca.
Como ocurre con muchas cosas en lo que respecta a la accesibilidad, la corrección ortográfica ayuda a todo tipo de usuarios, pero especialmente a personas con un bajo nivel educativo y personas con algún tipo de deterioro cognitivo como la dislexia.
Concluyendo
De acuerdo, pero ¿qué pasa si ninguno de estos consejos se aplica a mi backend diario? ¿Todavía necesito tener conocimientos de accesibilidad?
Bueno, dado que el área de la tecnología es cada vez más popular e incluyente, y la entrada de nuevas personas (incluidos los PCD) es cada vez mayor, un conocimiento básico del tema puede ayudar no solo a las personas que desarrollan backend, sino a todos en el equipo, por lo que podemos comprender las necesidades no solo de los usuarios para quienes desarrollamos los sistemas, sino también de los posibles compañeros de trabajo que puedan tener tales necesidades.
Incluso vale la pena mencionar que no solo las personas que trabajan con el frontend, backend, diseño y control de calidad son responsables de la accesibilidad, sino que todos los que pasan por cualquier etapa en el diseño de un software pueden contribuir.
Referencias
- Sí, la accesibilidad también es una preocupación de back-end (Eric Bailey)
- Temporización ajustable — Límites de tiempo requeridos comportamientos (W3C)
- Abreviaturas (W3C)

![¿Qué es una lista vinculada, de todos modos? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































