Curso de introducción de CSS
Hemos publicado el material del curso que realizamos Ana y yo el pasado martes 26 de febrero en la web del Capítulo de la ACM. Cualquier comentario será bien recibido
“The Ultimate Student Resource List” en lifehack.org
Con los exámenes a la vuelta de la esquina Lifehack.org nos ofrece una selección de los mejores recursos para estudiantes:
The Ultimate Student Resource List
Solamente se echa en falta el gran clásico de El rincón del vago.
Wii, mucho más que una consola
Lo realmente curioso de los ingenieros es que nunca se contentan con algo que simplemente funciona, siempre tienen que ir un paso más allá. Este es el caso de Johnny Chung Lee y la Wii.
En su sección de proyectos Wii este simpático personaje explica, de forma bastante clara, las posibilidades a la hora de trabajar con la interacción con el usuario. Uno de los ejemplos a destacar es un interfaz parecido al propuesto en la película de Minority Report, como se puede ver en el siguiente vídeo:
Pero el caso realmente impresionante es el control de la perspectiva del usuario y el efecto 3D que consigue recrear. El siguiente vídeo es de obligada visualización:
Simplemente un pequeño genio
Jugando con DCOP, cambiando el fondo de pantalla
Si hacéis uso de la utilidad “Slide Show” de kdesktop para gestionar el fondo de pantalla puede que esta entrada os sea útil.
El problema radica es que una vez fijado el directorio del que elegir el fondo no se puede hacer un “pasa al siguiente”. O al menos yo no lo he encontrado
La posible solución era probar haciendo uso de DCOP y ha resultado tan sencillo… en fin, aquí tenéis el comando para forzar un avance dentro de la colección:
$ dcop kdesktop KBackgroundIface changeWallpaper
Metodología de desarrollo CADT
Leyendo Building Scalable Web Sites de Cal Henderson, un libro bastante curioso por cierto, encontré una referencia a la metodología de desarrollo CADT o “Cascade of Attention-Deficit Teenagers” de Jamie Zawinski.
La idea fundamental radica en “ignorar los bugs abiertos contra una funcionalidad”, es decir, los errores prácticamente no se resuelven.
El artículo del señor Zawinski se basa en un caso real ocurrido con los errores reportados contra los programas de GNOME 1.4 que fueron completamente ignorados hasta la versión 2.0 en la que se consideró que los bugs habían sido solucionados automáticamente.
El objetivo básico de esta metodología es mantener al programador lo más “contento” posible. Esto se traduce en que el programador se dedica a implementar nuevas funcionalidades y no peleándose con extraños errores.
Las ventajas son evidentes:
- Es mucho más sencillo planificar el tiempo necesario para implementar cierta funcionalidad que estimar la cantidad de horas que se van a invertir en solucionar un error.
- “Crear” nuevas funcionalidades es una actividad creativa más reconfortante que la depuración, que tiende a ser repetitiva y poco gratificante.
- No hay gasto en el cambio de contexto. No es necesario sacar al programador de su contexto de trabajo para llevarlo a un trabajo que realizó hace unos meses para solucionar un problema.
Las desventajas: evidentemente esto no es serio. No podemos aplicar esto a un desarrollo de aplicaciones críticas o a clientes que exijan parámetros de calidad estrictos.
A primera vista podría pensarse que es más una broma que una metodología, y no sería un pensamiento desacertado… Ahora bien, conociendo la vida real en la que los programadores con tal de eliminar un bug asignado son capaces de recurrir al “if (error) return 0;” o relanzar la excepción hacia arriba no está tan mal. Al menos ya sabes que la calidad va a dejar mucho que desear
Llevar a cabo esta metodología es muy sencillo, simplemente se habilita un issue-tracking que contabilice el número de bugs abiertos contra cierta funcionalidad. Cuando se alcanza el valor umbral la funcionalidad se reimplementa desde cero.
El resultado es que el programador siempre está pasando un buen rato creando software y los usuarios son sorprendidos con nuevas funcionalidades cada cierto tiempo.
Como menciona el señor Henderson es la estrategia que muchos sitios “Web 2.0″ están siguiendo más o menos oficialmente. Esta metodología merece un poco de reflexión, nunca se sabe.