Sunday, August 2, 2009

Linus Torvalds era ágil desde 2004!

Una frase de Linus Torvalds (el creador de Linux):

“Nadie debe empezar un proyecto grande. Empieza con uno pequeño y trivial y nunca esperes que crezca; si lo haces solamente sobre diseñarás y generalmente pensarás que es más importante de lo que lo es en esta etapa. O peor, puedes asustarte por el tamaño de lo que tu esperas que crezca. Así que empieza pequeño y piensa en los detalles. No pienses acerca de la foto grande y el diseño elegante. Si no resuelve una necesidad inmediata, seguramente está sobre-diseñado. Y no esperes que la gente salte a ayudarte, no es así como estas cosas funcionan. Primero debes tener algo medianamente usable y otros dirán "hey, esto casi funciona para mí" y se involucrarán en el proyecto”.

Si bien es un comentario orientado a los desarrollos open source, la primer parte del texto aplica 100% a las metodologías ágiles.

Fuente: http://en.wikiquote.org/wiki/Open_source

Sunday, May 3, 2009

Introducción a las metodologías ágiles

En el siguiente link podrán encontrar la presentación que usé para el seminario de Introducción a las Metodologías Ágiles, dictado en el MUG en mayo de 2009.

Saturday, May 2, 2009

¿Por qué usar un Issue Tracker?

Sigo con mis listas de razones sobre las herramientas. En este caso un Issue Tracker.

Quizás deba empezar por una pregunta más básica: ¿qué es un issue tracker? Acá tienen una buena explicación, aunque en inglés.
La respuesta a esta pregunta puede simplificarse a su traducción: el seguimiento de ítems de trabajo.

Al utilizar una herramienta como Jira, Bugzilla, Trac, obtenemos los siguientes beneficios:
  • un único punto de información de cada ítem de trabajo. No hay respuestas parciales en distintos mails y/o documentos.
  • un punto centralizado para todas las pruebas y bugs detectados de una aplicación. Al ser web, se evita el problema de planillas que se van actualizando simultáneamente en distintas versiones.
  • un punto objetivo de status actual de una iteración. La información que se visualiza en un issue tracker, si está actualizada es objetiva. Desaparecen las respuestas ambiguas de "vamos bien" o los porcentajes dudosos: estamos en un 75% del desarrollo completado.
  • poder publicar a los usuarios/clientes, una herramienta para que ellos hagan su propio seguimiento y/o reporte de incidencias.
  • poder revisar asignaciones y carga de trabajo de cada miembro del equipo
  • poder saber cuanto nos está faltando de tiempo estimado de los issues pendientes para terminar la iteración
  • poder llevar diverso tipo de estadísticas, por ejemplo: esfuerzo bug/esfuerzo total iteración, burndown chart, tiempo promedio de corrección los bugs, etc.

Thursday, April 23, 2009

Mapa de desarrollo Open Source

redhat.com publicó un mapa de desarrollo open source (http://www.redhat.com/about/where-is-open-source/activity/) según un estudio de Georgia Institute of Technology (Georgia Tech). Esto se basa en la cantidad de usuarios y proyectos open source que están ocurriendo en el momento.

Algunas curiosidades:
  • El primer país es Francia, seguido de Alemania y luego España.
  • EUA está en la 9a posición
  • China: 15
  • India: 23
  • Dentro de Latinoamérica, los principales son: Brasil 12, Venezuela 34, Perú 36 y Argentina 37

Tuesday, April 21, 2009

Jira + Confluence por u$s 5 cada uno

A todo aquel que esté interesado en conocer una excelente herramienta de issue tracking, le recomiendo acceder a este link (http://www.atlassian.com/) y acceder al Atlassian $timulus Package. La idea es que por 5 días (hoy finaliza el 4o) podremos acceder a la versión full de JIRA (aunque limitada la cantidad de usuarios a 5) por un año, renovable por otros u$s 5.

Creo que es una excelente forma de probar el producto en productivo.

Tuesday, April 14, 2009

Cada mañana en el Africa

Traigo a colación un proverbio africano que encontré en el libro: The world is flat de Thomas L Friedman, que dicho sea de paso, se lo recomiendo a cualquiera que quiera entender el mundo de los negocios, principalmente asociados a la tecnología, de hoy día.

Cada mañana en África, se despierta una gacela. Sabe que tiene que correr más rápido que el león más rápido o será atacada.
Cada mañana se despierta un león. Sabe que tiene que correr más rápido que la gacela más lenta o se morirá de hambre.

No importa si uno es un león o una gacela, cuando el sol sale, más vale que estés corriendo...


¿Hay algo más ágil que esto? ¿Ven el paralelo que veo yo con las metodologías ágiles?

Monday, April 6, 2009

Razones por las que sirve una wiki

En general tendemos a pensar que una wiki sirve para volcar contenido del estilo de Wikipedia. Sin embargo, es una herramienta muy interesante para las empresas.
A continuación vuelvo algunas ideas y experiencias que tuve al utilizar una wiki. Salen sin orden, cada uno es libre de reorganizarlo según su criterio:

  • Punto universal de información de la empresa. Cuantas veces, sobre todo en empresas pequeñas, nos encontramos en la necesidad de informar el número de CUIT, Ingresos Brutos, número de Fax (alguien sigue teniendo uno?), nombre con el que tienen que ser emitidos los cheques, o cualquier otra información que va más allá de los proyectos y que es común y necesaria para toda la empresa: Teléfonos de ART, Noticias, etc. El utilizar la wiki democratiza la generación (algunas herramientas permiten moderar quién carga los contenidos) y consumo de la información.
  • Registro de Documentación: participé de un proceso de certificación ISO-9001 donde acordamos con la consultora que nos apoyó en el proceso que toda la documentación: definición de procesos, templates, etc estaría en una Wiki. Parte de las condiciones consistían en que podamos imprimir la información y que siempre quede registro de quién realizó modificaciones en la documentación de los procesos y quién la aprobó. En el caso de wikimedia, contábamos con ese feature.
  • Intercambio de ideas, comunidad on-line: un poco haciendo referencia a un post anterior, el mejor punto para intercambiar threads de información nunca son los mails. Uno no puede sumarse, sacarse de las listas de distribución fácilmente...
  • Funcionalidad como FAQ, Políticas, Mejores Prácticas, Inducción a personal que se incorpora en la empresa, Instrucciones en general

Wednesday, April 1, 2009

Empresas opt-in

Leo por ahí sobre empresas opt-in vs empresas opt-out. ¿Cuál es básicamente la diferencia? El nivel de compromiso que tienen sus empleados con los temas. En las empresas opt-in, participan activamente a través de wikis (este artículo habla favorablemente de una wiki licenciada, porque está escrita por uno de sus creadores :), se suscriben a los temas que les interesan, responden sin jerarquías ni necesidad de autorizaciones.
¿Qué herramientas utilizan las empresas opt-out? el e-mail. No es que el e-mail sea una mala herramienta… pero cuantas veces termina un día y sentimos que lo único que hicimos fue leer y responder mails? ¿Cuántos de esos mails que leemos no necesitan de nuestro seguimiento… simplemente estamos copiados para "estar notificados"? ¿Cuántas veces tenemos nosotros mismos esa conducta?
Los mails son invasivos: una vez que somos incluidos en una lista, tenemos que pedir expresamente (a través de la lista) que se nos excluya, y la respuesta natural: "responder a todos" nos mantiene en la cadena de mails ¿Cómo podemos hacer para incluirnos en una cadena de mails que nos interesa? ¿Cómo siquiera podemos enterarnos de que alguien la inició?

En una empresa opt-in, los empleados buscan las conversaciones de las que quieren ser parte. Todos pueden ver todo tipo de conversaciones, es transparente. En una wiki, se pueden iniciar comunidades de interés, comentarios y discusiones, suscripciones, etc.

¿Usa tu empresa alguna wiki? Quizás sea el momento de proponerlo…

Thursday, March 26, 2009

Agile Open 2009 - Herramientas

Una de las sesiones en la que participó trató sobre herramientas ágiles. A continuación les paso la lista:

Nombre Propósito Tecnología a la que aplica URL
Findbugs Analiza código estático buscando bugs JAVA http://findbugs.sourceforge.net/
Stylecop Analizador estático de código para verificar que se cumplan estilos y reglas de consistencia .NET http://code.msdn.microsoft.com/sourceanalysis
Emma Code Coverage JAVA http://emma.sourceforge.net/
Greenhopper Plugin (licenciado) para JIRA (licenciado). Permite entre otras cosas, tener un scrum board * http://www.greenpeppersoftware.com/en/
Bugtracker Issue tracker desarrollado en .NET .NET http://ifdefined.com/bugtrackernet.html
Scrumworks Project Management con SCRUM (licenciado, la versión gratuita no es buena) * http://www.danube.com/scrumworks
Versionone Planificación de proyectos ágiles (licenciado) * http://www.versionone.com/
Xplaner Planificación de proyectos para equipos XP * http://www.xplanner.org/
Scrumlite Planificación de proyectos con scrum * http://www.codeplex.com/ScrumLite
Mingle Planificación ágil de proyectos (licenciado) * http://studios.thoughtworks.com/mingle-agile-project-management
Lighthouse Issue Tracking * http://lighthouseapp.com/
Draconet Integración continua .NET http://draconet.sourceforge.net/
Testfram Testing contínuo * http://www.iua.upf.edu/~parumi/testfarm/
SVN Control de version * http://subversion.tigris.org/
JIRA Issue tracker (licenciado) * http://www.atlassian.com/software/jira/
TRAC Issue tracker + Wiki * http://trac.edgewall.org/


De ellas, sólo SVN, JIRA y TRAC las uso con regularidad con excelentes resultados. Por las demás, no puedo opinar mucho más... Bugtracker la quise instalar, pero tenía muchos requisitos para servidores de hosting virtual.... Tuve que seguir con TRAC y aprender a configurarlo!

Sunday, March 15, 2009

Open Space en Agile Open 2009

Una de las cosas que me llamó la atención sobre Agile Open Buenos Aires 2009 fue su organización. La misma se basó en la "autoorganización".

Hablando con Alan Cyment, me comentó de donde viene el método: Open Space Technology
Si bien al principio parecía todo caótico y desordenado, un grupo de 100 personas pudo establecer por consenso general los temas de propio interes.

La jornada inicial consistió en los siguientes pasos:
  1. Cada asistente definía un tema en algo así como 30 segundos. Debía ser lo suficientemente claro para que no haya dudas y para que quede en la memoria de los demás asistentes para después darle sus votos.
  2. Al no surgir más temas, cada uno se levantó y fue hasta el pizarron donde se habían pegado los stickers con los temas elegidos y le sumaba un voto con el mecanismo "Puntaje del Truco"
  3. Al haber votado todos, los que querían, tomaban los stickers y lo pegaban en una grilla de salas y horarios: así de simple. Los que habían planteado cada tema, podían reorganizar el horario y sala, dado que como condición, ellos debían ser los disparadores de la discusión.
y Listo...

Thursday, January 15, 2009

Curso de Introducción a SCRUM

Este es el link es la presentación del curso de dos jornadas que realicé de Introducción a SCRUM en el mes de Enero.

Wednesday, January 14, 2009

Agile Open Buenos Aires 2009

Ya está disponible la inscripción a Agile Open Buenos Aires 2009.

Algunas características interesantes:
  • No hay oradores preestablecidos, se proponen temas a discutir
  • Por estar planificado para el viernes 6 de marzo desde las 18 y el sábado 7 de marzo todo el día, no hay posibilidad de que complique nuestras agendas laborales.
  • Solo habrá lugar para 100 personas, por lo que hay que apurarse.
Acá el link para registrarse: http://agileopenbsas2009.wetpaint.com/page/Inscripción