blog de jorge muria not just another agile weblog

4
Not Just another Agile weblog Voy dar mi pequeña aportación sobre una técnica que descubrí la semana pasada pero que considero un must-know para todos los desarrolladores de software, la tecnica pomodoro. Hay otros blogs como el de David Bonilla [1] que ya lo explican (aquí [2] o aquí [3] y ahora también aqui [4] ) y además lo hacen con una gran calidad de expresión. Más que una tecnica de gestion de tareas personales como el Autofocus [5] , la tecnica pomodoro da las pautas necesarias para provocar un estado mental de máxima concentración llamado flujo. Pero bueno,.. empezamos por el principio. ¿A quién no le suena una típica mañana en la mente de un programador? 9:00 – Mmmm. Buenos dias… voy a ver mi correo 9:30 – (Unos cuantos correos y webs despues) Voy a programar !!… 9:35 – No he cogido agua. Voy a por mi vaso. 9:36 – ¿Por dónde iba…? Ah sí…. 9:45 – Un correo. Voy a mirarlo. A ver… Si, ya sé cual es el problema del cliente. No ha encendido el ordenador. Una respuesta concisa y educada. 9:50 – ¿Tenía ya el test unitario terminado?. Ah, no. que faltaba añadir este dato de entrada. 9:52 – Voy a servicio… Después de muchas idas y venidas de nuestra saltarina mente, al final del día tenemos la tipica sensación de que no hemos parado pero que no hemos hecho nada productivo. Esto ocurre tanto a los programadores como a cualquier persona que tiene que realizar un trabajo en el que necesita una concentración mental, por ejemplo a los estudiantes. Hace una semana hice una charla sobre el método en la primera reunión del Agile Spain [6] en Alicante y se apuntó la pareja de uno de los asistentes que era estudiante. Estudiante era también el creador de la técnica Pomodoro, Francesco Cirillo cuando en 1992 vió que tanto él como sus compañeros de estudio no eran capaces de estar concentrados sin levantar la cabeza más de 10 minutos seguidos. Para intentar mejorar

Upload: manuel-pizarro

Post on 09-Jun-2015

93 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Blog de jorge muria   not just another agile weblog

Not Just another Agile weblog

Voy dar mi pequeña aportación sobre una técnica que descubrí la semana pasada pero

que considero un must-know para todos los desarrolladores de software, la tecnica

pomodoro. Hay otros blogs como el de David Bonilla[1] que ya lo explican (aquí[2] o

aquí[3] y ahora también aqui[4]) y además lo hacen con una gran calidad de expresión.

Más que una tecnica de gestion de tareas personales como el Autofocus [5], la tecnica

pomodoro da las pautas necesarias para provocar un estado mental de máxima

concentración llamado flujo. Pero bueno,.. empezamos por el principio.

¿A quién no le suena una típica mañana en la mente de un programador?

9:00 – Mmmm. Buenos dias… voy a ver mi correo

9:30 – (Unos cuantos correos y webs despues) Voy a programar !!…

9:35 – No he cogido agua. Voy a por mi vaso.

9:36 – ¿Por dónde iba…? Ah sí….

9:45 – Un correo. Voy a mirarlo. A ver… Si, ya sé cual es el problema del cliente. No ha

encendido el ordenador. Una respuesta concisa y educada.

9:50 – ¿Tenía ya el test unitario terminado?. Ah, no. que faltaba añadir este dato de

entrada.

9:52 – Voy a servicio…

Después de muchas idas y venidas de nuestra saltarina mente, al final del día tenemos

la tipica sensación de que no hemos parado pero que no hemos hecho nada productivo.

Esto ocurre tanto a los programadores como a cualquier persona que tiene que realizar

un trabajo en el que necesita una concentración mental, por ejemplo a los estudiantes.

Hace una semana hice una charla sobre el método en la primera reunión del Agile

Spain[6] en Alicante y se apuntó la pareja de uno de los asistentes que era estudiante.

Estudiante era también el creador de la técnica Pomodoro, Francesco Cirillo cuando en

1992 vió que tanto él como sus compañeros de estudio no eran capaces de estar

concentrados sin levantar la cabeza más de 10 minutos seguidos. Para intentar mejorar

Page 2: Blog de jorge muria   not just another agile weblog

esta marca (10 minutos) usó un reloj de cocina con forma de tomate y lo programó 25

minutos para que le sonara cuando habia terminado su sprint de concentración. Se dió

cuenta que era algo que funcionaba e investigó para depurar esta ya famosa técnica.

Todos los detalles estan en su web oficial[7].

¿Serías capaz tu de estar 25 minutos seguidos

programando/analizando/testeando/estudiando…. sin cambiar tu mente de asunto? Si

lo consigues ¡Felicidades !. Seguramente te habrás dado cuenta cuanta de que estas

siendo productivo, que el trabajo avanza y es más, que estas empezando a disfrutar de

tu trabajo. Este estado mental es llamado flujo[8] y es muy dificil de conseguir en

circunstancias normales. Lo normal es que al primer intento no consigas completar un

pomodoro y que una de las dos tipos de interrupciones te ataque en mitad de uno.

Francisco Cirillo define como interrupciones internas las que tu mente te lanza (”hay

que ir a por agua”, “vamos a ver ese email que nos han enviado”, “tengo pis”, “voy a

llamar a mi chica”…). Las interrupciones externas son las que producen otros agentes

externos, dicese jefes o compañeros (”tienes que ponerte en contacto con este cliente”,

“¿me ayudas a corregir esto?”, “¿Qué piensas de esta decision de diseño?…”). La

tecnica dice que esas interrupciones hay que anotarlas en una lista de tareas no

previstas e intentar seguir con la mente enfocada en la tarea en cuestión. Puede parecer

una utopía pero la mayor parte de las tareas pueden retrasarse hasta que estos 25

minutos terminen. Es importante demostrar a esos agentes externos que sus peticiones

van a ser igualmente satisfechas, sólo que cómo máximo 25 minutos más tarde.

¿Qué pasa cuando suena el reloj y han pasado los 25 minutos? Pues anotas una

crucecita al lado de la tarea en la que estás o que has completado y descansas. Te

mereces un descanso de 3 a 5 minutos en los que puedes ir a por agua, al aseo, ver ese

video de youtube que te han enviado, mirar por la ventana,… Lo que quieras que no

requiera concentración mental. Si eres un samurai total del pomodoro y completas ¡4

pomodoros! sal a la calle, respira hondo y sientete orgulloso por haberlo conseguido

mientras te tomas un café, te comes el almuerzo o lo que te dé la gana.Tienes de 15 a 30

minutos de descanso por tu alta productividad. Te lo mereces.

¿Qué pasa cuando llega una interrupción que no puedes simplemente apuntarla e

ignorarla? Pues que te han roto el pomodoro. Con una mezcla entre resignación y

pequeño cabreo, vuelves a poner el reloj en marcha y esos 25 minutos empiezan a

contar. Quizá mejor suerte en el siguiente.

Page 3: Blog de jorge muria   not just another agile weblog

Puede parecer que con tanto descanso, se está uno tocando las bowlings mientras que

el resto de compañeros no se levantan de su silla. Nada más lejos de la realidad. Todos

lo que conozco que usan la técnica dicen que cuando en un día se han hecho más de 8

pomodoros (tarea algo idilica) sólo tienen ganas de meter la cabeza en un barreño de

agua con hielo y las tareas de su kanban van pasando a completado a una velocidad

absurda[9].

En el libro de la técnica (gratuita su versión online) indica cómo hacer anotaciones para

ver el avance con el dominio de la técnica. Propone anotaciones con un simbolo las

interrupciones internas y con otro las externas para intentar disminuir ese número cada

vez. Tambien se puede guardar el numero de pomodoros completados e interrumpidos.

Todo esto permite mejorarse día a día. Según mi propia experiencia, el conseguir más

de 3 pomodoros completos el primer dia puede ser tarea ardua. Siempre hay que

conseguir más pomodoros que el día anterior. Como dice David Bonilla en su blog

¡Protege tus pomodoros!.

Intenta juntar varias tareas relacionadas que puedan llenar un pomodoro. Si te sobra un

poco de tiempo, dedicalo a revisar el trabajo que has realizado para completar los 25

minutos. Un pomodoro es indivisible.

Para los que conozcan Scrum, la tecnica del pomodoro me suena al concepto del sprint.

En un sprint de Scrum, las tareas están definidas en un intervalo concreto (2-4

semanas) de tal modo que si llegan nuevos requerimientos, no se interrumpe el trabajo

de ese sprint para adaptarlos sino que se espera al siguiente.

Se me ocurren varios hilos de investigacion que me parecen interesantes y espero poder

dedicarle atención en breve:

Cómo aplicarlo al trabajo por parejas (Pair Programming). Este libro [10]parece

interesante. Intentaré echarle un vistazo.

Cómo aplicarlo al trabajo de un equipo scrum.

Cómo aplicarlo al TDD (¿se usan pomodoros distintos para la generación de test,

para la codificación y refactorización?)

Qué relacion tiene entre la velocidad de un equipo ágil y el número de pomodoros

que son capaces de completar. (Sé que hay alguien que lo está investigando pero me

falta su nombre)

Espero poder ampliar y corregir este post. O quizé mejor, escribir otro para explicar

Page 4: Blog de jorge muria   not just another agile weblog

1. http://sixservix.com/blog/david/

2. http://sixservix.com/blog/david/2009/11/26/la-tecnica-pomodoro/

3. http://sixservix.com/blog/david/2010/07/13/no-sabes-nada-de-la-tecnica-pomodoro/

4. http://sixservix.com/blog/david/2010/07/20/tecnica-pomodoro-extrema/

5. http://en.wikipedia.org/wiki/Time_management

6. http://www.agile-spain.com/

7. http://www.pomodorotechnique.com/

8. http://en.wikipedia.org/wiki/Flow_%28psychology%29

9. http://www.youtube.com/watch?v=PgUiBXnb5UQ

10. http://www.springerlink.com/content/h85v164424115090/

alguno de los puntos que investigue.

Espero vuestros comentarios!!