martes, 7 de diciembre de 2010

Hammock Driven Development

Ya os conté que una de las cosas que más me han gustado de Eden (y que más sencillas me parecen) es la parte de la reunión diaria en la que se habla de las cosas interesantes que ha descubierto la gente. Hoy, Steve nos ha contado lo interesante que le había parecido esta charla. Nos ha convencido de que merecía la pena verla y hemos quedado en proyectarla a la hora de la comida.

No es una charla técnica, es más bien "filosófica", así que no tenéis excusa para no verla :P

De todas formas, como tengo que escribir algo :P, voy a explicar algunos de los puntos que he sacado en claro tras la discusión que hemos tenido en Eden después de verla.

Hammock driven development
Básicamente, la idea central de la charla es como mejorar nuestra habilidad para resolver problemas. Hay una transparencia muy aclarativa en la que Rich Hickey, el creador de Clojure, nos recuerda que, si no estamos resolviendo un problema, para que demonios estamos trabajando (dentro del contexto del software). Además, se centra mucho en la importancia de entender el problema de forma global, no solo en el ámbito técnico.

Pensar y reflexionar sobre el problema
Nada más empezar, Rich nos hace una pregunta

¿Cuanto hace que no piensas en un problema durante toda una hora? ¿Durante todo un día? ¿y durante un año?

No se vosotros, pero yo no me paro a pensar "demasiado" en el problema ni en su por qué. Intento buscar una solución lo antes posible. Esta charla me ha recordado que lo importante no es la solución, es entender el por qué (a lo mejor no hace que busques una solución porque realmente no existe un problema). Me lo apunto como "a mejorar" :)

Además, ese pensar en el problema va a hacer posible que tu cerebro asimile que es importante y trabajará en "background" en ello.

¿El cerebro trabajando en background?
A lo que se refiere el autor con esto es al trabajo que realiza tu subconsciente mientras, por ejemplo, duermes (De ahí lo de hammock driven development, que es algo así como desarrollo dirigido por hamaca :D )
Rich deja claro que la charla no es un estudio científico ni nada de eso, así que no os lancéis como leones :P pero, ¿Nunca os ha pasado eso de encontrar la solución mientras dormías?

Enfocarse en profundidad en el problema
Esto implica pensar en el problema sin distracciones (nada de twitter, mail, teléfono, etc), es decir, hay que separarse del ordenador (suena duro, ¿no?). Para nosotros, los ordenadores son nuestra herramienta preferida para la procrastinación y el desenfoque, así que, en los momentos en los que se está enfocado en el problema, hay que intentar dejarlos a un lado.

Anotarlo todo
Personalmente, una de las cosas que más me ha chocado de la charla es que hace mucho hincapié en anotar todo lo que vamos descubriendo del problema. La razón principal es para no olvidar los detalles que ya se han descubierto. No se mete en como tienes que escribirlo, simplemente te aconseja que lo anotes.

No dejéis de ver la charla, es mucho mejor que mis notas :D

Un saludo

3 comentarios:

  1. Muy bueno. Algo parecido comentámos en las cervecitas post MadriAgil.

    Al final del Code Retreat de Madrid se planteó resolver la kata del stringcalculator. Por temas de tiempos finalmente no la hice ese día ahí, yo nunca la había visto, pero ese día leí bien el enunciado, y luego vi lo que hicieron JMB, Vilches y no recuerdo si alguien más. Lo que sí recuerdo es que todos se quedaron "bloqueados" en un punto; me llamó la atención que sea en el mismo.

    Lo que hice fue pensar en el problema durante algunas semanas y un día me senté frente al teclado y escribí la solución en forma directa, sin tener que reescribir partes o cosas así porque el enfoque estaba errado.

    Mi conclusión es que tomar conocimiento de las cosas y dejar que se "asienten" en la cabeza funciona. Lo mismo hacía con los exámenes del colegio o la universidad... el día previo al exámen tal vez leía algún apunte, pero el día del exámen me la pasaba durmiendo o haciendo cualquier actividad no relacionada (ver pelis, leer un libro).

    Y ya saben que es perfectamente ético que te paguen aunque estés mirando por la ventana o durmiendo

    ResponderEliminar
  2. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  3. Asi hice yo el proyecto de fin de carrera...en sueños!!

    ResponderEliminar