Scrum - Introducción a las metodologías ágiles

He preparado una presentación de introducción a las metodologías ágiles en particular y a Scrum en profundidad.
No se basa en la experiencia personal porque, tristemente, todavía no he participado en ningún desarrollo que la emplee (¡pero espero que eso cambie pronto!).
Aprovecho para recomendar muy especialmente una de las referencias: "Scrum and XP from the Trenches", un extenso (~120 páginas) y detallado documento sobre cómo aplican Scrum en una empresa.
Agradeceré enormemente cualquier crítica, corrección o sugerencia sobre el contenido de la presentación :).

Posted by Juan Ignacio Sánchez Lara 19:21 Enlaces a esta entrada  



12 segundos de oscuridad

Te encuentras con un problema. Analizas la traza que deja la excepción. Pones puntos de ruptura y navegas por la solicitud. Te metes en las tripas del código abierto que utilizas. Sales de ellas pero dos capas más arriba hay más código abierto. No localizas el problema. Miras la documentación de referencia. Vuelves a darle una vuelta, localizas el problema, y lo solucionas.

No sólo has resuelto el problema, sino que has aprendido sobre todo lo que utilizas, y si eres algo exigente contigo mismo, cada vez lo harás más rápido.Lo importante no es el momento de iluminación en el que resuelves el error, sino los doce segundos de oscuridad anteriores. El camino es lo importante.

no es la luz
lo que importa en verdad
son los 12 segundos
de oscuridad
- Jorge Drexler

Posted by Juan Ignacio Sánchez Lara 19:36 Enlaces a esta entrada  



¿Pueden el iPhone y Android alterar la conquista del escritorio?

Llevamos años hablando sobre la hegemonía de Windows en el "escritorio", sin que ésta haya variado sustancialmente. Aunque la cuota de mercado de cada sistema operativo es un dato muy difícil de calcular, en hitlinks podemos ver unas estadísticas para hacernos una idea al menos del orden de magnitud del que estamos hablando, y la tendencia.



En septiembre las diferentes versiones de Windows han acaparado un 89%, Macintosh un 8%, y GNU/Linux no llega al 1% (la nebulosa "otros" se lleva el 2%). En resumidas cuentas, dominio absoluto de Microsoft.
Si observamos la tendencia del último año vemos que Windows ha perdido aproximadamente un 1.6%, del cual 1.4% se va para Macintosh y un 0.3% para Linux (perdonad por los redondeos). La tendencia es levemente negativa para Windows.
Si tomamos más datos disponibles, podemos ver que la cuota de Windows apenas había oscilado desde octubre de 2006, a noviembre de 2007, con un 90.5x% en ambos, mientras que Macintosh aumentaba un 1.6%.
En mi opinión, esta tímida tendencia de diversificación se debe al iPhone. La integración entre los diferentes productos Apple es uno de los objetivos principales, y los usuarios pueden verse animados a cambiar gracias al dispositivo. Esto, unido a una siempre creciente importancia de la Red va haciendo a los usuarios menos dependientes del sistema operativo.
Siempre hemos tenido Java como herramienta multiplataforma. Ya tenemos (en beta), Air (la de Adobe, con el Twhirl como abanderado), y Mono 2.0 (la implementación libre de .NET) acaba de ser liberado. Está claro que la publicación de Chrome va en ese sentido. Tenemos también Firefox, Opera, Picasa, Google Desktop, The Gimp, OpenOffice...
¿Conseguirá la penetración en mercado del iPhone, Android y Chrome que la gran masa de usuarios se comience a plantear que hay alternativas?

Posted by Juan Ignacio Sánchez Lara 16:57 Enlaces a esta entrada  



Antipatrón: pensar en cambios

A diario nos enfrentamos con problemas, y con frecuencia caemos una y otra vez en los mismos errores, siguiendo unas conductas que nunca llevan a nada bueno pero que nos obstinamos en repetir. La wikipedia recopila algunos de estos antipatrones. Me gustaría añadir uno que suelo ver y que también considero negativo.


En caso de error pensar qué hemos cambiado
A veces (con demasiada frecuencia) nos encontramos con que algo "ha dejado de funcionar". En mi opinión, buscar cambios es una tarea inútil:
  • Parte de que la premisa de que antes estaba bien, lo cual no tiene por qué ser cierto. Podría ser que nuevos datos hayan hecho aparecer un fallo que antes estaba oculto, podría haber cambiado algo en el servidor, en la configuración... 
  • Rara vez se programa solo, así que lo normal es que varias personas pudiesen estar implicados en una misma línea. 
  • Aún suponiendo que antes estaba bien, para comparar hay que localizar una versión correcta y analizar el cambio, y ver por qué se hizo... 
En mi opinión es mucho mejor centrarse en el error para localizar el problema.

Corolario: hay que leer las excepciones, y depurar, incluso a través del código de las librerías.

Posted by Juan Ignacio Sánchez Lara 18:52 Enlaces a esta entrada