Juanjo Coello

Software Developer & Perpetual Wannabe
I tweet stuff at @jjcoellov

Workshop de TDD

Hace un par de semanas tuve la oportunidad de dar en la empresa donde trabajo un taller de TDD a algunos compañeros interesados en el tema. La idea era explicar un poco en qué consiste y por qué es un cambio (para mejor, IMHO) en la forma de desarrollar software.

Normalmente todos estamos de acuerdos de la importancia de desarrollar una batería de pruebas automatizadas que cubra el software que implementamos; lo que no suele verse con tanta claridad son las ventajas de escribir dichas pruebas antes que escribir el código como tal. En la presentación intenté explicar las ventajas más inmediatas del TDD - como son una buena cobertura del código o la legilibidad que se obtiene mediante la continua refactorizacion - como otras ventajas que no suelen ser tan sencillas de ver a priori, pero que considero igual de fundamentales y que se notan una vez se empieza a desarrollar siguiendo esta metodología, como la consecución de un diseño emergente (evitando el over-engineering)

El taller lo dividimos en tres partes: una primera parte teórica, un Coding Dojo con un ejemplo en el monitor, para que la gente se hiciera una idea de la dinámica del ciclo de TDD (Red-Green-Yellow) y una kata de código en parejas para que todos pudieran poner en práctica lo que habíamos discutido.

Presentación teórica:

Al final del todo tuvimos una retrospectiva del taller como tal, de donde salieron algunas ideas interesantes para siguientes ejercicios:

En general creo que la experiencia fue bastante positiva y todos los asistentes salieron bastante satisfechos (tanto los que ya contaban con experiencia previa como los que estaban introduciéndose en la materia)

Si te interesa el tema del TDD y vives en Barcelona, RunRoom suele organizar todos los meses un Coding Dojo en sus oficinas a los que vale la pena asistir, sin importar mucho el nivel de conocimiento que tengas. Además, suele haber patrocinio de Gin Tonics por parte de Úbeda Gin&Tapas que ya hace que valga la pena darse un salto :-)

Agradecer a @_dcampoy, @jmbarroso, @freyes y @carlosble por su feedback respecto al taller y sus ánimos para impartirlo.