pequeños proyectos web
Distintos disciplinas tienden a aclarar el concepto de Usabilidad en maneras que se ajustan a sus propios propositos, y por tanto suelen depender de un contexto particular. Por otro lado, la facilidad de uso es solo una fracción de la ecuacion, y por esa razon es que prefiero la definicion enfocada a la eficiencia que da ISO: Usabilidad es el grado en que un articulo puede ser utilizado por usuarios particulares para lograr objetivos especificas con efectividad, eficiencia y satisfaccion en un contexto de uso especifico. (International Organization for Standardization, ISO 9241-11 1998) Usabilidad, en el contexto del diseño de interfaces puede ser descrita como una evaluación multidimensional del nivel común de satisfacción con que un usuario es capaz de completar un conjunto de tareas específicas. Si una imagen vale más que mil palabras... Para bien o para mal, Flash ha cambiado la rostro de la web. La omnipresencia del plugin ha algun que Flash se convierta en un ámbito viable para el desarrollo de aplicaciones de contenido multimedia. En ese sentido, las experiencias creadas con Flash se benefician de la tecnología, más allá de los gráficos y animaciones vectoriales. Brindarle al usuario la habilidad de interactuar con aplicaciones en el navegador es una de las razones esenciales por las cuales Flash se ha convertido en la dispositivo preferida por diseñadores de interaccion alrededor del mundo. Asimismo, la capacidad de mostrar facilmente distintos segmentos de informacion sin necesidad de cambiar o ?actualizar? la pagina, juega un rol significativo en que cada vez mas aplicaciones que laboran con datos dinamicos sean desarrolladas en Flash. Por otro lado, el soporte de video streaming y su creciente calidad en las ultimas versiones del reproductor de Flash, lo han convertido en el plugin de video mejor distribuido del mercado, siendo rapidamente adoptado frente a opciones propietarias, que asimismo son complicados de ajustar a escenarios particulares. Si Flash es tan bueno, cual es el asunto de Jakob Nielsen? Hacia Octubre del 2000, Jakob Nielsen, reconocido purista de la Usabilidad en la web, escribía en una pieza titulada ?Flash 99% Malo?: La tecnología Flash no promueve la Usabilidad por tres razones: incrementa las probabilidades de malos diseños, rompe con el estilo de interacción importante de la Web, y consume recursos que serían mejor utilizados mejorando el valor intrínseco del sitio. (Jakob Nielsen, Flash 99% Bad) Aunque éste artículo fuese actualizado en Junio del 2002, cuando Macromedia lanzó Flash MX al mercado, introduciendo características que facilitaban la creación de aplicaciones más usables y accesibles (con la venia del Sr. Nielsen), el documento es singularmente representativo del tipo de acusaciones de las que ha sido objeto la tecnología Flash, a lo largo de su existencia. De hecho, algunos extremistas de la Usabilidad llegan a ningunear el rol del diseño visual en la creacion de interfaces amigables, y demandan que los creadores de contenidos eviten a toda costa el uso de cualquier tipo de bases que requieran de plugins, o inclusive imagenes. Los bases varian, pero todos coinciden en que la web fuese creada para publicar texto exclusivamente, negando casi 10 años de historia y evolucion de Internet. Para muestra, un boton: El website de Jakob Nielsen es un vivido ejemplo de las fortalezas y debilidades de usar HTML puro en el diseño de un medio informativo. Por otro lado, es sumamente significativo que tengamos en cuenta que los juicios que los detractores de Flash expresan, estan basados en experiencias de segunda mano. Resulta obvio que profesionales no conocen ni han trabajado con la herramienta, y por ello expresan opiniones acerca de lo que la gente ha hecho con Flash, y no en las capacidades reales del producto. Basado en mi experiencia personal, me siento seguro al decir que Flash provee poderosas dispositivos que, utilizadas correctamente, pueden ser puestas al servicio de la Usabilidad. De la misma manera, Flash no es de manera cierta una solucion universal, y propone desafios como cualquier otra tecnologia. Esta en nuestras manos discernir donde y cuando una aplicacion Flash puede ser la respuesta a nuestras necesidades, y este producto pretende servir de orientacion, investigando algunos de los dificultades encontrados con gran frecuencia, y su impacto en el diseño y desarrollo de aplicaciones Flash. Retos DE LA USABILIDAD EN FLASH 1. Detección del reproductor de Flash De acuerdo a las mas recientes estadisticas publicadas por Macromedia, alrededor del 99% de usuarios de Internet en Europa puede alcanzar a aplicaciones Flash automaticamente, al contar con el plugin ya instalado en sus computadores. Aunque estos numeros se ven muy bien, la version mas reciente (Flash Player 7) representa solo el 92.3% del total de instalaciones, acercandose al final de su ciclo de propagacion con un aumento de casi el 4% desde el ultimo censo hace 3 meses. Tipicamente, cada nueva version del reproductor de Flash tarde entre doce y catorce meses en conquistar la barrera del 90%, que suele ser un indicador significativo de que el terreno es ya ?seguro? para aquellos desarrolladores que quieren implementar aplicaciones que hagan uso de propiedades exclusivas del plugin mas nuevo. Entretanto tanto, multiples versiones mayores y menores del reproductor de Flash coexisten en el universo de usuarios de Internet, tal y como se puede apreciar en el grafico. Esta informacion es indudablemente valiosa, pero no mas que vuestro conocimiento de las caracteristicas demograficas propiaes del programa en nos toque laborar concretamente. Los numeros publicados por Macromedia son una referencia global, y pueden no reflejar la verdad propia de vuestro publico objetivo. En ese sentido, las capacidades del reproductor que elijamos pueden tener distintos niveles de impacto en lo que los usuarios pueden (o no) ver o hacer. Estas son las razones que hacen necesaria la implementacion de cierta manera de deteccion del reproductor de Flash. Entre las alternativas que poseemos a vuestra disposicion, no tiene lugar un metodo 100% efectivo, ya siempre cabe la probabilidad de que la deteccion falle, ya sea por latencia en la red o limitaciones del metodo elegido. Los métodos ampliamente utilizados son tres: Flash MX 2004 Utilizando Flash MX 2004, es muy fácil configurar una película para que detecte que versión del plugin está instalada en el computador del usuario. Basta con dirigirse a la pestaña HTML del menú ?Publish Settings?, y marcar el casillero de Detección del reproductor. Los documentos HTML necesarios son creados automáticamente al publicar la película. Flash Detection Kit El kit de deteccion de Flash es un conjunto de dispositivos que proporciona distintos alternativas para detectar la version del reproductor de Flash en distintos escenarios. El kit incluye una expansion para Dreamweaver, ejemplos con codigo fuente para Actionscript y HTML, e inclusive una solucion para proyectores. Informacion detallada de como usar y descargar el kit, esta disponible en el sitio web de Macromedia Metodo Javascript Basado en desarrollos anteriores para la deteccion de Flash usando Javascript, Colin Moock desarrolla un metodo generico as cual llama Flash Player Inspector. 2. Brincar Intros (del todo) El de los tristemente celebres ?intros? es un clasico caso de justificacion, en Diseño. Generalmente, los intros suelen tener como meta impresionar al visitante haciendo derroche de creatividad, muchas veces en extremo. Entretanto que en determinadas ocasiones una pagina de origen puede ser necesaria para filtrar el publico meta o brindar informacion que los usuarios deben analizar antes de alcanzar a un website, en la mayor mayoria de los casos, su presencia es innecesaria y hasta inconveniente. Debemos comprender que los visitantes de un website o los usuarios de una aplicacion tienen un meta definido o tareas que quieren llevar a cabo. Si ponemos impedimentos innecesarios, lo mas posible es que estemos restandole eficiencia al esfuerzo de vuestros usuarios. Como opcion a los intros, ofrecer un demo o presentacion como fracción del contenido del website es recomendable. 3. Carga y precarga Dada la naturaleza cinematica de Flash, es siempre una buena idea asegurarse de que los contenidos esten cargados en sus respectivo fotogramas, antes de intentar mostrarlos. En una pelicula Flash, los fundamentos de cada cuadro deben estar disponibles antes de que el segmento pueda ser reproducido sin errores. Si, por ejemplo, el fondo de una aplicacion afuera una retrato de mayor tamaño, probablemente pasarian varios segundos antes de que la interfaz pudiera ser mostrada, especialmente si el usuario no cuenta con una conexion a Internet de alta velocidad. Aqui es donde el concepto de ?precarga? es introducido. Basicamente se trata de parar la reproduccion de una pelicula, hasta que alguna porcion del archivo ha sido cargado (no necesariamente el 100%), entretanto el usuario es informado del progreso, ya sea cuantitativa como cualitativamente. Entretanto que un simple mensaje de ?Cargando...? puede ser demasiado escueto, es probable caer en el absurdo de presentar la porcion de bytes cargados, bytes totales y restantes, tiempo transcurrido y restante, ancho de banda relativo, etc., todo a la vez, y pretender que para el usuario tenga sentido. No abandonar al usuario adivinando es importante, asi como lo es brindar informacion que le sea sobresaliente y facilmente asimilable. Por otro lado, para eludir largas esperas, es conveniente separar una aplicacion voluminosa en secciones menores, y usar un contenedor para cargar las fracciónes convenientemente. 4. Navegación La eficiencia de un sistema de navegación depende en mayor medida lo exitosa que haya sido la organización de la información. Discutir tópicos de Arquitectura de la Información no es el objeto de este artículo, pero si lo es la aspecto y funcionamiento de los fundamentos conformantes de un sistema de navegación eficiente. Innovar no significa tener que reinventar la rueda en cada proyecto, sino desarrollar sobre la fundamento de modelos existentes. En otras palabras, enriquecer las experiencias significa ser congruentes con lo que el usuario conoce y acepta. Por ejemplo, un boton debe parecer y actuar como los botones que resultan familiares a todos quienes hemos utilizado el computador cierta vez. Lamentablemente, la total libertad creativa que nos faculta Flash ha algun que se contravengan estas normas basicas, y que se publiquen articulos que rompen con los esquemas de manera negativa. Uno de mis maestros (en la musica) me dijo cierta vez, que para intentar romper las normas primero debia conocerlas muy bien. Este comienzo es igualmente significativo en el tema de la comunicacion visual: una vez que conocemos lo que funciona y lo que no, seremos capaces de ?doblar? las normas, sin romperlas. En su afan de protegernos de nosotros mismos, Macromedia ha venido integrando componentes de interfaz a las ultimas versiones de Flash, con el meta de uniformizar la forma en que nuestras aplicaciones lucen y funcionan. 5. Trabajando con texto Verdaderamente Flash es el standard de facto para la animación vectorial, es también una fuerte opción a otros plugins capaces de reproducir video en la web. Sin embargo, no es el mejor recurso para presentar masivos porciónes de inmaneración en manera de texto. Aunque la última versión del reproductor de Flash soporta un cierto grupo de características de las hojas de estilo CSS, permitiendo darle formato a campos de texto con contenidos tanto estáticos como dinámicos, el motor de procesamiento de textos todavía carece de capacidades que son nativas del standard HTML desde hace años. Por ejemplo, es imposible tener texto en dos columnas, a menos que se tengan dos campos de texto separados. Asimismo, es muy difícil predecir cuanto lugar ocupará una alguna porción de texto y establecer un método de paginación. Es por estas razones que sitios de noticias, y otros que necesitan presentar porciónes de texto significativas, suelen recurrir a soluciones híbridas. Otro causa es que el dimension del texto de una pelicula Flash no se ve afectado cuando el usuario determina cambiar el dimension de la fuente en las preferencias del navegador. Afortunadamente, es probable manipular en tiempo real ciertas propiedades de textos, incluyendo el dimension de la fuente, a traves del objeto TextFormat, tal y como se puede ver en este ejemplo. 6. Contenidos dinámicos Uno de los puntos establecidos por Jakob Nielsen en su apreciacion de los sitios extendidos en su totalidad con Flash, era que resultaba dificil mantenerlos actualizados, ya que era indispensable editar directamente el archivo fuente para hacer hasta el mas chico de los cambios. El dia de hoy, es consabido que tiene lugar una mayor variedad de tecnicas que nos facultan manipular datos desde Flash, tanto de acceso como de salida. Ya sea a traves de simples documentos de texto o XML, o gracias a la integracion de aplicaciones Flash con fuentes de datos dinamicos usando Flash Remoting y Web Services, es diáfano que presentar datos frescos en una aplicacion Flash es relativamente sencillo, una vez elegido el metodo adecuado. Probablemente escoger la tecnica a usarse sea lo que represente un desafio, ya que no siempre resulta sencillo. Muchas son las variables en juego y casi siempre vamos a tener que depender de la infraestructura, personal y conocimientos ya disponibles para vuestro equipo de trabajo. 7. Transferir ficheros Regulaciones de seguridad limitan el entrada del reproductor de Flash a funciones particulares del sistema operativo. Una de las mas reclamadas, es la capacidad de alcanzar a los archivos, y poder leer y escribir en el disco del usuario, mas alla de las limitantes de las supercookies de Flash. Es por este causa que no tienen lugar campos de archivo entre los componentes de interfaz ofrecidos por Macromedia, lo cual hace imposible que un formulario hecho en Flash pueda, por ejemplo, transferir un archivo desde el computador del usuario a un servidor remoto. Hace determinado tiempo, encontre este impedimento entretanto desarrollaba una solucion para un cliente. Mas tarde, ensayando una solucion general, introduje una tecnica basada en el esfueserzo conjunto de Flash, Javascript y PHP. El tutorial fuese publicado en After-hours.org, un sitio que sirve de punto de encuentro a fracción de la comunidad ?flashera? de Hablad hispana. Básicamente, se trata de usar un marco oculto donde ubicar tantos campos de archivo como nos hagan falta, y usar Javascript para establecer comunicaciones entre ambos marcos, el que esta oculto y el que alberga al formulario hecho con Flash. El rol de PHP está limitado a subir el archivo o ficheros al servidor, así que es intercambiable por cualquier otra tecnología que usen regularmente, ya sea ColdFusion, JSP, ASP, etc. 8. Aplicaciones Flash indexables Una de las preguntas que encontramos con gran frecuencia al escoger Flash para desarrollar un sitio, es si los usuarios podran encontrarlo en los buscadores. La respuesta no es siempre sencilla, pues depende de varios factores. Google, por ejemplo es capaz de indexar textos y seguir enlaces que se encuentren en una pelicula Flash. Al hablar de texto contenido nos referimos a texto que fuese introducido directamente en modo de edicion, no informacion recibida de fuesentes externas Determinadas soluciones, como ubicar textos de fuentes externas en manera de comentarios en el codigo HTML, suelen funcionar, entretanto que redireccionar spiders a paginas especiales es considerado abuso y puede repercutir negativamente en el posicionamiento de una web en los distintos motores de busqueda. Para ellos, no tiene lugar nada mejor que contenido sobresaliente y accesible. En ese sentido, aplicaciones hibridas (Flash/HTML) suelen tener los mejores resultados. Una opción usada para reemplazar encabezados por películas Flash, con el propósito de utilizar tipografía especial es sIFR. Extendido por Shaun Inman, Mike Davidson, Tomas Jogin y Mark Wubben, y actualmente en su versión 2, sIFR está empezando a ser usado por más y más diseñadores alrededor del mundo, incluyendo su servidor. Más información. Por otro lado SEFFS, extendido por Claus Wahlers e inspirado por sFIR, es una tecnica experimental que faculta procesar un documento XHTML y reemplazarlo por una pelicula Flash que lo procesa y redefine; luego de todo, XHTML es unicamente un tipo especial de XML. Más información. 9. Flash Accesible Usando Flash MX 2004 y su panel de Accesibilidad, es probable que algunos lectores de pantallas puedan detectar ciertos fundamentos de una pelicula Flash, y de esta forma hacerlos accesibles a personas con dificultades de vision. Sin embargo, esta caracteristica necesita la version 7 del reproductor de Flash, Microsoft Internet Explorer y un lector de pantalla compatible con la implementacion de Macromedia, actualmente Windows-Eyes de GW Micro, o JAWS de Freedom Scientific. Informacion detallada acerca de como construir aplicaciones Flash accesibles puede ser encontrada en el Macromedia Accesibility Center, y ejemplos de sitios creados con Accesibilidad estan disponible en este compendio publicado por Bob Regan. 10. Pruebas de Usabilidad Una evaluacion cualitativa de la Usabilidad de una aplicacion debe ser fraccion del proceso de diseño, y no del control de calidad, como suele ocurrir cotidianamente. No me atrevo a consignar un numero aqui, pero por la mayor mayoria de estudios de Usabilidad llevados a cabo en los Estados Unidos no tienen ningun valor, ya que al enterarse de las deficiencias de un sistema cuando esta terminado, es muy dificil beber acciones correctivas, respetando la probable ramificacion de sus repercusiones. Una evaluación cuantitativa o de casuística, que comúnmente se conoce como prueba de Usabilidad es lo que nos ayudará a decidir en que medida se cumplieron los objetivos. Como pueden ver, se trata de acciones complementarias, y no excluyentes. Entretanto que diseñar usa aplicacion teniendo al publico en mente no ayuda a establecer objetivos y cometer menos errores, o por lo menos errores menos fundamentales, una evaluacion del artículo terminado nos ayuda a decidir el nivel de Usabilidad alcanzado, corregir errores mas manejables, y documentar lecciones aprendidas. La envergadura de estas evaluaciones siempre dependera del presupuesto disponible, pero es indispensable tenerlas en cuenta para la asignacion de recursos. Determinadas firmas eligen que las pruebas de Usabilidad sean llevadas a cabo por empresas especializadas, o debajo la direccion de un consultor. Cualquiera sea el caso, es significativo destacar que vuestra participacion como artículores de contenido es critica: la mejor consultoria de Usabilidad del mundo no conoce vuestro artículo mejor que nosotros mismos.