Aprender a enseñar… con propósito

Recientemente he terminado el taller Aprender a Enseñar de La Nave Nodriza facilitado por Marina Lorenzo y Ana Carrascosa de Materia Prima. Mi motivación principal para hacer este curso era el de conseguir, a través de la formación, transformar la manera en la que comparto conocimiento y adecuarla a la audiencia para que tenga valor. Sin embargo, me he encontrado con mucho más.

La buena formación se diseña para la audiencia

El principio es sencillo: el objetivo es que el alumnado aprenda algo que le transcienda. Tan ‘sencillo’ como cualquier otro principio del diseño centrado en el usuario: poner a las personas en el centro del proceso, diseñar productos que las personas deseen usar, encuentren útiles, usables, vivenciales.

Una buena sesión de formación, al igual que un buen producto digital, debe ser diseñada pensando en las personas a las que va dirigida. Partiendo de sus necesidades, sus expectativas, su conocimiento previo y su contexto (y en este contexto intervienen muchos factores).

Pero hay otra cosa mucho más interesante: el grupo. El aprendizaje que se produce en adultos (andragogía) no depende de las facilitadoras únicamente ni se transmite en una única dirección. El trabajo colectivo, la observación, la interactividad con otras personas es fundamental.

El poder del lenguaje, el marco teórico y metodológico, el entendimiento de las fases del aprendizaje grupal y la definición correcta de objetivos realistas, alcanzables y ¡medibles! son parte de este proceso de diseño.

Read more

Ciencia de Datos y Experiencia de Usuario

La ciencia de datos no es algo en lo que una persona pueda especializarse en poco tiempo y es, sin embargo, una de las carreras más tendenciosas de los últimos cinco años. Si éste es un perfil profesional único como el de Experiencia de Usuario (UX) el tiempo lo dirá. Han pasado ya veintiocho años desde que Don Norman se llamara a sí mismo ‘User Experience Architect’ y al menos cincuenta desde que se hablara de la Interacción Persona-Ordenador.

Pero ¿cuál es la relación entre estas dos profesiones? ¿debe un especialista en UX saber algo sobre ciencia de datos? ¿debe un diseñador aprender a programar?

En este artículo me gustaría explicar por qué creo que es importante entender qué es la ciencia de datos y cómo puede aprovecharse desde el diseño de experiencias.

Cuantificando la Experiencia de Usuario

Si ya es difícil diseñar experiencias más de uno pensará que es casi imposible cuantificarla. Si bien no todos los factores que influyen en la interacción y la experiencia con el producto final pueden ser medibles, existen multitud de datos relacionados con la misma que pueden recogerse y analizarse para guiar el proceso de diseño:

  • Datos descriptivos de los usuarios (datos demográficos o tecnología que usan).
  • Datos de actividad y comportamiento (contenido que visitan, búsquedas, interacciones, tiempo que dedican…).
  • Conversión de objetivos.
  • Datos sobre la ejecución de tareas específicas (éxito de la tarea, duración, eficiencia, errores, satisfacción, aprendizaje).

Hasta ahora, todos estos datos los hemos venido interpretando de forma puntual y aislada buscando dar respuesta a algunas de las preguntas más importantes que nos hacemos durante el proceso:

  • ¿Cómo son nuestros usuarios? ¿cómo han llegado hasta mi producto?
  • ¿Qué necesidades de información tienen? ¿cómo interactúan para conseguirla?
  • ¿Han realizado determinada acción?
  • ¿Qué contenido funciona mejor que otro?
  • ¿Consideran que el producto es usable?

Read more

Ebury Chameleon, más que un sistema de diseño

En Ebury hace un año teníamos un desafío con uno de nuestros productos digitales más importantes:

¿Cómo podemos acompañar el crecimiento de un producto de éxito pero que requería con urgencia una estrategia para afrontar la deuda de diseño y tecnológica que arrastraba?

Para nosotros Ebury Chameleon representa gran parte de esa estrategia tal y como explicamos en el post recientemente publicado en nuestro blog. Ebury Chameleon es más que un ejemplo de sistema de diseño, es la definición de un sistema de componentes CSS sobre el que construimos nuestra interfaz y sobre la que definimos modelos de interacción y navegación. Es además, la filosofía que nos hace plantearnos decisiones importantes como:

  • Qué elementos deben ser reutilizables.
  • Qué grado de uniformidad y consistencia tenemos que alcanzar.
  • Cómo representamos la información en cada sección.
  • Cómo consiguen los usuarios realizar una actividad concreta.
  • Cómo podemos implementar cambios de forma poco intrusiva pero con mayor impacto.

Si quieres saber más sobre cómo hemos construido este Design System, puedes leernos en “Ebury Chameleon as an example of a Design System“.

 

Reinventando los ‘formularios’ de registro

Daily UI Design Challenge es una suscripción de correo que te envía a tu buzón un reto de diseño cada día durante 100 días. Personalmente no creo que pueda seguir el ritmo, pero sentí curiosidad por saber qué es lo primero que mandarían y he aquí el reto: Diseñar un formulario de registro.

Sign-up Forms

A mí me gustaría darle una vuelta a este reto y re-imaginar otra vez los formularios de registro por varias razones:

  • Los encuentro contra intuitivos: no existe una necesidad de identificarse sino de ser identificados
  • A los usuarios no les gusta dar sus datos una y otra vez para acceder a los servicios de una web

Read more

Retrospectiva

Hace un año cambié de trabajo. Buscaba fundamentalmente dos cosas esenciales para mí:

  • Un buen proyecto con vida
  • Un buen ambiente de trabajo

Un buen proyecto

En mis anteriores años como diseñadora he pasado demasiado tiempo creando ‘conceptos’ que nunca terminaban viendo la luz. No se vendían, se cancelaban a mitad de desarrollo, nacían muertos, no terminaban, no se implantaban de forma adecuada… A pesar del rodaje y de lo mucho, muchísimo, que se aprende en esas circunstancias necesitaba recuperar el contacto con el mundo real, ése en el que tu trabajo impacta en la vida de un producto digital, en el que tus errores y tus éxitos tienen consecuencias y en el que se puede ver el valor de cada decisión.

Empezar a trabajar en un servicio online me ha dado la posibilidad de:

  • Tomar mejores decisiones en base a datos de analítica web
  • Experimentar con métricas de UX para medir la adopción de nuevos diseños
  • Asumir las consecuencias de una mala decisión y rectificar
  • Establecer un modelo de trabajo y un proceso de diseño que se ajuste mejor a un entorno de despliegue contínuo
  • Integrarme en un equipo de desarrollo bien engranado con la menor fricción posible
  • Disfrutar del resultado en equipo y del impacto que tiene el diseño y el desarrollo en el propio negocio
  • Hacer más ingeniería del software de la que me imaginaba

Evidentemente hay cosas que no he podido conseguir aún y que me gustaría conseguir este año:

  • Mejorar la consistencia total de la interfaz de usuario y las comunicaciones con los clientes
  • Eliminar todos los elementos excesivos del diseño
  • Homogeneizar la navegación y los patrones de interacción
  • Aumentar el nivel de detalle y excelencia visual
  • Aumentar la satisfacción de los usuarios en su experiencia global con los productos y servicios digitales
  • Crear una plataforma totalmente flexible para que se adapte mejor al flujo de trabajo de cada usuario

Un buen ambiente

El segundo aspecto era igualmente importante ya que en la anterior empresa en la que estuve, pasada la euforia startupera y la motivación por la belleza de un producto tecnológico intelectualmente desafiante, la oficina se convirtió para mí en un lugar anodino, aburrido y tóxico. No puedo culpar ni exculparme. Los egos chocaban, no se tomaban (buenas) decisiones y no se veían los frutos por ningún sitio. Cuando esas circunstancias se dan lo mejor que se puede hacer es usar la poca energía que queda y marcharse con la lección aprendida, en lugar de resistir hasta el agotamiento (si las circunstancias personales te lo permiten claro).

Pero he tenido mucha suerte y quiero pensar que he trabajado para progresar. Cambiar de empresa, de cultura y de oficina es una apuesta muy fuerte que se hace con muy poca información (a penas alguna recomendación de trabajadores que conozcas y lo que captes durante el proceso de selección). Aunque en realidad el aspecto más desafiante es mantener y contribuir al ‘buen ambiente’ ante cualquier circunstancia.

 

Hace un año me propuse hacer retrospectiva como forma de disfrutar de los éxitos profesionales conseguidos y entender bien qué cosas me estoy dejando a medio camino o en tierra de nadie. Hoy ha pasado un año desde que dije adiós a la firma ITRS, y decidí apostar por la fintech Ebury. No puedo estar más satisfecha de este año e ilusionada por lo que queda por delante, espero que sigan confiando en mí porque aún no he terminado con este proyecto 🙂

(echo echo) echo (echo): Poética de la línea de comandos

Me gustaría un texto que encontré hace tiempo y me pareció precioso. Desgraciadamente la web donde lo leí lleva caída mucho tiempo y sólo he podido rescatarlo dese archive.org. Ojalá lo hubiera escrito yo, pero no 🙂 el autor original es Florian Cramer y está traducido por Kamen Nedev (trad.)  – 2007 – CC-BY-NC-SA (espero que os guste tanto como a mí)

 

Diseño

La mayoría de los argumentos a favor del uso de la línea de comandos frente al uso de la interfaz gráfica de usuario (GUI) están lastrados por un platonismo de administrador de sistemas. Una instrucción como «cp test.txt /mnt/disk» no está, en realidad, ni un milímetro más cerca de una hipotética «verdad» de la máquina que arrastrar un icono del archivo.txt con el ratón al símbolo de un disco duro montado. Y, aunque estuviera más cerca de la «verdad» ¿qué ganaríamos con ello?

La línea de comandos es, de por sí, una interfaz de usuario tan abstraída del kernel del sistema operativo como lo es la GUI. Mientras que el aspecto y usabilidad de «escritorio» de la IGU emula objetos de la vida real de un entorno de oficina analógico, la línea de comandos de Unix, BSD, Linux/GNU y Max OS X emula las máquinas de teletipo que servían como terminales de usuario en los primeros ordenadores Unix de principios de los 70. Este legado sigue vivo en la terminología de la «terminal virtual», y el archivo de dispositivo /dev/tty (de «teletipo») en sistemas operativos compatibles con Unix. Por tanto, tanto el uso de entornos gráficos como el de la línea de comandos son medios; capas de mediación en el bucle de retroalimentación cibernético entre humanos y máquinas, y pruebas de la veracidad de la afirmación de McLuhan de que el contenido de un nuevo medio es siempre un medio antiguo.

Ambas interfaces de usuario fueron diseñadas con objetivos diferentes: en el caso del teletipo de la línea de comandos, el de minimizar el esfuerzo y el gasto de papel, mientras que en el caso de la GUI fue el uso de analogías – en un caso ideal – autoexplicativas. La minimización de escritura y gasto de papel tenía la intención de evitar la redundancia, manteniendo la sintaxis y la respuesta de las instrucciones lo más sucintas y eficaces posibles. Por eso «cp» no se escribe «copy», «/usr/bin» no es «/Unix Special Resources/Binaries», y por eso también el resultado de la instrucción de copiar recibe como respuesta una línea en blanco, y por eso la instrucción puede repetirse simplemente pulsando la flecha hacia arriba y el retorno, o por qué volver a escribir «/mnt/disk» se puede evitar escribiendo simplemente «!$».

A su vez, la GUI reinventa el paradigma de los lenguajes universales de signos pictóricos, ideados por primera vez en las utopías educativas del Renacimiento, desde la Ciudad del Sol de Tommaso Campanella hasta el libro escolar ilustrado «Orbis Pictus» de Jan Amos Comenius. Los objetivos de sus diseños eran similares: «usabilidad», operación autoexplicativa a través de diferentes lenguas y culturas humanas, si es necesario a costa de la complejidad o la eficacia. En la operación de copiar un archivo, el acto de arrastrar es, en sentido estricto, redundante. Al significar nada más que la transferencia de «a» a «b», consigue exactamente lo mismo que el espacio entre las palabras – o, en términos técnicos: los argumentos – «test.txt» y «/mnt/disk», pero requiere una operación táctil mucho más complicada que pulsar la barra de espacio. Esta complicación es intencional, ya que la operación simula el común acto de arrastrar un objeto de la vida real a otro sitio. Pero, aun así, la analogía no es completamente intuitiva: en la vida real, arrastrar un objeto no lo copia. Y, con la evolución de las GUI desde Xerox Parc a través del primer Macintosh hacia paradigmas más contemporáneos de barras de herramientas, múltiples escritorios, integración con el navegador web, uno ya no puede sentar un analfabeto digital delante de una GUI y decirle que piense en ella como si fuera un escritorio de la vida real. Al margen de lo acertado de esta clase de analogías, el uso de la GUI es una técnica cultural tan construida y aprendida como lo es escribir instrucciones.

Por tanto, las categorías platónicas de la verdad no pueden evitarse del todo. Si bien la interfaz de línea de comandos también es una simulación – en concreto, la de una conversación telegráfica – sus expresiones alfanuméricas se traducen mucho más fácilmente en la operación numérica del ordenador, y viceversa. El lenguaje escrito puede usarse mucho más fácilmente para usar los ordenadores para aquello para lo que fueron construidos, para automatizar tareas de formateo: la operación «cp .txt /mnt/disk», que copia no sólo uno, sino todos los archivos de texto de un directorio a un disco montado sólo puede replicarse en una IGU encontrando, seleccionando y copiando a mano todos los archivos de texto, o usando una función de búsqueda o una función de script como una herramienta añadida. La extensión de la instrucción «for file in ; do cp $file $file.bak; done» no puede replicarse en una IGU a no ser que esta función haya sido ya programada en ella. En la línea de comandos, «usar» se extiende naturalmente a «programar».

En una perspectiva más amplia, esto quiere decir que las aplicaciones GUI son, típicamente, simulaciones directas de una herramienta analógica: el procesamiento de textos emula las máquinas de escribir, Photoshop el cuarto oscuro de un laboratorio fotográfico, el software de publicación digital una mesa de maquetación, los editores de vídeo un estudio de vídeo, etc. El software sigue anclado en una escaleta de tareas tradicional. Las herramientas equivalentes en la línea de comados – por ejemplo: sed, grep, awk, sort, wc para el procesamiento de textos, ImageMagick para la manipulación de imágenes, groff, TeX, o XML para la maquetación de documentos, ffmpeg o MLT para el procesamiento de vídeo – transforman el proceso de trabajo tradicional de la misma manera que «cp *.txt» transforma el concepto de copiar un documento. El diseñador Michael Murtaugh, por ejemplo, usa herramientas de línea de comandos para extraer automáticamente imágenes de una colección de archivos de vídeo para generar galerías o composites, un concepto que, sencillamente, excede el paradigma de un editor gráfico de vídeo, con su concepto predeterminado de qué supone la edición de vídeo.

Las implicaciones de esto llegan mucho más lejos de lo que pueda parecer a primera vista. La interfaz de línea de comandos provee funciones, no aplicaciones; métodos, no soluciones, o: nada más que un montón de plug-ins para ser promiscuamente enchufados unos en otros. La aplicación puede construirse, y la solución puede ser inventanda, por los propios usuarios. No es una interfaz empaquetada, o, – tomando prestados los términos de Roland Barthes – una interfaz «legible», sino «escribible». Según la distinción que hace Barthes entre literatura realista frente a literatura experimental, el texto legible se presenta lineal, compuesto suavemente, «como una despensa donde se guardan los significados, apilados, a salvo». 1 En cambio, al reflejar la «pluralidad de puntos de entrada, la apertura de redes, la infinidad de lenguajes» 2, el texto escribible intenta «convertir al lector no en consumidor, sino en productor del texto». 3 Además de la caracterización que hace Umberto Eco de la línea de comandos como una interfaz iconoclásticamente «protestante», y la GUI como idolátricamente «católica», la GUI podría calificarse como Tolstoi, o como Toni Morrison, y la línea de comandos como Gertrude Stein, «Finnegans Wake», o la poesía L.A.N.G.U.A.G.E. de las interfaces informáticas. O, también, el paradigma Lego de un juguete auto-definido frente al paradigma Playmobil de un juguete predefinido.

La ironía está en que el paradigma Lego había sido el objetivo de diseño inicial de Alan Kay para la interfaz gráfica de usuario en Xerox PARC en los años 70. Basado en el lenguaje de programación Smalltalk, y haciendo uso de la programación orientada a objetos, aquella GUI debía permitir a los usuarios conectar sus propias aplicaciones a partir de módulos preexistentes. En sus formas populares en Mac OS, Windows, o KDE/Gnome/XFCE, las GUI nunca cumplieron esa promesa, y en cambio reforzaron la división entre usuarios y desarrolladores. Incluso excepciones marginales del propio sistema de Kay – que sigue vivo en el proyecto «Squeak», y los entornos de programación multimedia gráficos de Miller Puckette «Max» y «Pure Data» manifiestan la limitación de las GUI para operar también como interfaces de programación gráfica, ya que ambos siguen requiriendo programación textual a nivel de la sintaxis base. En términos de programación, la GUI refuerza la separación entre la UI (la interfaz de usuario), y la API (la interfaz de programación de aplicaciones), mientras que en la línea de comandos, la propia UI es la API. Alan Kay reconoce que «no sería sorprendente que el sistema visual fuese menos capaz en este área [el de la programación] que el mecanismo que resuelve oraciones sustantivas en el lenguaje natural. Aunque no sería justo decir que los ‘lenguajes basados en iconos no funcionan’ sólo porque nadie haya sido capaz de diseñar uno bueno, es probable que la explicación anterior esté cerca de la verdad». 4

 

Mutant

 CORE CORE bash bash CORE bash

 There are %d possibilities.  Do you really  
 wish to see them all? (y or n)

 SECONDS  
 SECONDS

 grep hurt mm grep terr mm grep these mm grep eyes grep eyes mm grep hands  
 mm grep terr mm > zz grep hurt mm >> zz grep nobody mm >> zz grep  
 important mm >> zz grep terror mm > z grep hurt mm >> zz grep these mm >>  
 zz grep sexy mm >> zz grep eyes mm >> zz grep terror mm > zz grep hurt mm  
 >> zz grep these mm >> zz grep sexy mm >> zz grep eyes mm >> zz grep sexy  
 mm >> zz grep hurt mm >> zz grep eyes mm grep hurt mm grep hands mm grep  
 terr mm > zz grep these mm >> zz grep nobody mm >> zz prof!

 if [ "x`tput kbs`" != "x" ]; then # We can't do this with "dumb" terminal  
 stty erase `tput kbs`

 DYNAMIC LINKER BUG!!!

Codework de Alan Sondheim, enviado a la lista de correo «arc.hive» el 21 de julio de 2002

En una terminal, las instrucciones y los datos pasan a ser intercambiables. En la instrucción «echo date», «date» es el texto, o datos, que tiene que aparecer como resultado de la instrucción «echo». Pero si el resultado se vuelve a enviar al procesador de la línea de comandos (también conocido como shell) – «echo date -sh» – «date» se ejecuta como una instrucción en sí. Esto quiere decir: se pueden construir instrucciones de líneas de comandos que mezclan datos introducidos, texto, en nuevas instrucciones para ejecutarlas. Al contrario que en las GUI, hay recursividad en las interfaces de usuarios: las instrucciones pueden procesarse a sí mismas. Photoshop, en cambio, puede manipular sus propios diálogos gráficos, pero no puede después ejecutar estas mutaciones. Tal y como dice el programador y administrador de sistemas Thomas Scoville en su artículo de 1998 «The Elements of Style: UNIX As Literature», «Las herramientas de sistema de UNIX son como un kit de Lego para escritores. Tubos y filtros conectan una utilidad a la siguiente, y el texto fluye, invisible, entre ellas. Trabajar con una shell, con derivados de awk o lex, o con la herramienta set, es literalmente como bailar con palabras.» 6

En el net.art, «OSS» de jodi es lo más cercano a una hipotética GUI que se devora a sí misma, manipulando con Photoshop sus propios diálogos. El entorno de la línea de comandos de Unix/Linux/GNU es exactamente eso: un procesador de texto gigante en el que cada función – buscar, reemplazar, contar palabras, ordenar líneas – ha sido externalizada a un pequeño programa, cada uno representado por una instrucción de una sola palabra; palabras que pueden procesar palabras tanto como datos [correo electrónico, documentos de texto, páginas web, archivos de configuración, manuales de software, código fuente, por ejemplo] como las palabras en sí. Y, para más «shocks» culturales para la gente que no está acostumbrada a ella: con SSH o Telnet, cada línea de comandos pasa a ser «transparente a la red», esto es, cada instrucción puede ejecutarse tanto localmente como remotamente. «echo date – ssh user@somewhere.org» construye la instrucción en la máquina local, la ejecuta en la máquina remota somewhere.org, pero devuelve el resultado otra vez en la terminal local. Instrucciones y datos no solamente pueden mutar unos en otros, sino que instrucciones y datos en máquinas locales se pueden mezclar con los de máquinas remotas. El hecho de que ARPA – y, más tarde, Internet – fuera diseñado para computación distribuida se hace tangible a nivel microscópico en el espacio entre palabras, de una manera mucho más radical que en paradigmas monolíticos como «subir», o «aplicaciones web».

Con su hibridación de código y datos locales y remotos, la línea de comandos es el sueño húmedo de un poeta electrónico, «codewoker» o net.artista ASCII hecho realidad. Entre las «constricciones» poéticas inventadas por el grupo OULIPO, aquellas que son puramente sintácticas se pueden reproducir fácilmente en la línea de comandos. «POE», un programa diseñado a principios de los 90 por los poetas experimentales austriacos Franz Josef Czernin y Ferdinand Schmatz para asistir a los poetas con el análisis y construcción lingüísticos, acabó siendo, sin ninguna intención, una herramienta de texto Unix para DOS. En 1997, el poeta underground norteamericano ficus strangulensis hizo un llamamiento para la creación de un «sintetizador de texto», que es lo que la línea de comandos Unix realmente es. Por tanto, la «netwurker» mez breeze apunta, como principales influencias culturales en su trabajo net.poético «mezangelle» a «#unix [shelled + otherwise]», junto a «#LaTeX [+ LaTeX2e]», «#perl», «#python» and «#el concepto de ARGS [con un potencial todavía por realizar]». 7 En la dirección contraria, desarrolladores de C obfuscado, poetas Perl y hackers como jaromil han mutado sus programas en net.poesía experimental.

Las mutaciones y recursiones en la línea de comandos ni son una coincidencia, ni son agujeros de seguridad, sino herramientas que los administradores de sistemas necesitan a diario. Tal y como dice Richard Stallman, fundador del proyecto GNU y primer desarrollador de los programas de línea de comandos GNU, «es un poco paradójico que puedas conseguir definir algo en términos de sí mismo, que esa definición tenga sentido. […] El hecho de que […] puedas definir en términos de sí mismo y definirlo bien así, esa es una parte fundamental de la programación.» 8

Cuando, como observa Thomas Scoville, el vocabulario de instrucción y sintaxis como la de Unix pasa a ser «algo natural», 9 también se convierte en lenguaje conversacional, y la sintaxis se convierte en semántica no a través de algún tipo de inteligencia artificial, sino en términos pop culturales, como pasaba con las máquinas de escribir mutantes en la adaptación cinematográfica de «El almuerzo desnudo» que hizo David Cronenberg. Estas máquinas de escribir, literalmente «buggy», quizás sean el icono más potente del texto escribible. Y, aunque el software libre no se limite, de manera alguna, a las terminales – Unix empezó como software privativo – no dejar de ser esa cualidad escritora, y esa deconstrucción de la dicotomía usuario/consumidor, lo que hace que el software libre/de código abierto y la línea de comandos sean íntimos compañeros de cama.

[Este texto deliberadamente reutiliza y muta algunos pasajes de mi ensayo «Exe.cut[up]able Statements», publicado en el catálogo de ars electronica de 2003.]
 

Referencias

[Bar75] Roland Barthes. S/Z. Hill and Wang, Nueva York, 1975.

[Ben97] David Bennahum. Interview with Richard Stallman, founder of the free software foundation. MEME, (2.04), 5 1997. http://www.ljudmila.org/nettime/zkp4/21.htm.

[Kay90] Alan Kay. User Interface: A Personal View. En Brenda Laurel, editor, The Art of Human-Computer Interface Design, págs. 191-207. Addison Wesley, Reading, Massachusetts, 1990.

[Sco98] Thomas Scoville. The Elements of Style: Unix as Literature, 1998. http://web.meganet.net/yeti/PCarticle.html.


Notas a pie de página:


  1. [Bar75], p. 200
  2. [Bar75], p. 5
  3. [Bar75], p. 4
  4. [Kay90], p. 203
  5. Codework de Alan Sondheim, enviado a la lista de correo «arc.hive» el 21 de julio de 2002
  6. Thomas Scoville, The Elements of Style: Unix As Literature, [Sco98]
  7. Inédito en estos momentos, por publicar en la web http://www.cont3xt.net
  8. [Ben97]
  9. [Sco98], ibid.

Rediseños: mejorando la herencia recibida

Diseñar la solución a problema de cero nos presenta un terreno lleno de posibilidades. Podemos poner en práctica las técnicas que queramos, probar, errar, mejorar, etc. Sin embargo hay veces que llegamos a un proyecto que ya tiene un producto en funcionamiento y que requiere urgentemente de mejoras de usabilidad.

En diseño, también existe deuda técnica, bien sea porque se toman malas decisiones, se deciden cosas que ‘ya se harán mejor luego’ o se cometen errores de diseño que implican problemas para nuestros usuarios. Como deuda técnica que es el tiempo que pasamos sin solucionarla no hace más que empeorar la situación, agravada incluso por el hecho de que la deuda técnica en diseño sí se ve.

¿Cómo podemos gestionar la deuda técnica?

Si tienes la suerte de que el equipo de producto ha identificado y priorizado la resolución de la deuda técnica aquí van unas cuántas cosas que plantearse.

Conoce las debilidades de tu producto

No todos los problemas de usabilidad son igual de graves o tienen el mismo impacto para tus usuarios. En cualquier caso debes tenerlos identificados mediante cualquier técnica de testing.

Sé realista en cuanto a la dimensión y el impacto, asigna un grado de severidad al problema y decide junto a tu equipo qué pasos deben darse para solucionar cada problema de forma individual y conjunta.

Estrategia

¿Evolución o revolución?

Si empiezas el nuevo producto desde cero pensado para resolver todos esos problemas y que éste no sea visible hasta el final corres el riesgo de introducir nuevas funcionalidades y que nada de esto esté siendo probado por los usuarios que de verdad ‘sufrirán’ el cambio.

Por otra lado, el diseño evolutivo e incremental de pequeñas partes de tu aplicación puede comenzar a generar inconsistencias, y esto es un cáncer del usabilidad.

La consistencia es uno de los principios fundamentales del diseño, la consistencia ayuda a crear un lenguaje de interacción entre el usuario y el producto y facilita su aprendizaje. Introducir inconsistencias ya sean derivadas por rediseños parciales como por un fallo en la identificación de un patrón o un estándar, crea disonancias y dificulta el uso. Volver a ‘homogeneizar’ las soluciones puede llegar a ser bastante más costoso conforme se acumulan dichas inconsistencias.

Entonces ¿qué estrategia seguir? La estrategia depende del primer punto. Si tu producto sufre de inconsistencias o sufre de falta de personalidad, de que el lenguaje no es claro, de que hay ciertas funcionalidades que no se usan, las estrategias a seguir pueden ser muy diferentes.

Mi propuesta sería la siguiente (algo conservadora pero nada pasiva):

  • Una vez identificados y clasificados los problemas de usabilidad de tu aplicación según severidad e impacto, crea dos grupos en base al coste de la solución: baratos (bajo impacto pero fáciles de solucionar y de decidir sobre ellos) y caros (requieren tiempo, validación de conceptos y refactorizaciones de código)
  • Incluye soluciones baratas de forma constante en ciclo de desarrollo. Aunque luego un cambio futuro lo arregle todo o cambie de nuevo. No hagas sufrir más a tus usuarios más tiempo. La tipografía no funciona, cámbiala, no se muestran cosas alineadas, corrígelo. Demuestra a tus usuarios que el producto está vivo y con ganas de mejorar.
  • Lanza los cambios revolucionarios y costosos manteniendo lo que hay. Dirige a tus usuarios hacia tus nuevos diseños y mide el impacto que tienen ¿funcionan mejor? ¿tienen adopción? ¿dónde los abandonan? Esto te ayudará a decidir sobre el siguiente gran cambio y el éxito real de tu rediseño, aunque exista cierta disonancia los usuarios pueden entender mejor que existe una intención de cambio de su producto sin que le desarmes la casa de un día para otro.
  • No asocies el re-diseño sólo a nuevas funcionalidades. No hagas que tus usuarios de siempre piensen que no les importas. No crees dos identidades diferentes que puedan parecer productos diferentes.
  • Cambios de fuera hacia adentro. Esta discusión la he tenido muchas veces y aún no encuentro razones para hacerlo de otra manera. Si el layout o la navegación de tu aplicación es un problema, creo que es fundamental empezar por aquí e ir poco a poco entrando en el detalle del contenido de cada página o sección. Lo peor que puede pasar es que el rediseño de una sección no pueda ser accesible o encontrable, o que la sensación de pérdida sea igual que en el resto. Por otra parte los cambios estructurales pueden ayudar también a la resolución de deuda técnica en desarrollo.

Y recuerda, ignorar la deuda de UX afecta, entre otras cosas, a la confiabilidad del del producto. Da igual de quién recibiste la herencia, siempre que te incorpores a un equipo de diseño, la deuda hay que saber gestionarla.

But I’m a (cheer)Leader

But I'm a Cheerleader

Siempre que alguien me habla de liderazgo me viene a la mente esta película. But I’m a Cheerleader (1999) es un film estadounidense que critica en clave de humor la construcción social de los roles de género y la heteronormatividad a través de la historia de una chica que, en principio, no se reconoce como lesbiana (cinta divertida y recomendable).

Salir del armario en el sector tecnológico no está relacionado (sólo) con los roles de género, sino con los roles profesionales cargados igualmente de estereotipos, de orgullo e incluso de fobias. Esa obsesión por la carrera profesional que parece dibujarnos un único camino para alcanzar ‘el éxito’ tiene un componente clave: ser un/a leader (aunque te mueras de hambre). 

Pero ¿cómo se llega a ser directivo de una empresa? ¿quiénes son los jefes? ¿puede un CTO venir del campo del diseño? ¿qué esperan de nosotras/os? Fundadores, emprendedores, iniciadores, incitadores, hombres de bien vestir y de mal tratar, insoportables todos que nos hacen creer que nosotras, que nosotros, no podemos ser lo que nos dé la gana sin andar justificando esta especie de travestismo profesional o transgresión laboral. En cualquier caso, espero que nuestras aspiraciones no se curen nunca de sentido crítico, de empatía o de sensibilidad y que deconstruyamos cualquier identidad que no nos acepte como somos.

Menos charlas Ted y más performance.

La química de la experiencia (de usuario)

Desde el deseo o intención de uso, las expectativas, la presentación de la interfaz, pasando por la interacción de la persona con el producto, el aprovechamiento de su función y la fidelidad a lo largo del tiempo se construye un marco que podríamos denominar experiencia de usuario.

Esta relación de las personas con la tecnología pasa por establecer un lenguaje común (design system) y ciertas normas de comportamiento (interaction patterns) como mínimo. Pero ¿cuál sería la máxima aspiración que podríamos querer tener respecto a la experiencia?

Por muy Punset o muy Sinek que suene, si el objetivo del diseño para un producto es facilitar una experiencia positiva, de bienestar y felicidad ¿por qué no recordar cómo nos pueden ayudar los químicos del cuerpo a conseguirla? Las redes sociales son un gran ejemplo de cómo diseñar para aumentar los niveles de estos químicos de la felicidad.

“Hay que mirar a los otros no para fustrarse sino para cooperar” – Eduard Punset

La otredad de la tecnología

Oxitocina

Empiezo por la que seguramente es la más subestimada de todos los químicos pero el más importante: “la hormona de los vínculos emocionales” imprescindible para la supervivencia de la especie. Esta hormona dirige al resto y la solución para aumentarla es fácil: abrazar más, regalar, confiar en la gente. Es una hormona que muestra sus resultados a largo plazo, con el tiempo y el esfuerzo.

Soluciones de diseño:

Endorfinas

Las endorfinas son el más simple de todos los químicos y se considera un anestésico natural, su función es aliviar el dolor. Si queremos empezar un hábito las endorfinas nos ayudarán a eliminar el sufrimiento asociado por el esfuerzo que requiere alcanzarlo. Las endorfinas se sienten como una pequeña euforia que calma el dolor. El deporte, bailar, cantar o el trabajo en equipo aumentan el nivel de endorfinas en el cuerpo.

Soluciones de diseño:

  • Hacer una pequeña tarea de forma fácil (tu primer tuit, tu primera foto)
  • Los tours de inicio
  • Recibir un ‘me gusta’

Serotonina

La serotonina la notamos cuando nos sentimos importantes, también tiene su efecto a medio y largo plazo ya que nuevamente depende de nuestras relaciones sociales. Cuanto más respeto y reconocimiento se tiene de nosotros, mayores son los niveles de serotonina. Sentirnos orgullosos de nosotros mismos o recordar momentos felices son formas de incrementar la serotonina.

Soluciones de diseño:

  • Reputación en perfiles sociales a través de métricas (número de seguidores, de likes, etc.)
  • Recordatorios de aniversarios
  • Los tours de inicio

Dopamina

He dejado la dopamina para el final ya que se parece mucho a la serotonina pero a corto plazo. La dopamina es la responsable de la motivación. Cuando comenzamos un nuevo hábito, el mero hecho de comenzar a trabajar por un objetivo hace que se disparen los niveles de dopamina. La dopamina provoca un placer instantáneo, como comer, o incluso ver la comida ya es un disparador de este químico.

Soluciones de diseño:

Desafiar al usuario

La dopamina, enforfinas, serotonina y oxitocina son claves para sentirse bien. Cuando nuestro cerebro emite estos químicos para cumplir con su función podríamos decir que nos sentimos felices.

Cuando un producto digital plantea propósitos a sus usuarios, objetivos alcanzables, o retos interesantes, por ejemplo, lo que asegura es un entorno perfecto para provocarlos de la misma forma que provocar estos químicos nos ayudará a alcanzar esos mismos objetivos.

Un ejemplo:

Facebook te ayuda a comunicarte y compartir con las personas que forman parte de tu vida.

Facebook, al igual que muchas otras redes sociales nos desafían, nos alientan a alcanzar un objetivo que parece necesario y vital. Como red social que es, la interacción y cooperación con tus ‘contactos’ es esencial.

Sin embargo es curioso que cuando nos proponemos una meta a nivel personal muchas veces no contamos con la gente que nos rodea, creemos que es algo que debemos alcanzar solos (sólo tenéis que sondear esos propósitos de año nuevo entre vuestros amigos).

Ésto es algo que las redes sociales hacen muy bien, primero porque ponen a nuestros contactos como medio para que ‘comunicarte y compartir’ sea algo significativo. Y segundo porque como hemos visto, ésta es la base fundamental para aumentar los niveles de oxitocina: ser fieles y sentir que mantenemos las relaciones a lo largo del tiempo.

Cada pequeño paso que hacemos (publicar contenido) para cumplir el propósito (comunicarnos) nos provocará un ‘chute’ de placer instantáneo en forma de endorfinas. El esfuerzo que cuesta alcanzar el objetivo se convertirá en placer inmediato, por ello no debemos preocuparnos por si seremos capaces, ya que la satisfacción estará ligada al trabajo que invertiremos.

Por otra parte, es natural compartir cada logro una y cien veces, ésto ayudará a aumentar la serotonina y reducirá, por otra parte, el riesgo de depresión.

Finalmente, las pequeñas metas (una reacción, un comentario) provocará a que la dopamina fluya y nos ayudará a mantenernos motivados.

La ausencia del miedo

Los comportamientos que provocan las redes sociales son habitualmente del tipo proactivo, aunque como en el caso de los propósitos personales, no todos consisten en comenzar a hacer algo nuevo, sino en dejar de hacer algo que no nos conviene.

Esto tiene que ver con evitar el aumento de otro químico igualmente importante: el cortisol. Este químico que se libera en situaciones de estrés e inhibe la oxitocina, surge en situaciones de miedo o ansiedad extrema.

Tener en cuenta estas situaciones es esencial para el éxito del producto. Aspectos como la privacidad, la seguridad en términos informáticos, físicos y morales, o la autenticidad de los individuos (de los usuarios) hace que se reduzcan posibles situaciones de miedo que provoquen altos niveles de cortisol.

No debemos olvidar que algunas redes sociales también matizan o deciden los contenidos que nosotros (los usuarios) vemos con más frecuencia y más prioridad, e incluso el contexto en el que aparecen (porque es popular o lo más comentado). Este ajuste de contenidos intencionado o no también podría afectar a los niveles de cortisol.

 

 

Nota sobre este artículo

Sobra decir que yo no soy experta en química ni biología, pero todas estas cosas me resultan muy interesantes, leo sobre ellas, comparo y escribo en voz alta. Por otra parte, la relación de estos químicos con la experiencia de usuario es algo de lo que ya se ha hablado en la industria. Si te ha gustado esta entrada y tienes más enlaces interesantes me encantaría que los compartieras 🙂

 

Testear la Experiencia de Usuario

Hace más de un año de la publicación Measuring UX with your own tools en la revista nosolousabilidad.com, desde entonces he seguido trabajando y viendo el testing como una de las formas más prácticas para tomar decisiones en diseño. Me gustaría volver a reflexionar sobre algunas cosas que menciono en el artículo y ‘actualizar’ algunas ideas.

Aunque los datos no tienen todas las respuestas, es importante establecer ciertas métricas para medir de la forma más objetiva posible si el producto que estamos desarrollando va a funcionar para las personas que están destinado a usarlo.

Efectivamente los datos no nos cuentan todo, de hecho, el riesgo de ‘medir mal’ puede hacer incluso que nos desoriente a la hora de buscar una respuesta. Sin embargo, incluso cuando un dato parezca demostrarnos algo a lo que debemos prestar atención, seguimos teniendo la posibilidad de corroborarlo con más experimentos.

El proceso de Validación es contínuo, desde la generación de la idea inicial hasta las sucesivas mejoras e iteraciones que sobre el producto vivo se realizan.

Un enfoque de diseño guiado por datos no es más que asumir la experimentación como parte del proceso, que viene a ser el mismo principio fundamental que nos mueve a trabajar con prototipos antes de lanzarnos a desarrollar el producto final.

Los tests de usabilidad no consiste en testear a usuario. Es decir, no evaluamos cómo de buenos o malos son las personas usando nuestra solución, sino que medimos la calidad de producto en términos de una experiencia de usuario satisfactoria. También afirmábamos que hacer UX Testing es hacer User Research. Como proceso iterativo que es, los descubrimientos hechos deben ayudar a un mejor entendimiento de los usuarios, cómo son y cómo interactúan real y finalmente con nuestro producto a pesar de nuestras creencias.

Hay dos ideas fundamentales que me gustaría dejar claras:

  1. Los usuarios no siempre tienen la razón, pero debemos conocer cómo son y cómo se comportan. En ningún momento testear con usuarios debe suponer juzgarles o estereotiparles.
  2. Testing y Research son dos caras de la misma moneda

Los objetivos de la validación persiguen generalmente:

  • Reducir la incertidumbre
  • Validar hipótesis
  • Guiar el proceso
  • Facilitar la toma de decisiones informada
  • Identificar nuevos requisitos de producto
  • Entender mejor el modelo mental de los usuarios
  • Encontrar y resolver problemas de usabilidad

Las métricas de UX tienen algo de especial o diferenciador con el resto de métricas y es que revelan información no sólo del sistema sino de las personas, de su comportamiento y sus actitudes. Por eso cuando interpretemos las métricas debemos tener especial cuidado y calcular también intervalos de confianza, al igual que razonar sobre los principios de diseño las posibles conclusiones que se obtenga.

¿Cómo podemos cuantificar la Experiencia de Usuario? Métricas y Métodos

Para poder tener una idea del estado de usabilidad de un producto digital, es posible obtener información de tres formas diferentes:

  1. Basado en lo que los usuarios hacen
  2. Basado en lo que los usuarios dicen
  3. Basado en lo que nosotros (como testeadores) observamos

Estos tres puntos de vista son igualmente importantes y, aunque no todos ellos se pueden considerar cuantificables, hay una intención clara de analizarlos de forma combinada como parte de un indicador global de la UX.

¿Por qué es importante un score de UX global? Un score global de UX puede ser interesante en grandes empresas para tener una visión de aquello que afecta puramente a la experiencia donde múltiples procesos de desarrollo confluyan. Sin embargo, incluso en esos contextos donde es muy apetecible para los ‘managers’ demandar un indicador global, no es en absoluto recomendable y es, incluso, contraproducente. Los KPIs de UX deben ser accionables y ayudarnos a tomar decisiones, no a justificar diseños.

Midiendo la User Performance (lo que los usuarios hacen)

Las métricas de rendimiento serán calculadas basadas en comportamientos, escenarios y tareas concretas de los usuarios. Estas métricas nos hablarán de eficacia y eficiencia y nos servirán para entender la magnitud los problemas de usabilidad que encontremos. Eso sí, nos indicarán qué está yendo mal, no por qué está yendo mal.

Las métricas más comunes son:

  • Éxito de la tarea: cómo son de eficaces los usuarios a la hora de realizar las tareas planteadas en un test con usuarios. También se puede medir la tasa de errores.
  • Duración de la tarea: cuánto tiempo ha utilizado el usuario en realizar una tarea del test.
  • Errores: el número de errores que ha tenido un usuario al realizar una tarea.
  • Eficiencia: cantidad de esfuerzo que un usuario gasta en realizar una tarea, por ejemplo el número de clics.
  • Curva de aprendizaje: cómo el rendimiento mejora o empeora a lo largo del tiempo.

Me gustaría hacer especial hincapié en la forma en la que se expresan y se describen esas ‘tareas’ propuestas para los usuarios.

Las tareas propuestas deben tener sentido dentro de un escenario y contexto de uso específico. En lugar de pedir a nuestros usuarios ‘hace esto’ o ‘haz lo otro’ lo que tendemos a pedirles es que se imaginen en un determinado escenario y proponerles una serie de retos u objetivos para ver cómo podrían lograr hacerlos.

Algunas reglas que deben seguirse para estas tareas son

  1. Hacer la tarea realista
  2. Hacer la tarea accionable
  3. Evitar pistas o descripción de pasos

Independientemente de si estáis haciendo un test de usuario formal o de ‘guerrilla’, esto último es muy importante. Al fin y al cabo no sólo enlaza con la forma en la que describimos y entendemos el problema, sino que también es la mejor conversación que podemos tener con los usuarios, sentarnos junto a ellos, verlos interactuar en un contexto real, con unas necesidades reales y quizá con uno o varios prototipos que le permitan alcanzar sus objetivos. Éste es feedback es mucho más valioso que un simple ‘me gusta/no me gusta’.

Google Analytics al rescate

Una forma alternativa, que no sustituye a la anterior pero sí aporta información parecida (según queramos medirla) en un contexto diferente, es hacer uso de eventos y de Google Analytics para monitorizar en un producto online sin necesidad de organizar sesiones de tests de forma continuada.

Midiendo la Usabilidad Percibida (lo que los usuarios dicen)

No todas las personas sabemos expresar con palabras los problemas que encontramos. A veces simplemente reaccionamos con gestos, expresiones o guardamos silencio.

Nuestros usuarios no son menos, a pesar de que nuestra expectativa por conocer qué piensan y a veces nuestras críticas sobre cómo expresan los problemas nos lleva a creer que sólo lo que se dice es relevante, nos puede inducir a equivocaciones.

Sin embargo es importante escuchar y hacerles ver que son escuchados. Durante una sesión de test con usuarios una técnica muy efectiva es el think-aloud. A los usuarios se les pedirá que cuenten qué están intentando hacer durante la resolución de una tarea. Después de haber completado la tarea se les puede preguntar que califiquen el grado de complejidad percibida en la tarea, De esta forma podremos saber cómo varía su percepción a lo largo del tiempo. Si además les solicitamos esta información antes de realizar la tarea podríamos comparar sus expectativas con su experiencia final.

Finalmente, tras la realización de una sesión de test completa se les puede pasar una encuesta estándar conocida como Software Usability Survey para que puedan expresar con escalas de uno a cinco cuál es el grado de usabilidad general percibida en la solución.

En resumen, conseguiremos información mucho más valiosas si no hacemos preguntas directas a los usuarios sobre ‘gustos’ sino pidiéndoles que valoren soluciones específicas para tareas y problemas concretos expresándose como grados de satisfacción, al mismo tiempo que escuchamos y observamos sus comentarios y expresiones durante el intento de realización de dichas tareas.

Midiendo las Issues evaluadas (lo que observamos)

Cuando realizamos revisiones de experto o heurísticos de usabilidad iremos identificando una serie de issues que en principio nos darán una métrica puramente cualitativa. Normalmente, una issue viene descrita por un título y una descripción del problema, aunque es recomendable añadir también un grado de severidad del problema y relacionarla con la tarea específica que el usuario estaría intentando hacer en ese momento.

El grado de severidad y la frecuencia de aparición de las issues nos van a ayudar de nuevo a cuantificar esta métrica.

Hablábamos al principio de la sesión de los principios heurísticos de Nielsen, y son ciertamente estos principios los que se observan y evalúan siguiendo ciertos escenarios de tests donde los expertos nos ponemos en la piel del usuario y tratamos de analizar cómo está siendo la experiencia con la solución.

Estas revisiones de experto las podemos realizar con la frecuencia que queramos, generalmente de sprint a sprint, ayudan a cazar ciertas issues antes de que llegue a un cliente. No tiene ningún valor esperar a que un usuario se queje (ya que posiblemente no lo hará) de que algo está mal alineado o es inconsistente, sin embargo lo que sí hará será percibir desorden en la interfaz y notar cómo dificulta su aprendizaje.

Errores comunes

De entre los errores más comunes que me he encontrado cuando he realizado heurísticos se encuentran:

  • Mensajes de información y error
  • Formularios
  • Colocación de elementos en la pantalla, dificultad de escanear
  • No hay manera de encontrar o buscar
  • Inconsistencias en iconografía, verbos (acciones), patrones de navegación
  • La información está mal organizada
  • Demasiada densidad de información
  • Las llamadas a la acción no están claras
  • Los usuarios tardan en interpretar la información
  • Los usuarios tienen miedo a interactuar, si hay errores más

 

Conclusiones

Medir la Experiencia de Usuario no es una tarea imposible ni inabarcable, simplemente hay que tener claro qué preguntas queremos contestar en cada momento y una vez tengamos respuestas hacia dónde debemos explorar más. Ya sea para monitorizar la usabilidad de un software o como guía de un diseño informado, aplicar métricas cuantitativas aporta una visión única a la forma en la que desarrollamos software. En futuros artículos hablaré sobre cómo visualizar y analizar dichas métricas.

 

Photo by Dawid Małecki on Unsplash