Salve pessoal!
Ontem ocorreu o primeiro Coding Dojo do grupo DotNetFloripa. Acabei não anunciando aqui no blog (a lista de dois grupos me pareceu uma audiência um pouco maior
), mas ao menos os resultados ficarão registrados por aqui.
A idéia do dojo surgiu numa troca de e-mails em que discutíamos possíveis temas de futuros eventos do grupo e, como eu nunca havia ouvido falar da expressão (vcs realmente já haviam?
), saí pesquisando pelo Google, seguindo links, aquele processo habitual. Também habitualmente metido, enviei algumas sugestões e acabei abraçando a organização desse primeiro encontro. Muito gratificante!
Não compareceram muitas pessoas (8 no total), o que acabou mostrando-se positivo no final do encontro. A interação e participação de todos ocorreu acima do esperado (pelo menos por mim), o que foi um dos pontos fortes do evento. Estava com um pé atrás pois nas reuniões do grupo que participei a interação do pessoal com o palestrante, no geral, não era das mais eloquentes. Nesse encontro, entretanto, todos contribuíram com idéias para o código, dúvidas e tudo mais. Como boa parte do pessoal ainda não utiliza TDD no dia a dia, boa parte do tempo foi utilizada discutindo alguns conceitos, explicando outros, etc, etc. Por este motivo acabamos não tendo tempo para concluir o problema, mas espero que não faltem próximas oportunidades.
No final, chegamos a uma lista de pontos positivos e outros que podemos melhorar para os próximos encontros:
Pontos positivos:
- Número de participantes: mesmo não plenejadamente, foi consenso entre todos que um número de participantes maior que 10 pode inviabilizar a interação no dojo;
- Prova do TDD: mesmo não tendo codificado tanto quanto deveríamos (construímos 4 métodos de teste) já foi possível exemplificar o valor do TDD quando, devido à alteração para um teste, outro anteriormente “green” passou a falhar;
- Participação do pessoal: todos interagiram e sentaram-se pra programar, sem medo de ser feliz. Dicas de VS, frameworks, TDD, lógica e dúvidas surgiram aos montes. Muito legal;
Pontos a melhorar:
- Conceituação de TDD: pela pouca experiência de parte do pessoal com TDD, a maior parte do tempo foi utilizada em conceito ao invés de programação. Apesar de também ser positivo, o ideal seria fazermos uma palestra sobre TDD para que pudéssemos simplesmente praticá-lo no Dojo (obs.: a palestra já está sendo agendada);
- Tempo de cada piloto: não houve um controle do tempo que cada um passava programando, o que dificultava as trocas num tempo “justo”. Foi sugerido que utilizemos uma abordagem “ping pong”, onde um desenvolvedor implementa um teste falho e o próximo faz o teste corrigir. Muito válido;
- Piloto “type only”: em mais de uma situação a pessoa que estava programando simplesmente digitava o que os outros iam falando, não dando oportunidade ao piloto e ao co-piloto de decidirem por um passo antes de serem questionados. Talvez o ideal seja dar mais autonomia ao piloto/co-piloto (definição do próximo teste falho, por exemplo) para depois virem sugestões, questionamentos e tudo mais;
- Resolução do problema: não conseguimos resolver o problema dentro do tempo previsto, se na próxima deixarmos ele sobreviver novamente vai virar questão de honra..
Se alguém quiser ver o PPT com a descrição do problema que tentamos resolver + conceitos de Dojo e TDD + código desenvolvido, coloquei tudo no RapidShare pra baixar. É só clicar aqui. Abaixo segue uma das fotos tiradas por lá do pessoal interagindo:

Gostaria de agradecer ao pessoal do DotNetFloripa que compareceu no encontro pela presença e interação, ao pessoal do DojoFloripa pelo feedback positivo e representação (1 dos participantes era de lá!
) e ao Ivan Sanchez (ex-DojoFloripa, atualmente em Londres) que me ajudou a esclarecer várias dúvidas e tornar esse primeiro encontro possível.
Comentários de qualquer tipo são bem-vindos. Até o próximo Dojo!
José Filipe

To eu aqui comentando de novo…
hehehehe
Cara muito legal o post, eu achei realmente interessante
esse esquema de “Coding Dojo”, eu realmente nunca tinha pesquisado
sobre isso, só lido em títulos de artigos, mas nunca tinha lido nada . Achei legal, que nesse tipo de evento a possibilidade de ver vários tipos de programadores programando e discutindo a solução do problema é realmente válida, o que entra naquele assunto que eu já comenteicom você, de ter alguém como base
para saber o que eu como desenvolvedor de software tenho que evoluir.
[]s
Felipe,
O post que você publicou está perfeito em todos os aspectos.Como participante gostei muito “Coding Dojo”.Como falamos faltou apenas ter a palestra sobre Dojo antes de realizar o primeiro encontro, mas para quem não conhecia TDD foi muito válido,e realmente o que o Marcos comentou a cima, ter alguém como base para saber o que eu tenho que evoluir,me parece bem interessante.
abraço.
Cara, muito bacana esse post. Acho que é isso mesmo, ter alguém como base seria perfeito para a evolução. Um abraço.