Alpha's Manifesto

La madriguera de una insignificante figurita blanquinegra.

Joel Test para programadores

Simpleza autocrítica

Para quienes no conocen el Joel Test, es una prueba muy simple, solo 12 preguntas que nos guían a darnos cuenta si nuestro equipo de desarrollo va por el buen camino o tenemos cosas que arreglar.

De ahí alguien preguntó si había una especie de Joel Test para la evaluación de un programador en particular, especialmente preguntas para hacer en entrevistas y para evaluar a gente de forma individual. Alguien mencionó que se podía trabajar con la Programmer Competency Matrix de IndianGeek, con la que ya he trabajado anteriormente. Aún así, no se ajusta específicamente a todas las características que alguien quisiera medir en un programador.

Al fin y al cabo, las respuestas no fueron muy iluminadoras, usuarios relacionados hicieron una pregunta en Quora sobre qué hay que preguntar a un candidato antes de contratarlo, las respuestas son un poco más interesantes y más allá del tema del entrevistado y la contratación, es interesante como ejercicio preguntarnos esas cosas a nosotros mismos y evaluar las respuestas.

Soy un zorrinito evaluado.

Web Application Design Patterns

Una librería de referencias de patrones de usabilidad

20120221-041526.jpgBueno, son las 4 AM y no puedo dormir. Acabo de terminar de leer el libro que venia leyendo lentamente desde hace tiempo ya, llamado Web Application Design Patterns, de Pawan Vora.

El libro en sí tiene el título muy bien puesto, porque realmente de eso se trata. Es una colección de patrones de diseño orientados a la usabilidad y la interfaz gráfica de las aplicaciones web. Para los que ya lo sabemos, recordaremos que los patrones son, como su palabra lo indica patrones. Son características en común y no soluciones definitivas ni detalladas de como aproximarse a una situación en particular.

Hablando de patrones en software, generalmente se los identifica de una forma muy común y muy particular. Cada patrón tiene un nombre que lo identifica, un problema particular que resuelve y una descripción de la solución básica a la que aproxima. La compilación de patrones que Vora hizo en este caso hace muy buen tributo de ese esquema y lo mejora en varios aspectos.

El libro se divide en varios capítulos que atacan temas comunes que merecen la atención en el desarrollo y la usabilidad de aplicaciones web, los cuales son:

  • Formularios
  • Autenticación de usuarios
  • Página principal de la aplicación
  • Navegación
  • Búsqueda y filtrado
  • Listas
  • Rich Internet Aplications
  • Aplicaciones Sociales
  • Internacionalización
  • Accesibilidad
  • Diseño visual
  • Librerías de patrones

Le doy crédito especial por la inclusión de esa última sección, en donde se definen las características que una librería de patrones (como este propio libro) debería tener, y se basa en varias librerías actuales en uso y recopiladas anteriormente por estudios al respecto.

En todas las secciones se muestran ejemplos, tanto de implementación como de uso real de esas características. Una gran mayoría de las veces se fundamentan los beneficios de estos patrones con estudios (las referencias están todas incluidas y detalladas al final del libro). Al mismo tiempo, están todos los conceptos explicados de una forma lo suficientemente detallada como para ser comprensible, lo suficientemente abstracta como para ser reusable y lo suficientemente clara como para ser entendida por no-programadores o diseñadores.

Una distinción que en este libro no se hace y me gustaría agregar como apreciación propia es que los patrones, como ya comenté, son soluciones a problemas determinados. No hay que confundirlo con buenas prácticas que, aunque cercanas, siempre conviene aplicarlas. El caso de los patrones es distinto, y de hecho, parecería ser imposible aplicar la totalidad de los patrones a cualquier sitio web. Ni siquiera los que están entre los ejemplos (Google, Apple, Mint, Facebook, Yahoo!, Basecamp, eBay, Amazon, y una larga lista de etcéteras) cumplen con la mitad de los patrones mencionados.

Volviendo al libro, lo recomiendo mucho como un libro de referencia. Está redactado como tal y no es una lectura ligera, pero vale la pena. 4 zorrinitos.

UPDATE 22/02: Tras pensarlo un poco más me dí cuenta que este libro no cubre una característica que si bien no está muy relacionada con la usabilidad, sí está relacionada con la experiencia del usuario, y ciertamente son patrones aplicados en web applications. Lo encerraría bajo la categoría de Performance, e incluiría cosas como caching de nivel aplicación, caching de nivel usuario, AJAX, conexiones persistentes, preprocesamiento de resultados. Son todas cosas que aplican como patrón a resolver un problema en particular en una situación en particular, siendo lo suficientemente abstractos como para ser aplicados en una variedad de casos. Posiblemente sería más difícil encontrar ejemplos (porque muchos sistemas no cuentan cómo es que funcionan por dentro), pero creo que sería bueno haberlos cubierto.

Soy un zorrinito usable.

Schema.org

Repositorio público de esquemas de markup

En el punto intermedio entre estándares y SEO está Schema.org, un sitio que haciendo uso de los estándares de microdata permitiría mejorar la meta-información que un sitio está aportando, específicamente para hacerlo más apropiado a los motores de búsqueda. La página de Getting Started nos da una buena idea de qué trata esto.

Según cuentan, Google y otros proveedores de búsqueda están teniendo mucho en cuenta estos formatos de metadatos, llamados micro-formatos, y justamente podemos apreciar muchos de ellos y su estado de aprobación en Microformats.org.

Soy un zorrinito micro-formateado.

¡Volvieron los comentarios!

...y volvieron para quedarse!

Eso, ya pude habilitar los comentarios (y quedarom medianamente arreglados), hagansé un festín de feedback para decirme qué piensan. Acuerdensé de comentar en todo lo demás, toda opinión es bienvenida (no por eso aceptada, jeje).

Soy un zorrinito comentado.

¿Qué loggear de los usuarios?

Orientado a mejorar la experiencia del usuario

Un problema común en cuanto a mejorar la experiencia del usuario es que muchas veces no se sabe cuál es el problema, o cómo los usuarios interactúan con la aplicación. Si bien algo de eso mencionamos cuando hablamos de 22 herramientas para mejorar la usabilidad, hoy el problema es interno de la aplicación, y se trata de loggear las acciones de los usuarios para identificar qué necesita mejora.

Entonces, ante la pregunta: ¿Qué vale la pena loggear de los usuarios para ganar perspectiva de su comportamiento? la respuesta es, como muchas veces, depende. La razón es que loggear es caro, loggear todo es imposible y solo resultaría en un montón de datos sin correlación a nada. Los detalles de qué aproximaciones se pueden tomar están también entre las respuestas a esa pregunta.

Soy un zorrinito loggeado.

Readfa.st

Un servicio online para aprender a leer rápido

Readfa.st logo Hace poco me crucé con una pregunta que cuestionaba la utilidad de un servicio llamado Readfa.st, resulta que la respuesta era que sí, que era realmente efectivo.

ReadFa.st es un sitio que nos toma una prueba rápida para probar qué tan rápido podemos leer, para luego guardar esa velocidad personal. La forma en la que mide la velocidad es ocultando todo el texto y mostrando una sección visible que se va deslizando para hacer visible otra parte del texto (ocultando luego la anterior). De esa forma, tenemos que ir leyendo dentro de esa franja o nos perdemos parte de lo que estábamos leyendo. La prueba se trata de leer un artículo corto y responder unas preguntas de comprensión al respecto.

ReadFa.st default profile prictureLuego, readfa.st nos permite agregar un bookmarklet a nuestros bookmarks, para agregar artículos que queramos leer luego. Cuando ingresamos al servicio y vemos nuestro listado de artículos a leer, podemos seleccionar uno para entonces leer el texto de la misma forma. Es un poco molesto para leer en general, pero es muy bueno para entrenar nuestra velocidad de lectura.

PD: Cabe aclarar que tienen un sistema de badges y de experiencia según cuánto uno lea. Síp, están interesados en que aprendamos y quieren hacerlo entretenido.

Soy un zorrinito rápido.

22 herramientas para probar usabilidad

Compendio de herramientas para mejor usabilidad

En mashable tienen un artículo muy interesante llamado 22 Essential Tools for Testing Your Website’s Usability. Cane destacar que el artículo no sólo expone las herramientas sino que además las categoriza y da una pequeña explicación de cada categoría, para que sepamos exactamente qué queremos medir en cada caso. Las categorías son: Análisis de tareas de usuario, legibilidad, navegabilidad, accesibilidad, velocidad y experiencia de usuario.

Soy un zorrinito usable.

Chronicle

What are you capable of?

I am the Apex Predator.

Este domingo me pasé por el cine y pude ver esta película que hace tiempo me llamaba la atención. El trailer nos cuenta gran parte de la historia: tres chicos por alguna razón desconocida, ganan poderes telepáticos y cuando aprenden a usarlo se vuelven realmente poderosos. Uno de ellos (por razones que no contaré para no arruinar la película) comienza a hacer mal uso de ellos y está en la tarea de los otros dos lograr controlarlo.

¿Les suena similar? Aquellos que hayan visto Akira se sentirán identificados. Desafortunadamente, no lo encontré tan épico como Akira, pero mucho en sí es similar. Me habría gustado ver más énfasis en esa sensación de poder ilimitado y de superioridad, pero el foco fue dado a otras circunstancias. La excusa era perfecta para efectos increíbles, sonido retumbante y batallas épicas. No se dio tan así, pero la historia consistente y creíble lo compensa mucho. De alguna forma la línea argumental supo mantener mucho los pies en la tierra (referencia a la película) y se mantiene atrapante.

No puedo decir más sin arruinarla. Le doy 4 zorrinitos.

Soy un zorrinito poderoso.

The Manga Guide to the Universe

Un manga introductorio a la astrofísica

Hace mucho tiempo que — ya ni me acuerdo dónde — encontré este libro y me llamó la atención por la extraña mezcla. ¿Manga y astronomía/astrofísica? Quedó un rato esperando en mi estantería virtual y la semana pasada le di una mirada. El libro es corto (unas 300 páginas), así que no me costó terminarlo. Además, muchas de las páginas son manga en sí, con lo que se lee realmente rápido.

Comenzó de forma algo mediocre. No era ni buen manga ni buen libro de astronomía. Parecía una introducción para chicos de astronomía, con poco detalle y con mucho énfasis en cosas vistosas. Además, la historia en el manga era realmente incoherente, en cuanto a ser poco divertida, demasiado estereotipada y nada interesante.

Mientras seguí leyendo, la profundidad científica se dejó evidenciar bastante más. Está totalmente construido con alegorías interesantes, y se llegan a tocar temas profundos (aunque muchos otros se dejan de lado), como la constante cosmológica, la materia oscura y la geometría del universo. La historia de los personajes involucrados no se pone mucho mejor, pero no llega a ser completamente aburrida.

Al fin y al cabo, valió la pena. Cabe aclarar que la editorial tiene una buena cantidad de estos tomos introductorios a temas de ciencias en su catálogo, como The Manga Guide to Calculus / Databases / Molecular Biology / Relativity / Statistics. Quizá le de una mirada a alguno de esos en el futuro.

Le doy 3 de 5 zorrinitos.

Soy un zorrinito manga.

¿Cuántos colores existen?

Seis: Blanco, negro, rojo, verde, azul y amarillo. (?)

Un link interesante que me encontré pregunta ¿Cuántos colores existen? y se presta a una buena cantidad de respuestas.

Alguien respondió desde un punto de vista físico, apropiado a la temática del foro, y su respuesta es que existen ∞ colores, interesante número. Se basa en las propiedades de las frecuencias y su posible combinación. Aunque se discute luego sobre la real aplicación de la longitud de Planck y de la longitud Hubble para aplicar límites, ese número no cambia realmente.

Otro se aproximó más al lado médico, especificando la resolución de los distintos fotoreceptores oculares. En este caso la respuesta sería muy variable, pero aproximándose al billón de colores.

Alguien más introduce la teoría del color y el diagrama McAdam para hablar de una cantidad pequeña, pero no definida, junto con una última, bastante cercana, desmiente las anteriores diciendo que nuestra resolución de distinción de colores es limitada (aunque variable) y que el espectro visible es también limitado, lo que significa que lejos de ser infinito, es también una cantidad bastante pequeña.

Soy un zorrinito decolorado.