Saturday, March 28, 2009

Cualquiera pensaria que encontre la receta magica para atraer lectores

Checando mis estadisticas en Google Analytics, me encontre con esta grata sorpresa en el cambio del numero de visitas a mi blog, un incremento nada despreciable de 13,336.36%

Thursday, March 26, 2009

Desea ver el contenido de la pagina web que se entrego de forma segura?

keywords: IE8, usabilidad, advertencia, error, dialogo

actualizacion: Si lo unico que quieres es que este dialogo deje de aparecer, visita este articulo sobre como prevenir este dialogo

IE8 acaba de salir y trae algunas cosas muy buenas y tambien unos mecanismos de proteccion muy buenos, en general, una version decente (aunque no suficiente para convertir gente de Firefox).

Mientras hacia pruebas con este, me encontre con este dialogo al navegar por una pagina segura (Gmail)

Que dijooooo??????

La primera vez que vi el dialogo realmente me quede pasmado y tuve que leer un par de veces cuidadosamente el dialogo completo.

Para efectos de SEO incluyo el texto aqui:
Esta pagina web contiene contenido que no sera proporcionado usando una conexion HTTPS segura, que puede comprometer la seguridad de toda la pagina web

Para ser sinceros no estoy muy seguro que opcion debo elegir si quiero ver todo el contenido de la pagina. No entiendo porque cambiaron el dialogo anterior:
La pagina que esta abriendo contiene tanto elementos seguros como no seguros. Desea mostrar los elementos no seguros?


El nuevo dialogo me parece bastante confuso, y el texto extra despues de la pregunta solo lo hace aun mas confuso, desde que me acuerdo habia existido el dialogo anterior y me parecia bastante claro.

Si vemos la version en ingles es mas claro ver que el nuevo dialogo requiere la respuesta opuesta al dialogo anterior, si es que queremos ver todo el contenido de la pagina, talvez es esta la razon por la cual se siente como si estuviera haciendo una pregunta negativa.

Talvez lo que quieren es que mas usuarios seleccionen SI (la misma opcion que debias seleccionar antes)? dado que el 99.99% de los usuarios no leen los dialogos y solo se van por la seleccion por default.

Quiero agradecer a David Daniel Arroyo por haberme conseguido el dialogo en español para IE8.

Monday, March 23, 2009

No deseas cerrar el programa? si, no, cancelar

Este articulo se refiere a buenas practicas de interface de usuario

El titulo de este post es por supuesto una exageracion de hacer preguntas negativas pero sirve como un ejemplo perfecto para ilustrar el punto
Pense que el titulo del post era una exageracion, pero despues de ver este dialogo...

No hagas preguntas negativas

Lo mas seguro es que confundiras al pobre usuario; los usuarios tienen miedo de responder preguntas para hacerlo aun mas confuso preguntando lo opuesto de lo que ellos estan tratando de hacer, es una regla basica y simple, pero aun veo bastante software (y desarrolladores) que usan preguntas negativas para entrada de datos.

El uso mas comun de opciones negativas es probablemente deshabilitado

solo compara:
Etiqueta X visible?
Campo X activo/habilitado?

a:
Etiqueta X Invisible?
Campo X Inactivo/deshabilitado?

Ese pequeño cambio hace mucho mas dificil poder contestar la pregunta correctamente; entonces hay que dar preferencia a Habilitado sobre Deshabilitado, Visible sobre Invisible, Activo sobre Inactivo, etc

El mismo concepto aplica cuando creas nombres para tus variables o metodos, en muy pocos casos el negativo es mejor opcion, asi que elige la opcion mas segura, es mas facil de procesar, estamos acostumbrados a contestar "preguntas positivas" y lo contrario nos hace pensar para poder contestar, lo cual lo hace no intuitivo.

Wednesday, March 11, 2009

La intuitividad de Apple: Los nuevos iPod shuffle (con control en codigo morse no integrado)

Ni siquiera tuve que hacer nada para esta (queja), estas son las instrucciones para operar el nuevo iPod shuffle, este no tiene ningun boton, sino que ahora los botones estan en los auriculares


Y estos son los botones del auricular



De nada sirve tener un solo boton si este hace 10 diferentes cosas, imagina si eso mismo lo hicieramos en una aplicacion

Actualizaciin: Gizmodo llama el control Codigo Morse, jaja, me gusta

Wednesday, March 04, 2009

La intuitividad de la Mac: El teclado

Las nuevas Macs traen un teclado que tiene 2 teclas "delete", pero eso no es el motivo de este post (aunque...).
Tengo algunos archivos en mi escritorio (asi se le llama tambien en la Mac?) que quiero borrar, asi que los selecciono y presiono una de las teclas delete... nada, intento la otra... nada... WTF!!

Despues de intentar con combinaciones de Ctrl, Option, Command, Shift finalmente encontre una que funciono... aunque ya olvide cual era.

Y eso es intuitivo?

Monday, March 02, 2009

La intuitividad de la Mac


Creo que yo he tenido la peor de las suertes que cualquier usuario halla tenido usando una Mac. Lo que ven en esta foto es Firefox en mi iMac. Cada vez que abro Firefox, eso es lo que abre, tengo que agarrar la pequeña ventanita por ahi entre los iconitos rojo y verde, arrastrarla hacia la izquiera en mi monitor, luego hacerla grande. Creo que esto comenzo a pasar desde que le quite un monitor alterno que tenia conectado.

Talvez solo soy yo, pero este comportamiento no me parece muy intuitivo.

Por cierto, queria editar la imagen para agregarle algo de contexto, pero no encontre ninguna manera obvia de editar la imagen, ni del menu de click derecho para abrir la imagen, ni tampoco una vez abierta la imagen; seguro que debe haber una forma de editar imagenes, pero aparentemente no es tan intuitivo como en Windows que solo puede hacer uno click derecho, editar y listo.

Sunday, March 01, 2009

Como acumular deuda tecnica rapidamente

Leyendo el post de Mario Chavez: Lo importante es que funcione, inmediatamente me recordo la metafora inventada por Ward Cunningham "Deuda tecnica", la cual es descrita en su primer parrafo por Martin Fowler como:
Necesitas agregar una pieza de funcionalidad al sistema. Identificas 2 maneras de hacerlo, una es rapida, pero sucia, y sabes que te hara la vida mas dificil en el futuro. La otra resulta en un diseño limpio, pero te tomaria mas implementarla.
Hay muchos factores por los cuales creo que la mayoria de los desarrolladores escogen la primera ruta de sacarlo rapido, y "despues lo arreglo"; por supuesto que ya sabemos que el luego nunca llega, y a eso es precisamente a lo que se le denomina la deuda tecnica; vamos dejando las cosas para despues, y los sistemas se van enredando mas, el codigo se vuelve mas complejo, y al hacer cambios muchas veces se introducen nuevos errores, por la naturaleza misma de un codigo mal estructurado.

Esta deuda, como tal, se tiene que pagar de alguna manera, y mientras no se pague en su totalidad tendremos que pagar intereses; Mario describe algunos puntos como el costo de usar la metodologia de "solo haz que funcione"
  • Es muy difícil entender el código, posiblemente únicamente la persona que lo desarrolló, es el "puede" tener un entendimiento aceptable.
  • Existe una mayor posibilidad de tener "bugs" extraños y difíciles de duplicar y corregir.
  • El realizarle cambios al programa se vuelve cada vez mas complejo, porque no entendemos hasta que punto esos cambios van a afectar otras áreas de nuestro programa.
  • No hay forma de reproducir situaciones muy particulares que ocurren con nuestro software y si este inter-actua con otro mas, lo mas común es culpar al otro software.
  • Inicialmente quedamos "bien" con el cliente por entregar el software a tiempo, a la larga los errores y fallas de nuestro software nos ponen en una situación no muy buena, y si a esto le agregamos que le cobramos al cliente por arreglar nuestros "errores", pues todavía peor.
Este puntos, entre otros, son referidos en la metafora de la deuda tecnica como el interes que tenemos que pagar haber escogido la ruta facil y hacer que algo funcione sin preocuparnos por tener un codigo limpio.

La metafora se adapta muy apropiadamente al desarrollo de software, estoy completamente seguro que cualquiera que lea esto podra identificar su propia deuda tecnica, yo diria que no es opcional, de una u otra manera todos incurrimos en esta, la diferencia seria simplemente quien se endeuda mas y quien se endeuda menos.

Te resulta dificil hacer cambios al software? Solo hay una persona que puede hacer cambios a "ese" sistema? No entiendes el codigo? Tienes problemas al pasar el codigo a produccion?
Todos esos son sintomas de que estas pagando la deuda tecnica. Pagar los intereses es doloroso porque es trabajo extra que en muchos casos te lleva a endeudarte aun mas.

Una vez que estas en deuda, no hay de otra, hay que pagar, y hay formas de ir pagando, pero mejor aun, hay forma de minimizar la deuda en un principio; ya hablaremos de eso.