Este documento descreve o Coding Dojo Rio, um grupo de programação que se reúne para praticar e melhorar suas habilidades de programação. Ele explica os princípios do Coding Dojo de aprendizado contínuo, ambiente seguro e colaborativo, e apresenta um exemplo de problema que pode ser praticado, o KataPotter, sobre cálculo de preços de livros.
Coding Dojo Rio: Introdução ao conceito e formatos de programação em grupo
1. 09/05/2009
Rodolfo Henrique Carvalho
Coding Dojo Rio
Introdução
Baseado nos slides de Danilo Sato groups.google.com/group/dojo-rio
dojorio.wordpress.com
2. motivação
Programadores não
treinam!
Por que não?
groups.google.com/group/dojo-rio
dojorio.wordpress.com
3. origens
• Kata → Coding Dojo
• Definition: (http://codingdojo.org/)
A Coding Dojo is a meeting where a bunch of
coders get together to work on a programming
challenge. They are there to have fun and to
engage in deliberate practice in order to
improve their skills.
groups.google.com/group/dojo-rio
dojorio.wordpress.com
5. regras gerais
• Computador + Projetor
• Par + Platéia
• TDD (vermelho → verde → refatoração)
• Todos devem entender
• Sempre começa do zero
groups.google.com/group/dojo-rio
dojorio.wordpress.com
6. retrospectiva
• Ao final da sessão:
• O que aprendemos?
• O que gostamos?
• O que pode melhorar?
• Comentários?
groups.google.com/group/dojo-rio
dojorio.wordpress.com
7. formatos
• Kata
• Apresentação de
uma solução
• Todos devem
conseguir
reproduzir
• Interrupções
permitidas para tirar
dúvidas
groups.google.com/group/dojo-rio
dojorio.wordpress.com
8. formatos
• Randori
• Programação em pares
• Turnos “time-boxed”
• Após o turno (5-7 min.):
• O co-piloto vira piloto
• O piloto volta para a platéia
• Um novo co-piloto é convidado da platéia
• Comentários e críticas somente no verde
• Silêncio no vermelho
groups.google.com/group/dojo-rio
dojorio.wordpress.com
9. objetivos
• Praticar
• Aprender
• Ensinar
• Discutir com bases sobre código!
groups.google.com/group/dojo-rio
dojorio.wordpress.com
10. o que não faremos
• Correr para terminar o problema
• Resolver problemas “reais”
• Entrar em “flamewars” nas discussões
• Competir com outros participantes
• Deixar pessoas sem entender
groups.google.com/group/dojo-rio
dojorio.wordpress.com
11. podemos
• Experimentar novas idéias
• Nos divertir
• Começar logo!
09h00 – 09h15: introdução
09h15 – 09h30: problema
09h30 – 10h30: programação
10h30 – 11h00: retrospectiva
groups.google.com/group/dojo-rio
dojorio.wordpress.com
12. sugestão de problema
• KataPotter
Livraria do Harry Potter com 5 títulos;
Desconto para livros diferentes:
2 livros – 5%
3 livros – 10%
4 livros – 20%
5 livros – 25%
Preço de 1 livro: R$ 42,00
groups.google.com/group/dojo-rio
dojorio.wordpress.com
13. exemplo
• Quanto custa?
• 2 cópias do primeiro livro
• 2 cópias do segundo livro
• 2 cópias do terceiro livro
• 1 cópia do quarto livro
• 1 cópia do quinto livro
• Resposta: R$ 268,80
• Note que o preço deve ser o menor valor obtido
combinando os livros.
• 2 conjuntos de 4 livros é melhor que 1 de 5 livros
e 1 de 3 livros!
groups.google.com/group/dojo-rio
dojorio.wordpress.com
14. onde encontrar o Dojo Rio
• Grupo de emails:
• http://groups.google.com/group/dojo-rio
• Blog:
• http://dojorio.wordpress.com
• Repositório:
• http://code.google.com/p/dojo-rio
groups.google.com/group/dojo-rio
dojorio.wordpress.com
15. próximo encontro
• Quando e onde?
• Quarta-feira, no CEFET-RJ.
• Comentários?
groups.google.com/group/dojo-rio
dojorio.wordpress.com