Ir directamente al contenido de esta página

Cómo hacer accesibles contenidos de terceras partes: cuestión de imaginación

En algunas ocasiones como desarrolladores nos encontramos con que nos sería de mucha utilizad incluir en nuestras páginas contenidos incrustados que ofrecen terceras partes, pero que en muchos casos hay que plantearse si merece la pena mostrar los datos si estos no van a ser accesibles. No obstante, a veces es sólo cuestión de buscar una solución alternativa prestando atención a recursos poco evidentes.

El problema inicial

Para nuestra página de MovilizaWeb nos planteamos que sería interesante incluir datos estadísticos comparativos del acceso a Internet desde equipos de escritorio y desde dispositivos móviles del último año, para mostrar cómo el segundo va en aumento mes a mes.

Dichos datos nos los porporciona StatCounter, pero los formatos digamos que no son los que consideramos más aptos desde el punto de vista de la accesibilidad. Por un lado, podemos descargar el gráfico en JPG, pero esto nos plantea el problema de la descripción alternativa de los contenidos de la imagen, mucho más cuando queremos que esta información sea dinámica y que cambie de manera automática mes a mes. Por otro lado, tenemos el snippet que la página proporciona para incrustar el gráfico:


<div id="mobile_vs_desktop-ww-monthly-201101-201201" width="600" height="400" style="width:600px; height:400px;"></div>
<!-- You may change the values of width and height above to resize the chart -->
<p>Source: <a href="http://gs.statcounter.com/#mobile_vs_desktop-ww-monthly-201101-201201">StatCounter Global Stats - Mobile vs. Desktop Market Share</a></p> 
<script type="text/javascript" src="http://www.statcounter.com/js/FusionCharts.js"></script>
<script type="text/javascript" src="http://gs.statcounter.com/chart.php?mobile_vs_desktop-ww-monthly-201101-201201"></script>
 

…que desde el punto de vista de la accesibilidad es una pesadilla:

Así, teníamos que buscar una alternativa.

¿Y ahora qué hacemos?

Frente a este problema, el desarrollador perezoso puede encogerse de hombros y aferrarse a hacer una declaración de conformidad parcial con las WCAG 2.0, que es algo así como decir «sí, bueno, esta página sería accesible si no fuera por el formato en el que me proporciona los datos StatCounter; yo ya he hecho mi parte…»; pero esa es una actitud que reduce la accesibilidad a una especie de trámite administrativo a cumplimentar y que delega toda responsabilidad ética para con los usuarios discapacitados, además de que muestra muy poco respeto para los visitantes —o clientes— en situaciones análogas.

Una solución sería emplear la API de StatCounter —que permite recibir los datos en JSON u XML— y trabajar con ellos, pero en principio consideramos que las API tiene sentido emplearlas para un uso intensivo de los recursos que proporcionan, que no es nuestro caso puesto que los datos van a tener una aplicación muy restringida.

Y ahora es cuando viene la solución simple.

La solución: imaginar una alternativa

Un tercer formato que proporciona StatCounter es un CSV. Se trata de un pequeño archivo con este escueto contenido:


"Date","Desktop","Mobile"
2011-01,95.7,4.3
2011-02,95.55,4.45
2011-03,95.3,4.7
2011-04,94.79,5.21
2011-05,94.25,5.75
2011-06,93.47,6.53
2011-07,92.98,7.02
2011-08,92.88,7.12
2011-09,93.26,6.74
2011-10,93.45,6.55
2011-11,93.05,6.95
2011-12,91.96,8.04
2012-01,91.47,8.53
 

Revisando el código de la página, localizamos el vínculo que se genera junto a cada gráfica:


<a href="chart.php?statType_hidden=mobile_vs_desktop&amp;region_hidden=ww&amp;granularity=monthly&amp;statType=Mobile%20vs.%20Desktop&amp;region=Worldwide&amp;fromMonthYear=2011-02&amp;toMonthYear=2012-01&amp;csv=1" id="csv-version"> 
 

Tras esto, el proceso para crear una tabla accesible era trivial:

  1. Generamos la URL que necesitamos dependiendo del mes actual.
  2. Cargamos el .csv que nos interesa por medio de cURL.
  3. Creamos una matriz con los datos separando primero por saltos de línea y despues por comas.

Con la matriz resultante, generamos la tabla. Misión cumplida.

Conclusión

Por supuesto, habrá situaciones en las que no se cuente con los medios para hacer accesibles los contenidos de terceras partes, pero un desarrollador competente debe ser capaz de imaginar todas las alternativas posibles a su disposición para intentarlo.

Esta entrada se publicó el 7 de febrero de 2012, se archivó en , y fue etiquetada como . Autor: Saúl González Fernández. Aún no hay comentarios ›.

Comentarios

Aún no hay comentarios

¿Algún comentario?

* Los campos con un asterisco son necesarios

Últimos proyectos

© Digital Icon, S.L., 2007 – 2017