O que é Coding Dojo?
Primeiramente vamos ver o que é Dojo. Primeiramente Dojo (pronuncia-se Dojô) é onde se pratica artes marciais, sendo assim o objetivo de praticar os movimentos aprendidos exaustivamente, com isso chega a uma maior precisão de cada golpe, movimento,etc. Inspirado nisso, foi-se criado o Coding Dojo que é uma reunião composta por um grupo de programadores com o intuito de treinar e assim procurar umaprimoramente naquilo que eles sabem fazer. Eles focam um problema que tem que ser resolvido, sendo assim um desafio de programação usando as práticas ágeis.
Coding Dojo é uma técnica de treinamento que remete as artes marciais. O dojô é o local onde os movimentos da luta são repetidos a exaustão, sempre fazendo pequenas melhorias a cada repetição. No nosso caso, o treino deve reunir pessoas para resolver um problema simples de programação em conjunto…
Princípios do Coding Dojo
-
Aprendizado Contínuo
-
Ambiente Seguro
-
Passos de Bebê
Todo mundo aprende com o problema a ser solucionado, porque você compartilha experiências e conhecimento no intuito de alcançar algo.
Vai estar em lugar tranquilo, divertido, sem pressões do seu chefe, do dia a dia do trabalho. É colaborativo e inclusivo, ou seja, do amador ou mais experiente vão poder ajudar sem medir a competência um do outro.
Não precisa ser feito às pressas, é feito uma coisa de cada vez.
Como é composto um Coding Dojo?
- A duração é de aproximadamente 1 hora e 45 minutos;
- Esse tempo é pequeno para não ficar cansativo.
- Inicie descrevendo a todos o problema a ser resolvido;
- É muito aconselhado não usar problemas reais, porque sempre deparamos por isso todos os dias. Sendo assim pode ser, por exemplo, converter números inteiros em romanos e em cima disso todos vão procurar resolver.
- No Coding Dojo são usados as práticas ágeis;
- Por exemplo: Programação em Par, TDD e Passos de Bebê, com o intuito de não só aprender desenvolvimento ágil, mas também ter uma maior união entre o grupo presente.
- Inicialmente será implementados testes em cima do problema com uma dupla;
- A partir da programação em par, a dupla(piloto e co-piloto) inciar a implementação dos testes unitários basedos nos requisitos do problema levantado e a platéia fica acompanhando. Dependendo do problema, recomendo que o piloto seja quem sabe mais desse desafio, se não for o caso, então faça um sorteio que fica mais democrático

- A partir da programação em par, a dupla(piloto e co-piloto) inciar a implementação dos testes unitários basedos nos requisitos do problema levantado e a platéia fica acompanhando. Dependendo do problema, recomendo que o piloto seja quem sabe mais desse desafio, se não for o caso, então faça um sorteio que fica mais democrático
- Possui turnos de 5 a 7 minutos;
- Esse turno é usado para seguir uma rotação: 1 – Sai o piloto, 2 – O co-piloto torna o piloto do próximo turno, 3 – Alguém da platéia torna o co-piloto. A dupla terá um turno para implementar os testes. Não precisa apressar para terminar (lembra do passo de bebê?). Se não acabar a tempo não tem problema.
- Faça uma retrospectiva do que foi feito;
- Mesmo que o problema não foi solucionado, não tem problema. Deixe uns 10 minutos antes de acabar o Dojo para todos reunirem e responder três perguntas: 1 – O que foi feito?, 2 – O que foi bom?, 3 – O que pode melhorar para o próximo Dojo? Caso vocês gostarem

- Mesmo que o problema não foi solucionado, não tem problema. Deixe uns 10 minutos antes de acabar o Dojo para todos reunirem e responder três perguntas: 1 – O que foi feito?, 2 – O que foi bom?, 3 – O que pode melhorar para o próximo Dojo? Caso vocês gostarem
Regras do Coding Dojo
No Coding Dojo possui algumas regras básicas para serem seguidas:
- É necessário ter somente um computador ligado à um projetor (ou um monitor, TV também serve);
- Como vai ser usado programação em par nos turnos, a platéia vai vendo o que a dupla está fazendo.
- Quando estiver falhando o teste, todos devem ficar em silêncio e quietos. Não pode atrapalhar a dupla;
- O TDD segue uma regra: 1 – Escreva o teste, 2 – Falhou? Faça ela passar, 3 – Passou? Refatore. Durante a implementação do teste até quando ela não passar, a platéia deve ficar calada. Somente a dupla pode discutir, sugerir e brigar. Isso é importante para não atrapalhar o andamento do turno. Aí, quando passar o teste, todos podem dar pitaco, sugerir o que deve ser melhor e o que pode melhorar.
- Não pode fazer um Coding Dojo com um problema inacabado do Dojo anterior;
- Não pode levar um problema que não foi solucionado do Coding Dojo anterior. Se não terminou, não tem problema. Leve um novo desafio para ser feito no próximo, e não problemas já usados.
O que pode e não pode no Coding Dojo?
Tem certas práticas em um Dojo que são bons, mas tem alguns que atrapalham a harmonia e que quebra os princípios propostos. Abaixo estão elas:
- O que pode?
- Comes e Bebes (mas sem atrapalhar o fluxo da reunião);
- Dar dicas de um determinado problema quando o teste passar;
- Dar sugestões e dicas durante a apresentação do problema;
- Fazer em qualquer lugar, caso cumprir as regras acima;
- Compartilhar conhecimento;
- Ajudar;
- Relacionar com outros programadores.
- O que não pode?
- Levar algum problema de Coding Dojo anterior;
- Levar um problema do dia a dia (vamos exercitar nossa criatividade
; - Discutir tecnologias durante o Dojo (sem flamewar por favor!!);
- Falar quando o teste estiver em vermelho.
- Atrapalhar o andamento do Coding Dojo;
Via: WebLovers
Pessoal de Santa Bárbara, vamos montar um grupo de DOJO ?
