segunda-feira, 28 de outubro de 2013

Conding Dojo - Arte de treinar programação

By on 12:54

Coding Dojo é um encontro onde um grupo de programadores se reúnem para trabalhar em um desafio de programação. Eles estão lá para se divertir e se envolver, a fim de melhorar suas habilidades de programação e o raciocínio lógico.

O Coding Dojo incide sobre codificação na frente dos outros, na maioria das vezes algo a partir do zero, em um período muito curto de tempo (1 a 1,5 horas). Eles usam várias línguagens de programação, várias ferramentas, vários formatos de exercícios. Eles consideram o resultado de um exercício bem sucedido quando é concluído dentro do tempo alocado e público pode repetir o exercício em casa por eles mesmos.

Ir a um CodingDojo ajuda muito porque é divertido ir e socializar, conhecer outros programadores. Na reunião, quando você está programando junto, você não vai desafiar um ao outro, você tem que aprender a aceitar críticas e defender suas idéias. Você vai obter feedback não apenas sobre o código que você produz, mas sua técnica de codificação. Você fica exposto a truques de outras pessoas com a linguagem e aprende outras formas de programar. A ideia central do Conding Dojo está em reunir um monte de pessoas diferentes, em um ambiente muito seguro. O código produzido no final pode ser preservado em um wiki em algum lugar.

Dinâmica:

Desenvolvimento guiado por testes: Antes de fazer qualquer implementação, deve ser escrito um teste, que ao passar indica que a implementação está correta.

“Passos de bebê”: Se um teste não está passando, você deve escrever o código mais simples possível que faça o teste passar. Quando for escrever um novo teste para o mesmo método, escreva um teste que teste só um pouquinho a mais da funcionalidade desejada.

Pair programming: A programação é feita em duplas. Cada dupla tem um piloto e um co-piloto. Ambos pensam em como passar no teste atual, mas só o piloto digita. Cada par tem por volta de 5 a 7 minutos no seu turno. Quando esse tempo acaba:
O piloto volta para a platéia
O co-piloto assume o lugar do piloto
Um novo co-piloto vem da platéia



Todos devem entender: O piloto e o co-piloto devem sempre explicar em voz alta o que estão tentando fazer para solucionar o problema. Qualquer um na platéia pode pedir explicações se não entender algum raciocínio.

Três fases: Um Coding Dojo sempre está em alguma dessas 3 fases, dependendo do estado dos testes:

  • Vermelha: Pelo menos um teste não está passando. A dupla da vez deve se concentrar em fazer o teste passar. A platéia não deve falar nessa fase, para não atrapalhar piloto e co-piloto.
  • Verde: Os testes acabaram de ser rodados e todos estão passando. Essa é a hora de quem está na platéia dar sugestões para melhorar o código.
  • Cinza: O código foi modificado de acordo com as sugestões, mas a bateria de testes ainda não foi rodada. Deve-se evitar fazer grandes modificações no código nessa fase


E então?? Vamos programar?
Já participou de algum Coding Dojo? Compartilhe suas experiências nos comentários.




0 comentários:

Postar um comentário