Vous êtes sur la page 1sur 4

Captulo 1: Controlar tu entorno te hace feliz

Diseo de Interfaz de Usuario para Programadores Captulo 1: Controlar Tu Entorno Te Hace Feliz Por Joel Spolsky 10 de Abril de 2000

La mayora de los programadores incondicionales de C++ que conozco odian la programacin de interfaz de usuario. Esto me sorprende, porque a m me parece que la programacin de IU es esencialmente fcil, sincera y divertida. Es fcil, porque normalmente no necesitas algoritmos ms sofisticados que uno para centrar un rectngulo dentro de otro. Es sincera, porque cuando cometes un error, inmediatamente lo ves y puedes corregirlo. Es divertido, porque los resultados de tu trabajo son visibles al momento. Sientes que ests esculpiendo el programa directamente. Creo que el miedo de la mayora de estos programadores viene de su miedo de hacer diseo de IU. Piensan que el diseo de IU es como el diseo grfico: Ese misterioso proceso por el cual esa gente creativa, que van vestidos de negro, beben capuchinos y llevan piercings curiosos produce un material artstico tan chulo. Los programadores se ven a s mismos como pensadores analticos y lgicos: fuertes a la hora de pensar, dbiles a la hora de opinar sobre arte. As que piensan que no pueden hacer diseo de IU. De hecho, creo que el diseo de IU es muy fcil y racional. No se trata de un problema misterioso que requiere un ttulo de una escuela de arte y cierta inclinacin por el color de pelo morado chilln. Existe una manera racional de pensar en interfaces de usuario, con reglas simples y lgicas, que puedes aplicar en cualquier sitio para mejorar las interfaces de los programas en los que trabajas. No les voy a ensear "Zen y el Arte del Diseo de IU". No es un arte, no es budismo, slo es un conjunto de reglas. Una forma de pensar racional y metdica. Este libro est pensado para programadores. Voy a asumir que no necesitas instrucciones para construir una barra de men; mejor dicho, lo que necesitas es pensar qu vas a poner en la barra de men (o si realmente te hace falta una). Les ensear que hay un axioma primario que gua todo buen diseo de IU y que no es difcil en absoluto de entender. Mi primer trabajo de verdad fue en una gran panadera industrial. La panadera fue diseada para tener seis filas de produccin. Por cada dos filas haba una amasadora, que produca pedazos de masa gigantes de 180 Kg. que se podan volcar a la derecha o a la izquierda:

Bueno, este era el diseo. En realidad, el Mezclador C no haba sido construido an, ni tena las filas 3 y 5. As que el apao que haba era este:

El despierto lector estar pensando "Cmo llegaba la masa del Mezclador B a la fila 6?". Bueno, pues ah es donde el pequeo Joel entraba. Mi trabajo era, si os lo podis creer, quedarme al lado del Mezclador B, coger la masa de 180 Kg. segn sala, ponerla en una baera con ruedas, llevar la baera rodando a la fila 6 y, usando un chisme parecido a un torno, echar la masa en la fila 6. Tena que hacer esto cada 10 minutos, desde ms o menos las 10 de la noche hasta las 4 de la madrugada. Haba otras complicaciones. La fila 6 en realidad no poda hacerse con los 180 Kg. de masa enteros, as que tena que cortarla con un cuchillo gigante en unos 10 trozos. Ni siquiera voy a entrar en lo absurdamente difcil que era esto. Los primeros das, por supuesto, era malsimo en este trabajo. Me pareca casi imposible. Me dolan todos los huesos del cuerpo. Tena ampollas en las ampollas. Me dolan partes de mi cuerpo que ni siquiera saba que existan. Al principio, simplemente no poda mantener alimentada la fila 6. Cada vez que haba una interrupcin en la masa esto creaba un enorme hueco en la lnea de produccin. Cuando el hueco llegaba al horno, ste (suministrando la misma cantidad constante de energa sobre una cantidad de masa ms reducida) se calentaba ms, lo que quemaba el pan. A veces, la fila 6 se atascaba y paraba la produccin, pero el mezclador continuaba produciendo masa y yo corra el riesgo de quedarme sin baeras donde ir poniendo la masa. Cuando esto pasaba, lo que en verdad haca era limpiar y engrasar el suelo y volcar en l la masa, que luego se reutilizaba. Esto no estaba muy bien, porque si la masa se quedaba as ms de 30 minutos, fermentara y no producira buen pan. Si pasaba esto, haba que cortarla en pedazos de 5 kg y poner uno de estos pedazos en la mezcla en el siguiente lote. Despus de una semana o as, mejor tanto en la rutina que, si recuerdo bien, tena 2 minutos libres para descansar por cada ciclo de masa de 10 minutos. Calcul un horario exacto y aprend cmo decirle a la amasadora que se saltara un lote cuando la lnea de produccin se paraba. Entonces empec a pensar por qu, como dice el anuncio de la cerveza, algunos das son mejores que otros. Un da, pensando en este problema, me di cuenta de que una de las baeras rodantes tena unas ruedas lamentables que no giraban bien. A veces, esta baera no iba hacia donde yo la empujaba y se chocaba con las cosas. Esta era una pequea frustracin. A veces, segn tiraba de la cadena para sacar la masa de la baera, me araaba -- slo un poquito -- con una esquirla de la cadena. Otra pequea frustracin. A veces, segn corra con una baera vaca para coger la masa que sala de la amasadora, me resbalaba con un poco de aceite en el suelo. He de decir que no lo suficiente para caerme, slo una pequea frustracin. Otras veces, tena pequeas victorias. Aprend a cronometrar la produccin de masa tan perfectamente que la masa fresca llegaba segundos antes de que el lote anterior se acabara. Esto garantizaba la masa ms fresca posible y produca el mejor pan. Algunas de las victorias eran incluso ms pequeas: Localizaba un poco de masa que haba salido disparado del mezclador y se haba pegado a la pared, lo rascaba con una esptula que llevaba en el bolsillo trasero y lo tiraba a la basura. S SEOR! Cuando cortaba la masa en trozos, a veces se poda cortar muy agradable y fcilmente. Pequeos momentos de satisfaccin, cuando consegua controlar el mundo a mi alrededor, aunque fuese de una manera nfima. As pasaban los das. Un montn de pequeas frustraciones y un montn de pequeos xitos. Pero todos se acumulaban. Incluso algo que parece una pequea frustracin sin consecuencias afecta tu humor. A tus emociones no parece importarles la magnitud de un acontecimiento, slo la calidad del mismo. Y empec a aprender que los das en los que era ms feliz eran los das con montones de pequeos xitos y unas poquitas pequeas frustraciones. Aos ms tarde, cuando fui a la universidad, aprend algo de una importante teora de psicologa llamada Indefensin Adquirida, desarrollada por el Dr. Martin E. P. Seligman. Esta teora, respaldada por aos de investigacin, dice que una gran depresin aparece tras un sentimiento de indefensin: el sentimiento de que no puedes dominar tu entorno. Cunto ms sientes que puedes controlar tu entorno y que las cosas que haces funcionan, ms feliz eres. Si ests frustrado, enfadado y contrariado, es porque probablemente te ha ocurrido algo que no puedes controlar: aunque sea algo pequeo. La barra espaciadora de tu teclado no va bien. Cuando tecleas, algunas palabras se quedan pegadas. Esto es frustrante, porque le has dado al espacio y no ha pasado nada. La llave de tu casa no funciona bien. Cuando intentas girarla, que atasca. Otra pequea frustracin.

Estas cosas se acumulan; estas son las cosas que nos hacen infelices da a da. Incluso aunque parezcan demasiado insignificantes para explayarse con ellas (quiero decir, hay gente en frica murindose de hambre, por el amor de Dios, no me puedo enfadar con la barra del espacio), no obstante, afectan a nuestro humor. Una ligera pausa y volvamos a los ordenadores. Vamos a inventarnos un tpico usuario avanzado de Windows llamado Pete. Cuando piensas en interfaces de usuario, tener usuarios imaginarios en la cabeza ayuda. Cuanto ms realista sea el usuario imaginario, mejor te ir al pensar cmo van a usar tu producto. Pete es un contable en una editorial tcnica que lleva usando Windows desde hace seis aos en la oficina y un poco en casa. Es muy competente y bastante tcnico. Sabe instalar su propio software; lee PC Magazine, e incluso se ha programado algunas macros de Word para ayudar a las secretarias de su oficina a enviar los recibos. Se va a poner un cable modem en casa. Pete nunca ha usado un Macintosh. "Son muy caros", dice. "Te puedes comprar un PC a 700 Mhz con 128 MB de RAM por el precio de..." Vale, Pete. Lo pillamos. Un da Gena, la amiga de Pete, le pide ayuda con su ordenador. Gena tiene ahora un Macintosh iBook, porque le encantan estos equipos translcidos. Cuando Pete se sienta e intenta usar el Macintosh, rpidamente se va frustrando. "Odio estas cosas", dice. Al final ha podido ayudar a Gena, pero se ha vuelto grun e infeliz. "Los Macintosh tienen una interfaz de usuario tan patatera". Patatera? De qu esta hablando? Todo el mundo sabe que los Macintosh tienen una interfaz de usuario elegante, no? El paradigma de la facilidad de uso? Este es mi anlisis de dicho misterio. En un Macintosh, cuando quieres mover una ventana, pues coges cualquier borde con el ratn y lo mueves. En Windows, tienes que coger la barra de ttulo. Si coges un borde, la ventana se redimensiona. Cuando Pete estaba ayudando a Gena, trat de ensanchar una ventana arrastrando el borde derecho. De manera frustrante, la ventana completa se movi, en lugar de redimensionarse como l esperaba. En Windows, cuando una caja de mensaje aparece, puede darle a intro o a la barra espaciadora para cerrarla. En un Mac, pulsar espacio no funciona. Normalmente hace falta pulsar con el ratn. Cuando a Pete le salan avisos, intentaba cerrarlos pulsando la barra del espacio, como ha estado haciendo inconscientemente durante los ltimos seis aos. La primera vez, no pas nada. Si ni siquiera haberse dado cuenta, Pete le dio ms fuerte al espacio, porque pensaba que el problema era que el Mac no haba recibido la pulsacin de espacio. De hecho, si que la recibi -- pero no le import! Por fin utiliz el ratn. Otra pequea frustracin. Pete ha aprendido a usar Alt+F4 para cerrar ventanas. En los Mac, en realidad cambias el volumen. En un determinado punto, Pete quera pulsar el icono del Internet Explorer en el escritorio, que estaba parcialmente cubierto por otra ventana. As que puls Alt+F4 para cerrar la ventana e inmediatamente hizo doble click donde el icono debera haber estado. El Alt+F4 subi el volumen del ordenador y no cerro la ventana, as que el doble click fue al botn de Ayuda en la barra de herramientas de la ventana que quera cerrar, lo que inmediatamente lanz una ventana de ayuda, as que ahora tiene dos ventanas abiertas que hay que cerrar. Otra pequea frustracin. Pero, chico, se acumulan. Al final del da, Pete se ha vuelto grun y est enfadado. Cuando intenta controlar las cosas, no responden. La barra de espacio y la tecla Alt-F4 "no funcionan" --a todo efecto, es como si estuvieran rotas. La ventana le desobedece cuando la intenta ensanchar, le juega una pequea travesura movindose en lugar de agrandarse. Ventana mala. Incluso si todo es inconsciente, esa sutil sensacin de no tener el control se traduce en indefensin, que a su vez se traduce en infelicidad. "Me gusta mi ordenador", dice Pete. "Lo tengo todo preparado de manera que funcione como me gusta. Pero estos Macs son cutres y difciles de usar. Es un ejercicio de frustracin. Si Apple hubiera estado trabajando en MacOS todos estos aos en vez de tontear con los Newton, su sistema operativo no sera tan desastroso". Vale, Pete. Ahora lo sabemos. Estas sensaciones aparecen a pesar del hecho de que los Macintosh son realmente fciles de usar -- para los usuarios de Mac. Qu tecla pulses para cerrar una ventana es totalmente arbitrario. Los programadores de Microsoft, que, presuntamente, estaban copiando la interfaz de Mac, probablemente pensaron que molaba aadir una caracterstica que permita redimensionar ventanas arrastrando cualquier borde. Los programadores de Mac 8.0 probablemente pensaron que molaba aadir una caracterstica que haca que pudieras mover las ventanas arrastrando cualquier borde.

La mayora de las discusiones ledas sobre asuntos de interfaz de usuario se concentran en la cuestin equivocada. Windows es mejor porque te ofrece ms formas de redimensionar ventanas. Y qu? No es eso. La cuestin es, responde el IU al usuario de la manera que el usuario espera que lo haga? Si no lo hace, el usuario se va a sentir desprotegido y sin el mando, de la misma manera que yo me senta cuando las ruedas de la baera con la masa no giraban en la direccin que yo las empujaba y me chocaba con la pared. Buuuumba. Las IU son importantes porque afectan a las sensaciones, las emociones y el humor de tus usuarios. Si la IU est mal y el usuario siente que no puede controlar la aplicacin, literalmente no sern felices y culparn a tu programa de ello. Si la IU est bien y las cosas funcionan de la manera que los usuarios esperan, estarn contentos cuando consigan completar pequeas tareas. Hey! Acabo de copiar un CD! Y ha funcionado! Este programa est bien! Moooooola! Para hacer feliz a la gente, tienes que permitirles sentirse al mando de su entorno. Para hacer esto, necesitas interpretar correctamente sus acciones. La interfaz necesita comportarse de la manera que ellos esperan que se comporte. As, el axioma fundamental de todo diseo de interfaz de usuario es:
Una interfaz de usuario est bien diseada cuando el programa se comporta exactamente como el usuario piensa que lo hara

Como Hillel dijo, todo lo dems son comentarios. Todas las dems reglas de buen diseo de IU son slo corolarios.

Vous aimerez peut-être aussi