La interfaz de usuario no es algo que pueda aplicarse después del hecho, como una fina capa de pintura. Es algo que debe estar allí desde el principio y basado en investigaciones reales. Hay toneladas de investigación de usabilidad disponible, por supuesto. No solo debe estar allí al comienzo, sino que debe formar el núcleo de la razón por la que está creando el software en primer lugar: hay una brecha en el mundo, algún problema, y debe hacerse. más usable y más eficiente.
El software no está ahí por sí mismo. La razón para que exista una parte de software es PARA LAS PERSONAS. Es absolutamente absurdo incluso tratar de llegar a una idea para un nuevo software, sin comprender por qué alguien lo necesitaría. Sin embargo, esto sucede todo el tiempo.
Antes de escribir una sola línea de código, debe revisar las versiones en papel de la interfaz y probarla en personas reales. Esto es un poco raro y tonto, funciona mejor con los niños y con alguien entretenido que actúa como "la computadora".
La interfaz necesita aprovechar nuestras instalaciones cognitivas naturales. ¿Cómo usaría un hombre de las cavernas tu programa? Por ejemplo, hemos evolucionado para ser realmente buenos en el seguimiento de objetos en movimiento. Es por eso que las interfaces que usan simulaciones físicas, como el iPhone, funcionan mejor que las interfaces donde los cambios ocurren instantáneamente.
Somos buenos en ciertos tipos de abstracción, pero no en otros. Como programadores, estamos entrenados para hacer gimnasia mental y volteretas para comprender algunas de las abstracciones más extrañas. Por ejemplo, entendemos que una secuencia de texto arcano puede representar y traducirse en un patrón de estado electromagnético en una bandeja de metal, que cuando se encuentra con un dispositivo cuidadosamente diseñado, conduce a una secuencia de eventos invisibles que ocurren a la velocidad de la luz en un dispositivo electrónico. circuito, y estos eventos se pueden dirigir para producir un resultado útil. Es algo increíblemente antinatural tener que entender. Comprende que si bien tiene una explicación perfectamente racional para nosotros, para el mundo exterior, parece que estamos escribiendo encantamientos incomprensibles para convocar a espíritus inteligentes invisibles para que cumplan con nuestros requisitos.
El tipo de abstracciones que los humanos normales entienden son cosas como mapas, diagramas y símbolos. Tenga cuidado con los símbolos, porque los símbolos son un concepto humano muy frágil que requiere un esfuerzo mental consciente para decodificar, hasta que se aprende el símbolo.
El truco con los símbolos es que tiene que haber una relación clara entre el símbolo y la cosa que representa. La cosa que representa tiene que ser un sustantivo, en cuyo caso el símbolo debe parecerse MUCHO a la cosa que representa. Si un símbolo representa un concepto más abstracto, eso debe explicarse POR ADELANTADO. Vea los iconos inescrutables no bloqueados en la barra de herramientas de msword o photoshop, y los conceptos abstractos que representan. Debe APRENDERSE que el icono de la herramienta de recorte en photoshop significa HERRAMIENTA DE CULTIVO. tiene que entenderse lo que significa incluso CROP. Estos son requisitos previos para utilizar correctamente ese software. Lo que trae a colación un punto importante, tenga cuidado con el conocimiento ASUMIDO.
Solo obtenemos la capacidad de comprender mapas alrededor de los 4 años. Creo que leí en alguna parte una vez que los chimpancés adquieren la capacidad de comprender mapas alrededor de los 6 o 7 años.
La razón por la que las guis han tenido tanto éxito al principio, es que cambiaron un panorama de interfaces principalmente textuales a computadoras, a algo que mapeó los conceptos de computadora a algo que se parecía a un lugar físico. Donde las guis fallan en términos de usabilidad, es donde dejan de parecerse a algo que verías en la vida real. Hay cosas invisibles, impredecibles e incomprensibles que suceden en una computadora que no se parecen a nada que hayas visto en el mundo físico. Algo de esto es necesario, ya que no tendría sentido simplemente hacer un simulador de realidad. La idea es ahorrar trabajo, por lo que tiene que haber un poco de magia. Pero esa magia tiene que tener sentido y basarse en una abstracción de que los seres humanos están bien adaptados para comprender. Es cuando nuestras abstracciones comienzan a profundizarse, y en capas, y no coincide con la tarea en cuestión que las cosas se rompen. En otras palabras, la interfaz no funciona como un buen mapa para el software subyacente.
Hay muchos libros Los dos que he leído, y por lo tanto puedo recomendar, son "El diseño de las cosas cotidianas", de Donald Norman, y "La interfaz humana", de Jef Raskin.
También recomiendo un curso de psicología. "El diseño de las cosas cotidianas" habla un poco sobre esto. Muchas interfaces se rompen debido a la "comprensión popular" de la psicología por parte de un desarrollador. Esto es similar a la "física popular". Un objeto en movimiento permanece en movimiento no tiene ningún sentido para la mayoría de las personas. "¡Tienes que seguir presionándolo para mantenerlo en movimiento!" piensa el novato en física. Las pruebas de usuario no tienen sentido para la mayoría de los desarrolladores. "Puedes preguntar a los usuarios qué quieren, ¡y eso debería ser lo suficientemente bueno!" piensa el psicólogo novato.
Recomiendo Discovering Psychology, una serie documental de PBS, presentada por Philip Zimbardo. De lo contrario, intenta encontrar un buen libro de texto de física. El tipo caro. No es la basura de autoayuda de pulp fiction que encuentras en Borders, sino las cosas gruesas y duras que solo puedes encontrar en la biblioteca de una universidad. Esta es una base necesaria. Puede hacer un buen diseño sin él, pero solo tendrá una comprensión intuitiva de lo que está sucediendo. Leer algunos buenos libros te dará una buena perspectiva.