¿Has tenido alguna vez ese sentimiento terrible cuando te das cuenta – sólo un fragmento de segundo demasiado tarde – de que no deberías haber cliqueado “OK” en el diálogo “¿Está seguro de que desea terminar?”?

¿Sí? Bueno, estás en buena compañía – todo el mundo ha tenido una experiencia similar así que no hay necesidad de sentirse avergonzado por ello. No es tu culpa: es culpa de tu software.

caida al vacio

¿Por qué? Porque el software debería “saber” que formamos hábitos. El software debería saber que después de hacer clic en “OK” incontables veces en respuesta a una pregunta, probablemente también haremos clic en “OK” esta vez, incluso si no queríamos hacerlo. El software debería saber que no tendremos la oportunidad de pensar antes de desechar nuestro trabajo en forma accidental.

¿Por qué debería saber estas cosas? Porque los diseñadores de software deberían saber que formamos hábitos, querámoslo o no.

La formación de hábitos es realmente algo bueno: nos ahorra el problema de tener que pensar cuando nos enfrentamos a banalidades de interfaz y disminuye la probabilidad de que nuestro tren de pensamiento se descarrile. En el caso del diálogo “¿Está seguro de que desea terminar?”, nuestras manos han memorizado cerrar-y-hacer-clic como un gesto continuo individual. Eso es bueno, porque la mayoría de las veces no queremos pensar en la pregunta – sólo queremos hacer lo correcto. Desafortunadamente, nuestros hábitos a veces nos hacen hacer lo incorrecto: ni siquiera tenemos tiempo de darnos cuenta de nuestro error hasta después de haberlo cometido.

Así que, como diseñadores somos llevados a un principio general de interfaz: Si una interfaz va a ser humana, debe respetar la habituación.

Soluciones posibles

¿Qué tal si se hace la advertencia más difícil de ignorar? Una advertencia sutil no será tomada en cuenta, así que usaremos todas las trabas: haremos pestañear la pantalla y que suene un fuerte sonido estridente para asegurarnos de que el usuario está prestando atención. Y aunque lo intentemos, eso todavía no funcionará. A medida que la advertencia esté más en nuestras narices, más rápido querremos alejarnos de ella (al hacer clic en “OK”) y más errores cometeremos. La cosa es, no importa qué tan en nuestras narices nos presente el computador la advertencia, aún cometeremos el mismo error – hacer clic en “OK” cuando no queríamos. Pero sigue sin ser nuestra culpa: mientras sea posible habituarse a ignorar el mensaje, nos habituaremos, y entonces cometeremos errores.

¿Qué tal si se hace la advertencia imposible de ignorar? Si es la habituación en el lado humano lo que está causando el problema, ¿por qué no diseñar la interfaz de manera que no podamos formar un hábito? De esa manera siempre estaremos forzados a detenernos y pensar antes de responder la pregunta, así que siempre escogeremos la respuesta que queremos. Eso resolvería el problema, ¿cierto?

Este tipo de pensamiento no es nuevo: Es el acercamiento del tipo “escriba la palabra número x de esta frase para continuar”. En el juego Guild Wars, por ejemplo, borrar un personaje requiere hacer clic primero en un botón de “borrar” y luego escribir el nombre del personaje como confirmación. Desafortunadamente, no funciona siempre. En particular:

  • 1. Causa que nos concentremos en la tarea inhabitual del momento y no en si deseamos desechar nuestro trabajo. Así, la advertencia imposible de ignorar es apenas mejor que una advertencia normal: Terminamos perdiendo nuestro trabajo de todas maneras. Esto (perder nuestro trabajo) es el peor pecado posible de un software.
  • 2. Es remarcadamente molesto, y debido a que siempre requiere nuestra atención, necesariamente nos distrae de nuestro trabajo (lo cual es el segundo peor pecado de un software).
  • 3. Siempre es más lento y causa más trabajo que una advertencia estándar. Así, comete el tercer peor pecado – requerir más trabajo nuestro del que es necesario.

En el ejemplo de Guild Wars, los puntos dos y tres no son particularmente aplicables, porque borrar un personaje es una acción poco frecuente. Sin embargo, si tuviéramos que escribir el nombre de un documento antes de que se nos permita salir de él sin guardarlo, lo encontraríamos muy trabajoso.

¿Qué hemos aprendido? Que las interfaces que no respetan la habituación son muy malas. Hacer la advertencia más grande, ruidosa, e imposible de ignorar no parece funcionar; de cualquier forma que lo miremos, las advertencias nos llevan a un gran y oscuro pozo de interfaz. Así que deshagámonos de la advertencia en su totalidad.

Deshacer al rescate

Tan sólo remover las advertencias no libera a nuestro trabajo del riesgo, pero usar una función de “deshacer” lo hace. Permíteme decirlo nuevamente: La solución a nuestras miserias con las advertencias es deshacer. Con un deshacer robusto, podemos cerrar nuestro trabajo con temerario abandono y estar seguros en el conocimiento de que siempre podremos recuperarlo. Con deshacer, podemos hacer que ese horrible sentimiento de “¡ups!” se vaya al recuperar nuestro trabajo. [1]

Debido a que formamos hábitos, nunca podremos garantizar que no tendremos un momento “¡ups!”. En vez de eso, los diseñadores deben aceptar que eso ocurrirá y diseñar de acuerdo a ello. Cada vez que tengamos la oportunidad de desechar trabajo, el computador nos debe permitir deshacer nuestras acciones.

Esto nos lleva a una de las mantras más básicas e importantes del diseño de interfaz: Nunca uses una advertencia cuando te refieras a deshacer.

Google Mail es un ejemplo sobresaliente de esta mantra. Cuando borras un e-mail, inmediatamente te da una opción para deshacer esa acción. ¡Qué humano! Esto evade limpiamente el tema de las advertencias (así como el tema de la visibilidad de la opción de deshacer). Cuando cometemos un error (lo cual estamos destinados a hacer) no es algo demasiado costoso porque simplemente podemos deshacerlo. Con deshacer, pasamos menos tiempo preocupándonos y más tiempo haciendo nuestro trabajo.

gmail undo

Fig.1. No es demasiado tarde. Gmail le da a los usuarios la opción de deshacer sus mensajes borrados.

Por supuesto que esto es sólo una capa de deshacer – y Gmail va incluso más lejos. Después de que borras un mensaje, no se pierde para siempre… permanece en el basurero para que puedas recuperarlo si decides después que en realidad no querías borrarlo.

Lamentablemente, esta es una lección que Google Calendar no ha aprendido aún. Y, como se predijo, he borrado eventos que en realidad no quería. A veces he borrado el evento equivocado, lo cual es particularmente malo porque entonces ni siquiera sé qué es lo que he borrado. Sin deshacer, no hay manera de averiguarlo.

google calendar

Fig. 2. ¡Ten cuidado! Google Calendar no le permite a los usuarios deshacer sus borrados accidentales.

En realidad, ni siquiera Google Mail ha comprendido completamente la lección. Cuando remueves una etiqueta de Gmail, aparece una de esas odiadas advertencias. ¿Por qué Google puede hacerlo tan bien en un lugar, y unos cuantos clics más adelante hacerlo tan mal? Quizás porque el “pensamiento de advertencia” está tan arraigado que requiere un esfuerzo heroico librarse de él. Incluso las compañías que generalmente son bastiones del buen diseño, como 37 Signals, hacen esto derechamente mal.

warning

Fig.3. La aplicación de 37 Signals, Highrise, provee advertencias pero no la opción de deshacer.

Usar una advertencia en lugar de una opción de deshacer es el camino de menos resistencia desde el punto de vista de un programador, y no requiere ningún nuevo pensamiento desde el punto de vista de un diseñador. Pero eso no es una excusa para que nuestros computadores sean inhumanos.

Conclusión

Las advertencias causan que perdamos nuestro trabajo, desconfiemos de nuestros computadores, y nos culpemos a nosotros mismos. Una metodología de diseño simple pero a prueba de tontos resuelve el problema: “Nunca uses una advertencia cuando te refieras a deshacer”. Y cuando un usuario está borrando su trabajo, siempre te refieres a deshacer.

Oh, y la próxima vez que veas que se usa una advertencia en lugar de la opción de deshacer, envíale al diseñador de la aplicación / sitio web un simpático e-mail sugiriendo que implementen una característica de “deshacer” en su lugar. Envíale un enlace a este artículo. Veamos si podemos cambiar la manera en que la gente diseña en la web – y en el proceso hacer que la vida computacional de todos sea más humana y menos frustrante en una manera pequeña. ¡Que comience la guerra de las advertencias!

NOTAS
[1] La idea del factor “¡ups!” salió de una conversación con Laura Creighton.

Acerca del Autor
Aza dio su primera charla sobre interfaz de usuario a la edad de 10 años en la sede local de SIGCHI en San Francisco y quedó enganchado. A los 17, estaba dando charlas y era consultor internacional; a los 19, fue co-autor de un libro de física porque era demasiado joven para comprar alcohol; a los 21, comenzó a beber alcohol y co-fundó Humanized. Aza disfruta tocar el Corno Francés y rondar en su laboratorio cuando el tiempo lo permite.