Como ejecutar un “Coding Dojo”
En Agile Portugal, oí a Emily Bache (@emilybache) dar un discurso inspirador sobre la importancia de los coding dojos para avanzar en el arte de los programadores y testeadores. Emily, al igual que yo, es una fuerte defensora del desarrollo guiado en pruebas (TDD – Test Driven Development), pero reconoce que, si bien el TDD es fácil de explicar, es muy difícil de poner en práctica. Los coding dojos ayudan a abordar ese problema mediante la creación de un espacio seguro para que los programadores y testeadores obtengan más información sobre el TDD.
Entonces ¿qué es un coding dojo? Un coding dojo es cuando de cuatro a ocho personas se reúnen una vez a la semana para dialogar sobe códigos y reflexionar sobre cómo mejorar su práctica para escribir software. Los coding dojos son sesiones de tiempo cerradas que duran desde sesenta a noventa minutos con al menos cuarenta y cinco minutos de codificación. El tiempo restante hasta al final del dojo se usa en una breve retrospectiva dirigida por el facilitador. Se anima a los participantes a hacer el trabajo en parejas.
Emily también escribió un gran libro, The Coding Dojo Handbook, para ayudarle a iniciar sus propios coding dojos. En el libro se describen las cuatro simples reglas de todos los coding dojos:
- No se puede discutir las técnicas sin código: Esto es para mantener el enfoque del dojo sobre los temas que a los programadores (y probadores) le preocupan – el código.
- No se puede mostrar código sin pruebas: Dado que los coding dojos son un ejercicio sobre cómo mejorar con TDD, los programadores deben escribir pruebas unitarias utilizando un marco xUnit.
- Los participantes usan katas para mejorar sus habilidades: Las katas son breves ejercicios de programación que se pueden resolver en un número diferente de formas, pero por lo general se centran en un elemento del ciclo TDD.
- Ningún código entra en producción: Se trata de preservar la sensación de seguridad que debe ofrecer el coding dojo ya que queremos que la gente se anime a probar prácticas que podrían no usar en el código de producción.
He aquí una lista de los katas del sitio web github de Emily y otra lista de katas desde el sitio dojo de codificación. Si usted está buscando más katas, sólo haga una búsqueda en Google sobre “coding kata” y encontrará muchas fuentes de información.
Alguien en internet decidió tomar una opinión contraria sobre el beneficio de los coding dojos y katas. Al menos, el autor tomó tiempo para elaborar algunas posiciones razonadas.