The humane interface

He terminado de leer The human interface de Jeff Raskin, uno de los hombres más influyentes en la historia de la informática. Los capítulos que más me han gustado han sido los primeros donde explica algunos de los aspectos del funcionamiento de la mente consciente y la mente subconsciente.

Usando la mente consciente solo podemos prestar atención a una tarea a la vez, por ejemplo, no podemos resolver dos problemas matemáticos a la vez. Mientras que la mente subconsciente trabaja sin que nosotros lo notemos realizando muchas tareas a la vez, por ejemplo, podemos estar caminando y escuchando música a la vez.

El problema de la mente consciente es que tiene muy poca persistencia en el tiempo. ¿Nos ha pasado mil veces que al cabo de unos segundos se os olvida algo que acabáis de leer, porque habéis pasado a prestar atención a otra cosa? Lo mismo pasa con los ordenadores, muchas veces los programas de ordenador suponen que el usuario tiene que recordar un mensaje que se ha mostrado unos minutos antes, pero lo más seguro es que el usuario lo haya olvidado. La mente consciente olvida rápidamente y solo puede prestar atención a una tarea.

El problema de la mente subconsciente es que va trabajando sin que lo notemos y por lo tanto es uno de los orígenes de los hábitos tanto buenos como malos. Los hábitos no se olvidan, persisten y son difíciles de eliminar. Aplicándolo al diseño de interfaces, cuando cerramos una aplicación en el ordenador nos suele preguntar «¿Desea realmente cerrar la aplicación?» y por costumbre siempre hacemos click en «Sí» de forma automática. Poco a poco se convierte en un hábito, y si un día realmente no quieres cerrar el programa por vicio harás click en «Sí» en vez de «No». ¿Tiene entonces alguna utilidad mostrar este cuadro de diálogo antes de que se cierre una aplicación?

Durante el resto del libro se explican diferentes métricas formales para decidir numéricamente la eficiencia y facilidad de uso de diferentes interfaces, se plantean diversos problemas, ejemplos con máquinas reales etc. Básicamente, Raskin defiende ante todo la simplicidad: muchas maneras de hacer la misma tarea no siempre es bueno.

En definitiva, un libro excelente tanto para leerlo de una tirada como para usarlo de referencia a la hora de crear interfaces usables de páginas webs o aplicaciones de escritorio.

Otro libro sobre diseño de interfaces que me gustó mucho es Don’t make me think. En este libro de Steve Krug se pueden ver los miles de fallos que puede cometer un diseñador de webs sin darse cuenta. La filosofía principal que nos muestra el autor es que no debemos Hacer Pensar a los usuarios lo más mínimo. No deben pararse a pensar algo tan trivial como ¿dónde esta tal o cual sección? simplemente deben intuir donde está la sección. Esto es muy complicado de conseguir aunque parezca trivial a simple vista.

Gracias a Emasoft por el libro.

Python Challenge

Carlos me manda un interesante en lace a la web Python Challenge donde nos proponen una serie de problemas a resolver. Lo curioso es que la url de cada problema está compuesta por un «token» que obtienes como solución al resolver el problema anterior.

En principio están pensados para ser solucionados usando Python pero se puede usar cualquier otro lenguaje. Como ya he dicho en alguna ocasión lo importante no es el lenguaje de programación, sino saber programar. Y para aprender a programar una de las mejores formas es resolviendo problemas.

Un clásico de los problemas de programación son los diseñados por la ACM (Association for Computer Machinery). La ACM es la organización educativa número uno en cuanto a informática, se encargan de llevar grandes bases de datos con artículos científicos etc. Además organizan eventos como el ACM Programming Contest en los cuales se presentan una serie de problemas que tienen que resolver los participantes programando en C,C++, Java o Pascal.

En esta web de la ACM tenéis un montón de problemas para resolver.

Software Wars

Curiosa imagen donde se representa la actual (2003) escena general en el mundo del software en forma de «mapa de guerra». En el centro sale Bill Gates como emperador siendo atacado por todas las líneas fronterizas.

Software Wars
Ver a tamaño original

En esta web podréis ver los diferentes mapas de Software Wars desde 1998.

Sobre el error de Google

Para reproducir el error de google en vuestros ordenadores probad buscando:

site:http:kirai.bitacoras.com inurl:*.php

Y a continuación haced click en la segunda página de resultados. Lo más seguro es que obtengáis algo parecido a esto:

google

También puede ser que no obtengáis la página de error y no tengáis ningún problema, esto se debe a que según Google sois un sistema fiable. La explicación en inglés la he escrito en este documento PDF que he mandado al staff the Google.

Esto en principio funciona para cualquier sistema (Unix, Windows o lo que sea) y cualquier navegador.

Lo que más me mosquea es que Google asuste a los usuarios dicíendonos que tenemos virus en nuestros ordenadores solo a partir de una búsqueda. Deberían haber diseñado un mensaje de error un poco más amigable.

Actualizado:
Parece ser que el equipo de google ha leído mi mail rápidamente y han solucionado el problema.

Hi Héctor,

Thank you for contacting us. We’ve made some changes recently that may
have resolved the problem…..

….
Regards,
The Google Team

Currando en el CERN – Parte 2

Otro día interesante de curro fue el viernes que tuve reunión por videoconferencia con otros colaboradores del proyecto Grace. Yo pensaba que la reunión iba a ser presencial, pero cuando llegué, y vi una pantalla enorme donde iban apareciendo gente de todo el mundo me di cuenta de que a la peña no le sobra la pasta para viajar.

En la videoconferencia estuvimos hablando gente diversa que colabora en el proyecto. Participa gente de Estados Unidos (Stanford, Harvard, NASA), de Inglaterra (Sheffield), de Finlandia (Helsinki) y de Italia. La verdad es que no dije mucho porque me daba un poco vergüenza meter la pata.

Se estuvo hablando sobre plazos de entrega, distribución de trabajo, transferencia de información y otros temas de gestión. Al final se retiraron los jefazos y nos quedamos los pringuis hablando de los bugs que habíamos encontrado cada uno (Tenemos un bugzilla para el seguimiento de bugs, pero aun así comentar las jugadas por videoconferencia tiene su interés ), interfazes entre los diversos sistemas, discutiendo sobre el diseño del sistema etc.

El resto del día lo dediqué a reparar algunos bugs que habíamos comentado durante la reunión.

Currando en el CERN – Parte 1

Albin lleva tiempo pidiendo una dosis de realismo. Así que vamos a contar ciertos algunos detalles del día a día en el curro. Aunque os puedo asegurar que todo lo que os he ido contando es REAL 😉

La primera novedad es que me he cambiado de despacho. Ahora estoy en el R-001 del edificio 600 del CERN. Ya tengo teléfono propio, dos ordenadores y mi nombre está en la puerta 🙂

gallery-msg-1090852517-2
La puerta de mi despacho en el CERN

Como véis en la foto estoy dentro del proyecto Grace. El objetivo de este proyecto es crear un buscador que funcione utilizando la tecnología GRID.

Yo me encargo de realizar programas para extraer información de diversos buscadores y pasarla al GRID, por lo que tengo que ir estudiando los diversos buscadores uno a uno y ver los estándares que cumplen para poder obtener la información de la forma más sencilla posible. Por ejemplo, el otro día tuve que leerme toda la especificación de OAI, un protocolo para obtener información clasificada en grandes cantidades.

Es un poco rollo tener que mirarse a fondo el funcionamiento de estos protocolos. Estuve 3 horas intentando encontrar la forma de hacer cierta operación con OAI. Imposible, hasta que me dí cuenta de que entre los autores del protocolo OAI había uno del CERN. Así que busqué en el sistema informático del CERN donde estaba su despacho. Resulta que trabaja en el edificio de enfrente a solo 2 minutos.

Después de cruzar una sala con 200 ordenadores y escuchar el sonido ensordecedor del sistema de ventilación del Computer Centre llegué a su despacho. Me recibió amablemente y me explicó en un momento lo que yo había intentado solucionar en 3 horas.

Luego volví a programar en un momento lo que me había explicado en persona uno de los creadores del protocolo OAI. La verdad, es que los recursos tanto humanos como materiales que puedes encontrar aquí son impresionantes. Estoy seguro de que en un solo edificio del CERN hay más tecnología y recursos que en 10 universidades españolas.