1) O documento apresenta sobre Coding Dojo, Práticas Ágeis e realização de um evento para programação em grupo.
2) Inclui discussões sobre técnicas como Pair Programming, Test Driven Development, Refactoring e Baby Steps.
3) Dois exemplos de katas (problemas) são apresentados: Happy Numbers e Numeric Maze.
2. Agenda
1. Apresentação sobre a situação da área de TI, Coding Dojo,
Práticas Ágeis;
2. Apresentação e escolha do Kata (problema);
3. Realização do Dojo (Parte 1);
4. Intervalo;
5. Realização do Dojo (Parte 2);
6. Retrospectiva;
4. eXtreme Programming
• Primeiro livro sobre o assunto
é recente, 11 anos atrás, em
1999;
• Escrito por Kent Beck;
• Está em alta ultimamente;
5. eXtreme Programming
• Valores: Comunicação, Simplicidade, Feedback, Coragem, Respeito
• Princípios: Feedback rápido, Presumir simplicidade, Mudanças
incrementais, Abraçar mudanças, Trabalho de alta qualidade.
• Práticas:
• Pair Programming;
• Refactoring;
• Test Driven Development;
• Baby Step;
6.
7. Pair Programming
• Programação em par é uma das práticas mais conhecidas e
mais polêmicas utilizadas pelos que adotam o Extreme
Programming. Ela sugere que todo e qualquer código
produzido no projeto seja sempre implementado por duas
pessoas juntas, diante do mesmo computador, revezando-se
no teclado.
• Funciona?
• O Piloto e o copiloto;
23. Baby Steps
1. Vá com calma;
2. Suba um degrau de cada vez;
3. Não tente dar um passo
maior que a perna;
4. Quando se sentir confortável,
comece a acelerar;
5. Caso ocorra algo errado,
volte a engatinhar;
25. Dojo
• O dojo ou dojô (pronuncia-se DÔ-JÔ) é o local onde se treinam
artes marciais, especialmente as nipônicas. Muito mais do que
uma simples área, o dojo deve ser respeitado como se fosse a
casa dos praticantes. Por isso, é comum ver o praticante fazendo
uma reverência antes de adentrar, tal como se faz nos lares
japoneses.
26. Coding Dojo
• Um Coding Dojo é uma reunião presencial para estudar e praticar
desenvolvimento de software;
• Seus praticantes estão lá para se divertir e para participar em prática
expontânea de forma a melhorar suas habilidades;
• Em um ambiente não competivivo e colaborativo, todos os
participantes possuem um objetivo em comum: resolver o
problema que foi proposto no início da sessão;
• Para tanto, é utilizado algumas práticas ágeis como Pair
Programming, Test Driven Development (TDD), Refactoring e Baby
Steps;
• Excelente ambiente para aumentar seu network;
27. Requisitos para o Coding Dojo
• No mínimo 5 participantes;
• Uma sala;
• Um computador com projetor (apenas um);
• Um problema (kata);
• Um contador de tempo;
• Uma caixa de chocolate (Joinville Dojo)
28. Requisitos dos participantes
• Desejo de aprender e compartilhar conhecimento;
• Respeito ao próximo;
• Mente sempre aberta;
• Disciplina;
• Comprometimento;
29. Como funciona a dinâmica
Piloto: Escreve o código
Copiloto: Explica o que o Piloto está acontecendo e ajuda o
piloto
Rodada:
Cada rodada dura 7 minutos;
Ao terminar, o piloto une-se ao grupo, Copiloto vira piloto
e alguém do grupo vira Copiloto.
Grupo só fala:
Quando o teste está verde;
Antes de escrever um teste;
Retrospectiva;
30.
31. Contato
Blog: http://www.joinvilledojo.com.br/
Posts das sessões e informações sobre o grupo
Twitter: @joinvilledojo
Lembretes
Grupo: http://groups.google.com.br/group/joinville-dojo
Confirmação dos próximos encontros e algumas discussões