Dreamland / AJAX y la accesibilidad web. Tips & tricks

En el anterior post os comentaba los principales problemas que tiene AJAX a la hora de desarrollar aplicaciones accesibles. Ahora vamos a ver un par de pequeños consejos que, si bien no resuelven estos problemas en su totalidad, al menos disminuyen su impacto.

Deciamos que el primer problema era la dependencia que tienen las aplicaciones AJAX de JavaScript, y como este no se lleva bien con los lectores de pantalla. Pues bien, el primer consejo no podria ser mas simple: hacer que nuestras paginas sean capaces de funcionar con JavaScript deshabilitado. Tan simple (y tan complejo) como eso. Si somos capaces de ofrecer a nuestros usuarios la experiencia mejorada de AJAX solo si ellos la reclaman, cualquier persona podra elegir la manera que prefiera para acceder a nuestra aplicacion. Evidentemente, esto conlleva un trabajo extra para el desarrollador, y muchas veces se piensa que nadie estara interesado en ver una version «antigua» de nuestra web. pero…y si la version anterior es la unica que pueden utilizar?

Otro problema que teniamos era el hecho de que los lectores de pantalla no se dan por aludidos ante una actualizacion parcial de la pagina. De hecho, este problema no es exclusivo de los lectores de pantalla, sino que muchisimas personas no se dan cuenta de estos cambios al ser sumamente pequeños en ocasiones. Para esto, de nuevo, la mejor solucion es informar al usuario, Por una parte, deberiamos comunicarle que la informacion de la pagina se actualizara de forma dinamica, y tambien deberiamos darle la opcion de recibir una alerta (algo tan simple como un popup es mas que suficiente) cuando se produzca esta actualizacion. Y por otra parte esta la denominada «Yellow Fade Technique», popularizada por los chicos de 37signals, que no es mas que aplicar algun efecto a la zona modificada de manera que esta «resalte», y sea mucho mas sencillo para el usuario darse cuenta de las modificaciones.

En fin, no son mas que un par de consejos que nos permitiran, con mas o menos esfuerzo, seguir desarrollando con AJAX, pero teniendo en cuenta la accesibilidad. Pronto os colgare algun ejemplo practico de como llevar esto a cabo.
 

Chainsaw Buffet / AJAX y la accesibilidad web

Actualmente estamos viviendo el auge de la llamada «web 2.0», que se nos vende como una web mucho mas rica en contenidos, mas dinamica, y basada en aplicaciones web mas que en webs tradicionales. AJAX no es mas que una parte (importante, eso si) en todo este lio de tecnologias que engloba la «web 2.0», y es simplemente un conjunto de estandares (JavaScript, XML, HTML, CSS…). AJAX es a dia de hoy muy popular entre los desarrolladores, y Microsoft, evidentemente, no lo ignora y lanza su propia vision del asunto, a la que llama ASP.NET/AJAX, y que nos permite añadir a nuestras aplicaciones ASP.NET «de toda la vida» el dinamismo de AJAX sin necesidad de mancharnos las manos con sucio JavaScript (al cual no fui el unico en dar por muerto, verdad Salgado?). La pregunta es, hasta que punto este dinamismo, sin cuestionar ya su utilidad, llega a todo el mundo? O preguntando de forma mas tecnica…es AJAX accesible?

La respuesta es no…por el momento. Y las razones son bien sencillas, y no son mas que la absoluta dependencia que tiene AJAX de JavaScript y el refresco parcial de las paginas, y la mala relacion que tienen ambas cosas con los lectores de pantalla. La mayoria de los discapacitados que necesitan ayuda para acceder a la web utilizan un lector de pantalla, que se limita a leer lo que el navegador esta mostrando en pantalla. De ahi la insistencia en el uso de texto alternativo en las imagenes, al ser uno de los elementos que un lector de pantalla no puede interpretar. Vamos a ver un poco en detalle en que consisten estos dos problemas:

  • Dependencia de JavaScript. Browsers como Lynx o Links, no soportan JavaScript. Muchos lectores de pantalla (por suerte, cada vez menos), funcionan sobre Lynx. Y aunque funcionen sobre un browser que si soporte JavaScript, no lo interpretan, sino que intentan extraer algo con el suficiente sentido como para ser leido a un usuario, lo cual no es facil. Cuanto menos JavaScript haya en una web, mas sencillo sera leerla con un lector de pantalla, y AJAX tiende a aumentar cada vez mas el uso de JavaScript.
  • El refresco parcial de las paginas. Los lectores de pantalla, simplemente, no saben cuando una pagina ha sido actualizada «parcialmente». Para ellos, o se produce una actualizacion (y entonces leeran de nuevo la pantalla al usuario), o no se produce (y entonces no haran nada). Esto supone que una de las principales ventajas de AJAX (si no la mayor) sea no solo inutil, sino contraproducente.

En resumen, AJAX no se lleva bien con la accesibilidad web. Podemos solucionarlo? Pues parcialmente si, y lo veremos en un proximo post 😉

I Don’t Feel Like Dancin’ / Networking con Virtual PC

Aunque no lo parezca, conseguir tener en un mismo PC mas de uno y de dos Sistemas Operativos no es en absoluto dificil. Basta instalarte cualquier software de gestion de maquinas virtuales (VMWare o Virtual PC, por ejemplo), y puedes disponer, ademas de lo que hayas instalado en la maquina host (la unica maquina fisicamente visible, el cacharraco de encima de la mesa), un 2003 Server y un Windows XP donde instalar todas las betas, alphas y RC’s que quieras sin miedo a cargarte nada.

La cosa se pone un poco mas peliaguda cuando lo que queremos es que esa maquina se conecte a internet, ya sea para descargar actualizaciones o ficheros de video de los servidores mas concurridos de la red…Aqui os muestro la manera mas sencilla que he encontrado yo para conseguirlo, y es hacer que la maquina virtual salga a internet compartiendo la conexion del host mediante el Microsoft Loopback Adapter. Partiendo de una maquina host con Windows Vista, y una maquina virtual con el sistema operativo X, en Virtual PC…

  • Nos vamos al Control Panel
  • Pulsamos sobre «Add Hardware»
  • Elegimos la opcion «Advanced», que nos permitira seleccionar el hardware en una lista
  • Nos vamos a «Network adapters», y elegimos como fabricante Microsoft, y como producto el Microsoft Loopback Adapter

Con esto ya tenemos hecha la primera parte del asunto, y es tener montado el Loopback. Ahora lo que necesitamos es decir que vamos a compartir nuestra conexion de red con otros equipos a traves de el. Para esto, hacemos lo siguiente…

  • Nos vamos al Network and Sharing Center
  • Pulsamos sobre la opcion «View Status» de nuestra conexion de Internet, NO SOBRE LA CONEXION DE LOOPBACK,  y pulsamos sobre «Properties»
  • Seleccionamos la pestaña «Sharing»
  • Marcamos la opcion de «Allow other network users to connect through…», y en el desplegable seleccionamos Loopback

Y con esto ya tenemos la segunda parte, que es compartir nuestra conexion de internet a traves del Loopback. Acabar con el asunto es tan sencillo como arrancar Virtual PC y decirle en las propiedades de la maquina virtual que utilice como adaptador de red primario el Microsoft Loopback Adapter. Y listo para la conexion 🙂

Espero que os sea util
 

Copycat / He sido taggeado

Pues eso, que se supone que ahora deberia contar cinco cosas de mi que sepa poca o muy poca gente. O nadie. Y como parece que hay interes, porque no me han taggeado ni uno ni dos (sino tres, Ethel, Jorge y Doval), pues alla van. Luego no os quejeis 😛

  1. Me chiflan los RPG’s. Ya sea en un PC, con dados, con cartas, o con muñecajos, tengo un vicio que no me aguanto. Juego a Warhammer 40K desde hace unos 8 años, he coleccionado cartas de Magic (Mentira, no eran de Magic, eran de Pokemon!! Da lo mismo, a callar!!!), he estado un año y medio enganchado a Ultima Online y ahora juego al WoW, he jugado a n RPG’s en un PC y he disfrutado de muchisimos juegos de rol «clasico»,con sus dados y sus fichas de personaje. Mucho mucho vicio, mucho mucho dinero y, eso si, mucha mucha diversion.
  2. Durante 4 años hice Judo, hasta que me cambie de colegio. Llegue a ser cinturon naranja-verde, si no me equivoco. Hace ya bastante tiempo de eso 😛 Despues estuve un par de años practicando Tenis de Mesa, y ahora me (nos, verdad Doval) ha dado por la Esgrima. A ver lo que sale. Eso si, siempre he jugado al futbol de manera irregular, y siempre me han gustado deportes como el Kick-Boxing, o el Muay-Thai, pero mi fragilidiad fisica no me ayuda a animarme 😛
  3. Leo regularmente (vease a diario) un buen puñado de webcomics que, curiosamente, poca gente encuentra divertidos. Asi que me ahorrare el poner los links y tener que escuchar por n-esima vez eso de: «No le veo la gracia…»
  4. Aunque pueda parecer lo contrario, de niño nunca me llamaron los ordenadores ni la informatica. Es decir, no mas alla de «Papa monta el Spectrum», o «Papa dejame jugar al Atic Atac«. Sin embargo, si que me gustaba jugar con muñecas, y en el colegio en vez de jugar al futbol en el recreo me dedicaba a jugar con niñas y Barbies. Dios, esto empieza a ser humillante…
  5. Me encanta el dulce. Gominolas, chocolate, bombones…todo menos pasteles y tartas. Eso no 🙁 Y aunque no lo parezca dado mi esbelto fisico, como MUCHO. Preguntad si no os fiais 😛

Y ya esta, 5 cosas contadas. Ahora a ver lo que vais a acabar pensando de mi. Y como ya hay mucha gente taggeada que aun no ha respondido, se lo recuerdo yo. Cachero, Ricardo, Fran, Llopis y los compañeros de Plain que aun no se han animado…tardando estais 🙂