Ubicación del menú y otras cosas: ¿a la derecha, a la izquierda o arriba? (Usabilidad)

3 08 2009
Menu ¿En donde va? derecha, izquierda. Usabilidad

Nos meteremos un poco con el cuento de la Usabilidad. No voy a entrar en detalles por que en Google existe mucha información sobre lo que trata la usabilidad, pero si sobre un tema que es básico.

El menú: ¿A la derecha o a la izquierda?. y es una pregunta complicada, mas cuando en la actualidad ya los “Portales Web”  (Palabra que ya nadie usa) deben ser mucho mas fáciles de manejar para los usuarios tanto noveles (Nuevos) como para los mas experimentados.

Entonces cosas como la ubicación del menú son tan esenciales como la pagina. ¿Por que?, la respuesta es simple:

Si tu en un libro no encuentras algo, ¿Donde buscas el tema que necesitas?. En el indice… ¿Cierto?. Ahora imagina que ese indice no existe o aparece sin numeración. o que cada vez que vayas a buscar algo te toque ir donde la señora bibliotecaria a solicitarle ese indice para que puedas buscar el tema deseado.

Siempre piensa que el usuario desea comodidad, Al usuario no le interesa si es bonito o feo el menú o si tiene el nuevo efecto floral QUE SALE POR TODAS LAS WEB O BLOGS y que son generados por “pinceles” de photoshop. así que cuando estés en la fase de desarrollo de PLANEACIÓN del menú debes de tener estas indicaciones:

  1. Menús sin enlaces JAVASCRIPT. (Por ejemplo http://web.presidencia.gov.co/ el menú Azul, tiene enlaces de “javascript:;” y es un error GIGANTE.
  2. Texto de enlaces simple y con palabras genéricas, por ejemplo si es un menú sobre una web de MÚSICA en el menú no debe ir elementos como: “Mire las ultimas noticias de la música”, sino “Ultimas noticias”, el usuario sabe que esta en una web de música e identifica que son noticias sobre música.
  3. Usar las etiquetas <ul> y <li>.
  4. No usar un menú con numeración, esto confunde al usuario y le da un sentido de JERARQUÍA, pensando que una sección es mas importante que la otra, al fin de cuentas la numeración es innecesaria.

Ya despues de estos consejos, pasamos a una mini-investigación que elabore para este post, primero vamos por partes.

Menú a la izquierda

Es conocido que los menús a la derecha se maneja bien por cuestiones de costumbre. Desde el inicio de la web se maneja esta teoría.

Recuerdo que hace años http://terra.com siempre manejaba su web totalmente a la izquierda. (http://web.archive.org/web/20010119001800/http://www.terra.com.co/ Versión de terra del 2001) tal vez por las pantallas que en ese tiempo se manejaba 800 x 600 y de echo menos resolución, también recuerdo http://uol.com.co (Ya esta muerta) http://web.archive.org/web/20000302200854/http://www.uol.com.co/ (En su versión del 2000). Entonces para mi HUMILDE OPINIÓN, se siguió manejando los menús en el lado izquierdo y la gente así lo acepto y se enseño.

Ahora, su concepto por lo cual se defiende el menú a la derecha es la costumbre del usuario.

Menú a la derecha

Se argumenta que los menús a la derecha no se debe manejar por lo que decíamos arriba, la costumbre, ademas de que el usuario baja su mirada después de ver el logotipo a el menú, que por lo general el logotipo esta en la parte izquierda superior.

esa es una razón por la cual afirman que no se debe usar a la derecha.

Menú arriba

El menú arriba es muy útil sobretodo cuando se maneja en sitios de noticias, pero hay que tener en cuenta que si son demasiados elementos, toca hacer sub menús organizados en “capas desplegables” que muestre apenas se ubique el ratón encima de los elementos principales.

¿Entonces, como elegir la mejor posición del menú en una web?

Según mi investigación, las falencias de el menú a la izquierda son el transporte del ratón por cuestión de el scroll del navegador, esto es incomodo para algunas personas zurdas, ademas para las diestras también.

Algunos softwares de Adobe (Macromedia) usan el tablón de herramientas a la derecha por la cercanía del ratón al botón [X] Rojo de cerrar ventana de la mayoría de las ventanas de la interfaz gráfica de los diferentes escritorios, también por el scroll.

Pantallazo-10

Ahora, otros sitios manejan también la navegación a la izquierda y un minimenú arriba y abajo, como lo es http://twitter.com

Pantallazo-11

Después de ver esto, pasamos a el sitio de noticias mas visitado en Colombia, http://eltiempo.com.co

Pantallazo-12

En este portal se maneja un menú arriba, muy bien ubicado y fácil de ver, con los submenu desplegables apenas el ratón pasa por encima.

Pantallazo-13

Aqui vemos la captura de GMAIL, donde su menú se encuentra en la parte izquierda.

¿A que vamos con estas capturas?, Pues analizando… la ubicación del menú depende del contenido que vayas a manejar. Si el contenido es de “muchos clicks”, osea una labor de búsqueda o de recorrido de gran parte de una web, se debe manejar el menú a LA DERECHA, esto permite que el usuario no mueva tanto el ratón, permitiéndole así menos tiempo en el sitio, y mucha mas efectividad. Los usuarios quiere todo en el menor tiempo posible.

Ahora si se maneja poca información como lo es una web de una empresa con los datos básicos, debemos manejar el menú a LA IZQUIERDA, por que se supone que la persona visitante va a demorar un poco mas de su tiempo leyendo los clientes… la sección “Quienes somos”, el contacto y otros enlaces de webs “cortas”.

Un ejemplo claro esta en los blogs, la mayoría de sus menús se maneja al lado derecho, hagan la prueba y se darán cuenta que la comodidad que nos ofrece tener ahí nomas la opción de darle click a las noticias de “febrero”, “marzo”, “Últimos post, etc… nos ofrece SATISFACCIÓN al tener todo cerca.

Las redes sociales como twitter y facebook manejan en algunas partes el menú a la derecha, por su gran contenido y enlaces. por que se sabe que los “adictos” a este tipo de web están constantemente haciendo click y si tuvieran que transportar el ratón de lado a lado se cansarían muy fácilmente.

WordPress maneja su menú de el administrador a la izquierda, por que se supone que el tiempo de estadía en una sección sera un poco moderado.

No confundamos el “Sidebar” con el menú, aunque lo puede contener no es lo mismo, la función del sidebar es darle herramientas adicionales al usuario para tanto la navegación o la interacción con el sitio web, un ejemplo ya mencionado es el editor de wordpress.

Pantallazo-14

Si vemos, al lado derecho encontramos las herramientas del editor, este viene siendo el SIDEBAR, y la explicación mas simple es que el menú principal toma un papel como de PROTAGONISTA y el sidebar le dieron el papel de AMIGO DEL PROTAGONISTA, lo cual marca una jerarquía y nos indica que aunque el sidebar es importante, no debe ser lo principal en la interfaz, su función es apoyar a todo el conjunto de elementos, que el usuario sepa que esta ahí pero que no sea lo esencial.

Ahora pasamos a los menús ubicados en la parte de arriba, son buenos cuando se necesita un espacio mayor en la parte de abajo, me explico: Cuando tenemos el sitio de MICROSOFT.COM

Pantallazo-15

identificamos que lo mas importante en este caso es promocionar su “Office Ultimate 2007″ con un valor de $59.95 (Bonito numero 5995) y vemos que el menú pasa a ser el AMIGO DEL PROTAGONISTA y el anuncio pasa a ser el PROTAGONISTA.

Entonces lo primero que ve la persona es el bonito numero $59.95 y dedica unos segundos en la mirada y luego si se ubica y dice: “Bueno, ¿Donde esta lo que yo busco?, ¡Oh! se encuentra en esa barra gris cuya tonalidad es diferente al fondo. voy a pasar mi ratón por esa barra y mientras tanto miro una palabra similar a lo que yo busco, que es ‘El internet explorer 8′”. así que se aprovecha ese espacio de abajo para otro fin.

También… vamos a pasar por: http://alt1040.com

Pantallazo-16

Observamos que el menú esta en la parte superior, ¿Por que?, la explicación es que el blog necesita la ubicación de una publicidad al lado derecho de el titulo y la imagen del articulo, por eso un menú en la parte derecha o izquierda generaría una perdida de espacio, tendría que ser un menú demasiado pequeño y eso por cosas de comodidad seria muy incomodo para el usuario.

Antes de terminar, no olvides que es muy importante que si ubicas el menú en la parte derecha, lo hagas con css, en el código primero debe estar el menú:

<ul>

<li>…

<h2> titulo…</h2>

<p>hola este es un párrafo…

Esto con el fin de que en navegadores de texto, o de pantalla pequeña se pueda ver primero el menú y después si el contenido del sitio web.

Creo que aquí llegamos al final del articulo, es una mini-investigación, y la idea es que ustedes mismos saquen conclusiones y comenten el articulo, no es la ultima palabra sobre el tema por que no existe una regla clara sobre la ubicación, pero lo mas importante es que siempre pienses en la comodidad del que va a probar el producto.

Por ultimo, Tengo ganas de hacer un laboratorio sobre este tema en mi universidad, voy a ver si me lo permiten y si se logra estaré subiendo los resultados aquí. Gracias.





Notas y trucos para Javascript accesibles

11 07 2009

text2405

Hola!, bueno primero que todo vamos a suponer que ya sabemos que es javascript, pero lo que posiblemente no saben es ACCESIBILIDAD, algo que no siempre nos enseñan en la universidad o instituto de educación. La accesibilidad en palabras simples es en la web crear sitios con la posibilidad de que la mayoría de las personas puedan acceder a el, los usuarios mas comunes a los cuales debemos pensar en accesibilidad son:

  • Personas que NO tengan Flash player
  • Que no tengan Javascript Activado
  • Que naveguen desde navegadores de texto
  • Que naveguen desde navegadores moviles
  • Y el mas clásico, Que naveguen desde conexiones lentas.

y muchos dirán: “NOO PERO SI YA ESTAMOS EN CONEXIONES DE  1 GB (Claro no en Colombia :P )”, entonces yo les diria:

  • ¿Y las personas que entran a una red WIFI donde este saturada?
  • ¿Y las personas que entran con “internet 3g”?
  • ¿Y las personas que están bajando Porno Vídeos educativos y su conexión se vuelve lenta?

Así podemos seguir todo el día y buscar muchos factores por lo cual una web en la pc de un usuario normal no abre rápido,  entonces por esas personas debemos hacer javascript accesibles, ya que debemos asegurar que la web abra sin una sola instrucción javascript. Ahora vamos a en listar los puntos básicos para un JS Accesible básico jeje.

  • Enlaces
  • Contenido
  • Animaciones

Listo, preparados….

Enalces:

Los enlaces nos acompañan desde muchos nacieron, y por eso  debemos comprender básicamente su uso que es abrir otra web, esa es su función mas no es la función de … <a href=”abrirnuevaventana(‘hola.php’)”>SSS </a> ¡NOOOOOOOO! PARA ESO NO SE USA, se usan para enlazar , no para usar instrucciones javascript, por que al momento de que el usuario no tenga javascript ese enlace no queda funcionando ni para adornar el sitio web, entonces ¿Como logramos hacer que ese enlace funcione bien?, muy sencillo: El href solo le colocaremos la url o el nombre del archivo que vamos a enlazar, osea “descarga.php” o “http://linux.org”. de esta forma estamos asegurando que todo el mundo abra ese enlace. Pero surge un problema, ¿y como ejecuto la funcion javascript?, sencillo tenemos la propiedad del html que dice “ONCLICK” con la cual quedaría de esta forma: <a href=”descarga.php” onclick =”abrirnuevaventana(‘hola.php’)”>Descarga el archivo/a>. Pero continuamos con las deficiencias, haga la prueba y vera si colocas ese código y lo pones a funcionar de seguro no te ejecuta el código javascript y de una abre la url como si no existiera el javascript, entonces para esto le agregamos la instrucción “return false”, la cual nos evita que se abra el enlace y mejor se ejecute el codigo javascript, quedaria algo asi el codigo: “<a href=”descarga.php” onclick =”abrirnuevaventana(‘hola.php’); return false;”>”.

Algo de lo que me di cuenta es que esta instruccion tiene problemas con el Puto IE7, para lo cual les dejo este enlace donde explican como solucionarlo. http://11heavens.com/IE7-bug-report-onclick-event-handler Con eso ya tienen herramientas para que sus web sean un poquito accesibles en el campo del “NO EXISTE JAVASCRIPT”, Otro punto importante es que los enlaces SOLO SE USAN PARA ABRIR ENLACES, no los use para por ejemplo para que se borren los cajones de un formulario, o para una función javascript que no tenga que ver con enlaces.

Contenido:

Ahora con el ajax, cada vez vemos mas sitios donde la información carga en vivo, así que no podemos depender del ajax para mostrar nuestra información, para lo cual existen (Yo lo digo) y con los cuales tu puedes tener tu contenido disponible con o sin javascript:

  1. Básicamente el desarrollo de una web requiere unos procesos de muchas personas y de tiempo, mas adelante les dejo un enlace sobre eso, para lo cual se debe hacer una planeacion de lo que se quiere, se necesita y lo que tenemos. Así que no podemos llegar a la “loca” y decir: “Metamole esta info aquí  y la cargamos con ajax por que se ve bonito”, ya que si hacemos esto estamos dejando a un lado los navegadores que no funcionan con javascript, por ejemplo miremos “Facebook” y haga el experimento, use o firefox u opera y desactiva el javascript, dale click en la galería de fotos, ¿Te las abre? ¡SI!, Abra los otros enlaces que por lo general cargan con AJAX, ¿Te los abre?, ¡Si!. Ahora veamos el “www.hi5.www” o los que tengan HI5 y verán que si no tiene javascript la mayoría de los enlaces no funcionan, y el contenido se pierde, voy a tomar una captura y les muestro. http://www.twitpic.com/a0iz4 Ahi vemos abajo que el enlace dice:  ”javascript: void(0);” lo cual nos advierte que si no tenemos el Javascript activado pues no mostrara bien la nueva info. entonces en conclusión para este primer punto eso, El contenido debe estar habilitado sin Javascript.
  2. Haga primero en html sin nada de JS (Ya me canse de escribirlo completo), y haga las web interiores sin JS, luego de hacer la web en html, después si insertale el php. y por ultimo el javascript.
  3. Asegúrate que la información inicial no se cargue con javascript.
  4. Ten como prioridad hacer la web inicial sin animaciones, luego las colocas, también ten en cuenta que algunas animaciones pueden ocular información si no esta activado el JS.
  5. Descarga navegadores de texto como Lynx (Linux y windows), abre tu sitio, si puedes ver la totalidad del contenido y los enlaces abren bien, estas haciendo las cosas como son.

Eso lo básico con contenido.

Animaciones:

Las animaciones hacen bonita una web, no es lo mismo una web donde se despliegue la info de forma fea, que una donde aparezcan “GLOBOS” de información o que no tenga una galería de fotos donde se muevan de forma bonita. así que use esas animaciones pero sin saturar la web, recuerda que el javascript también consume recursos en la pc del navegante. ademas las librerías de animaciones ya vienen con puntos básicos de accesibilidad, como lo son Moo, Prototype, $fx y unas cuantas por ahi. Procura usarlas, no te pongas a desarrollar las animaciones tu mismo, ya que con la filosofía del “Código libre” nos ahorrara mucho tiempo en el desarrollo de aplicaciones o webs.

Esas son las anotaciones básicas para una web “accesible” básica, pueden consultar mucho mas en internet, ya que no soy el experto, pero tampoco es necesario serlo para pensar un poquito en el usuario, ten siempre en cuenta el usuario como prioridad, y póngase en el lugar de no saber nada y ensaye cosas comunes y así miraras errores en tu web.

¡Chau! Ahh y sobre el enlace, les recomiendo http://webparahumanos.wordpress.com/ que es el blog de  @maocandamil y habla sobre “usabilidad” y los procesos que se están haciendo para la nueva versión de la web de la Universidad Del Cauca. muy recomendado.





Como nombrar correctamente los divs y las clases

10 02 2008

Cuando estas trabajando con paginas pequeñas, no tienes muchos problemas con los nombres, pero un error que uno comete generalmente es el de nombrar las clases y los objetos con cosas que uno esta pensando, entonces por ejemplo “.claudia”, “#careperro” y así cosas así. pero no eso no es lo correcto.

lo correcto es crear nombres relacionados a la posición, función y contenedores… osea si el div que vamos a crear esta dentro de un div llamado CABEZOTE, y su función es contener el logo, entonces quedaría algo así:

#cabezote_logo{
}

Ves.. es algo mas organizado, esto que nos permite, que a la hora de ubicarnos y buscar un div en especificio, lo encontraremos en menor tiempo que si estan nombrados al azar.

Recuerda no dejar espacios, pues estos le dan una orden especial al navegador que después veremos.





Imagenes y accesibilidad

1 02 2008

Foto sin text

cuando usas imágenes en un documento html, es necesario que coloques una descripción de ella, esto permite que cuando no cargue la imagen se pueda ver de que trata, ademas cuando visite una persona tu web con un navegador de texto, como lo hacen los invidentes… pueda este leer el contenido tranquilamente.

Ademas de esto, esta demostrado que Google te indexa mejor, son truquitos que se van aprendiendo a lo largo de la vida :P vamos a ver un ejemplo:

Pead

ahí vemos una serie de imágenes, ahora vamos a deshabilitarla con opera.

pead sin imagenes

Esta captura nos sirve para también mostrarles lo del anterior post, donde hablaba de la importancia del color de fondo cuando se usa imágenes de fondo, aquí vemos que el texto y la información es totalmente visible, también observamos que al quitar las imágenes, aparecen textos que representan esas imágenes que no están… eso es bueno ya que por ejemplo si tenemos un sitio personal y esta la foto de toda la familia y en el caso que no cargue, aparecerá el nombre de cada uno de los integrantes…. esto se logra de la siguiente manera:

En dreamweaver en modo gráfico seria algo así:

Dreamweaver propiedades

donde dice ALT ahí, se coloca el texto descriptivo, tiene que ser lo mas explicativo posible. tampoco FOTO CON ARBOLES MUY HERMOSOS naaa tampoco, pero si por ejemplo foto con PEDRITO, JUANITO, MARCELA, ANDREA, ANDRES EN EL DIA DE EL AMOR Y LA AMISTAD.

Esa es una forma, si tu trabajas con el código directamente pues ya te muestro como se hace :P

<img src=“img/ojos_bonitos.jpg” alt=“Foto de articulo” />

alt=“Foto de articulo” es el texto que se debe insertar, para colocar la descripción de la imagen. practiquen y me comentan.





La importancia del color de fondo (accesibilidad)

18 01 2008

Accesible

El color de fondo es muy importante, dado que no todo el mundo tiene velocidades de conexión altas como la banda ancha, sino que aun se conectan por modem.

Si nosotros planteamos un diseño con imágenes de fondo, debemos necesariamente colocarle un fondo de color por ejemplo de tipo #FFFFFF, por que esto nos permite que en el caso que no carguen las imágenes pueda el usuario visualizar la información ó enterarse de una previsualizacion del sitio. Ejemplo:

con_fondo

ese es el administrador de proyectos en el que e estado trabajando estos últimos 12 días, ahí podemos ver la interfaz… que maneja varias imágenes, esto el da un aspecto “bonito :P ” creo yo. Ahora vamos a quitarle las imágenes para ver como se visualiza.

sin_fondo

:O si notamos se pierden las imágenes, pero el texto sigue totalmente legible, esto es importante en una web y en una aplicación de internet, por que mientras cargan las imágenes, aparece el color de fondo y esto a vos te da un tiempo extra. SI! un tiempo extra, por que el usuario no necesita que cargue la web completamente para poder comenzar a leer, escribir o navegar sobre la web creada.

 Si aun no sabes como colocar un fondo como imagen, ó si ya sabes y no sabes como colocarle el color a continuacion con un minitutorial te explicare.

Primero crea la clase:
.clase_fondo1{
}

Ahora, dentro de ella declara la propiedad BACKGROUND, de esta forma:
background:url(‘../img/fondo.png’);
Algunas personas dicen que debe ir sin las comillas, por que en el ie para mac crea problemas cuando tiene comillas, pero pues a mi me gusta con comillas, asi que vamos a colocarlo asi :P :

entonces el codigo quedaria asi:

.clase_fondo1{
      background:url(‘../img/fondo.png’);
}

Ya tenemos declarada la propiedad con la url de fondo, recorda que la direccion de ubicacion es relativa segun el directorio del archivo css. ahora vamos a colocarle un fondo, por ejemplo un color negro.

.clase_fondo1{
      background:url(‘../img/fondo.png’) #000000;
}

si ves, le agregue el codigo de la imagen despues de la declaracion del fondo, recuerda dejar espacio para que el IE en windows no te cree problemas.

y listo!.