SlideShare uma empresa Scribd logo
Coding Dojo
Aplicando Práticas Agéis
Guilherme Oenning
Contato: guilherme@oenning.eti.br
Twitter: @goenning
Site: http://oenning.eti.br
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;
Cenário Atual
1994
2000
2004
2006
2009
31%
23%
18%
19%
24%
53%
49%
53%
46%
44%
16%
28%
29%
35%
32%
Chaos Report
Falha Mudança Successo
eXtreme Programming
• Primeiro livro sobre o assunto
é recente, 11 anos atrás, em
1999;
• Escrito por Kent Beck;
• Está em alta ultimamente;
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;
Coding Dojo - Técnico
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;
Coding Dojo - Técnico
Coding Dojo - Técnico
Refactoring
Teoria da Janela Quebrada
Refactoring
Boy Scout Rule: Leave the campground cleaner than
you found it.
Refactoring
Código Sujo Código Limpo
Test Driven Development
Automatização dos Testes
• Feedback Instantâneo;
• Segurança;
• Rápido;
• Barato;
Coding Dojo - Técnico
Entrada
Saída
Verificação
Green. Nosso software está funcionando.

Coding Dojo - Técnico
Red = Temos um Bug

Coding Dojo - Técnico
Test Driven Development
Test Driven Development
Escreva
um teste
Veja ele
falhar
Faça-o
passar
Veja ele
passar
Refatore
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;
Test Driven Development
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.
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;
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)
Requisitos dos participantes
• Desejo de aprender e compartilhar conhecimento;
• Respeito ao próximo;
• Mente sempre aberta;
• Disciplina;
• Comprometimento;
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;
Coding Dojo - Técnico
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
Coding Dojo - Técnico
Katas
•Happy Numbers
•Numeric Maze
Fonte: rubyquiz.com
Happy Numbers
• O processo para descobrir se um número é feliz é:
• 72 = 49
• 42 + 92 = 97
• 92 + 72 = 130
• 12 + 32 + 02 = 10
• 12 + 02 = 1.
• Caso o resultado seja 1, então o número é feliz. Caso ele entre em loop,
o número é considerado infeliz.
• Exemplos de 1 até 500: 1, 7, 10, 13, 19, 23, 28, 31, 32, 44, 49, 68, 70, 79,
82, 86, 91, 94, 97, 100, 103, 109, 129, 130, 133, 139, 167, 176, 188, 190,
192, 193, 203, 208, 219, 226, 230, 236, 239, 262, 263, 280, 291, 293,
301, 302, 310, 313, 319, 320, 326, 329, 331, 338, 356, 362, 365, 367,
368, 376, 379, 383, 386, 391, 392, 397, 404, 409, 440, 446, 464, 469,
478, 487, 490, 496
• Curiosidade: Motivo da criação é desconhecida, a utilidade também.
Numeric Maze
• Dado um número inicial e um final, encontrar o caminho mais rápido do
início a fim. As operações possíveis são:
• Dobrar;
• Dividir;
• Adicionar 2;
• Exemplo 1 – De 2 até 9:
• 2 * 2 = 4
• 4 * 2 = 8
• 8 * 2 = 16
• 16 + 2 = 18
• 18 / 2 = 9
• Exemplo 2 – de 2 até 10:
• 2 * 2 = 4
• 4 * 2 = 8
• 8 + 2 = 10

Mais conteúdo relacionado

PDF
PPTX
Unitat3 punt2
PDF
Aula11 12 9_ano
PPT
El canvi climàtic 3r ep_sadako
PDF
Livro de receitas do bartolomeu 2008
PPTX
Eines informàtiques i pr3 ex2
PPT
Samara .
PDF
Vvienda proyect1
Unitat3 punt2
Aula11 12 9_ano
El canvi climàtic 3r ep_sadako
Livro de receitas do bartolomeu 2008
Eines informàtiques i pr3 ex2
Samara .
Vvienda proyect1

Destaque (20)

PPT
Elinanda kellisson fabricio
PDF
Menangga kekata
PPT
Quiz desenvolvimento sustentável
PDF
Xarxes locals
PPT
Thales alisson-joao vitorteixieira
PPT
Ash max gracaluisa
PDF
Basededatosquipo11
PPT
Suelene.apresentação
PDF
Beeld portfolio Corfu
PPTX
UTE diversida en el aula
PPT
¿hasta donde puedes llegar ?
PDF
Baloia patioan 2 eusk
PDF
Fear and Trembling—the Borderlands of the Sane
DOC
Cas 2 carme taula
PPT
Bossa norte
PPTX
áLbum de fotografías
PPS
Juez Calatayud Por.No.Parecer.Fachas
PPTX
Oo hub 20130111
PPTX
El canton independiente_de_lebrija2 (1)
PPT
Apresentação juntos vendemos mais setembro
Elinanda kellisson fabricio
Menangga kekata
Quiz desenvolvimento sustentável
Xarxes locals
Thales alisson-joao vitorteixieira
Ash max gracaluisa
Basededatosquipo11
Suelene.apresentação
Beeld portfolio Corfu
UTE diversida en el aula
¿hasta donde puedes llegar ?
Baloia patioan 2 eusk
Fear and Trembling—the Borderlands of the Sane
Cas 2 carme taula
Bossa norte
áLbum de fotografías
Juez Calatayud Por.No.Parecer.Fachas
Oo hub 20130111
El canton independiente_de_lebrija2 (1)
Apresentação juntos vendemos mais setembro
Anúncio

Semelhante a Coding Dojo - Técnico (20)

PPTX
PDF
Coding Dojo - Aprendendo a programar programando
PDF
Coding dojo
PPTX
Coding Dojo - Aplicando Princípios Ágeis
PPTX
Coding Dojo Aplicado ao Ambiente Organizacional
PDF
Coding dojo
PDF
Coding Dojo
PDF
Coding dojo
PPTX
DojoTuba: Coding Dojo - Tubarão, SC
PPTX
Coding dojo
PDF
Pós Ruy - 2 e 3 Camadas - Coding Dojo
PDF
Coding Dojo #GuruPI
PPT
Coding dojo
PDF
Coding Dojo - Pycon Br 2008 - PT-BR
PPT
DojoMoc - Introdução Coding Dojo
PPTX
Coding Dojo em 10 Minutos!
PDF
Coding Dojo: uma abordagem teórica e prática
PDF
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
PDF
Coding Dojo no PUG - PE
Coding Dojo - Aprendendo a programar programando
Coding dojo
Coding Dojo - Aplicando Princípios Ágeis
Coding Dojo Aplicado ao Ambiente Organizacional
Coding dojo
Coding Dojo
Coding dojo
DojoTuba: Coding Dojo - Tubarão, SC
Coding dojo
Pós Ruy - 2 e 3 Camadas - Coding Dojo
Coding Dojo #GuruPI
Coding dojo
Coding Dojo - Pycon Br 2008 - PT-BR
DojoMoc - Introdução Coding Dojo
Coding Dojo em 10 Minutos!
Coding Dojo: uma abordagem teórica e prática
Apresentação do Workshop BDD (Desenvolvimento Guiado por Comportamento) com V...
Coding Dojo no PUG - PE
Anúncio

Último (19)

PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PPTX
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PPTX
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Apple Pippin Uma breve introdução. - David Glotz
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PDF
Aula04-Academia Heri- Tecnologia Geral 2025
PDF
Processos na gestão de transportes, TM100 Col18
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PPTX
Aula 18 - Manipulacao De Arquivos python
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Aula16ManipulaçãoDadosssssssssssssssssssssssssssss
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
BANCO DE DADOS - AULAS INICIAIS-sgbd.pptx
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Apple Pippin Uma breve introdução. - David Glotz
COBITxITIL-Entenda as diferença em uso governança TI
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Custos e liquidação no SAP Transportation Management, TM130 Col18
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Aula04-Academia Heri- Tecnologia Geral 2025
Processos na gestão de transportes, TM100 Col18
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
Aula 18 - Manipulacao De Arquivos python
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx

Coding Dojo - Técnico

  • 1. Coding Dojo Aplicando Práticas Agéis Guilherme Oenning Contato: guilherme@oenning.eti.br Twitter: @goenning Site: http://oenning.eti.br
  • 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;
  • 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;
  • 11. Refactoring Boy Scout Rule: Leave the campground cleaner than you found it.
  • 14. Automatização dos Testes • Feedback Instantâneo; • Segurança; • Rápido; • Barato;
  • 17. Green. Nosso software está funcionando. 
  • 19. Red = Temos um Bug 
  • 22. Test Driven Development Escreva um teste Veja ele falhar Faça-o passar Veja ele passar Refatore
  • 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;
  • 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
  • 34. Happy Numbers • O processo para descobrir se um número é feliz é: • 72 = 49 • 42 + 92 = 97 • 92 + 72 = 130 • 12 + 32 + 02 = 10 • 12 + 02 = 1. • Caso o resultado seja 1, então o número é feliz. Caso ele entre em loop, o número é considerado infeliz. • Exemplos de 1 até 500: 1, 7, 10, 13, 19, 23, 28, 31, 32, 44, 49, 68, 70, 79, 82, 86, 91, 94, 97, 100, 103, 109, 129, 130, 133, 139, 167, 176, 188, 190, 192, 193, 203, 208, 219, 226, 230, 236, 239, 262, 263, 280, 291, 293, 301, 302, 310, 313, 319, 320, 326, 329, 331, 338, 356, 362, 365, 367, 368, 376, 379, 383, 386, 391, 392, 397, 404, 409, 440, 446, 464, 469, 478, 487, 490, 496 • Curiosidade: Motivo da criação é desconhecida, a utilidade também.
  • 35. Numeric Maze • Dado um número inicial e um final, encontrar o caminho mais rápido do início a fim. As operações possíveis são: • Dobrar; • Dividir; • Adicionar 2; • Exemplo 1 – De 2 até 9: • 2 * 2 = 4 • 4 * 2 = 8 • 8 * 2 = 16 • 16 + 2 = 18 • 18 / 2 = 9 • Exemplo 2 – de 2 até 10: • 2 * 2 = 4 • 4 * 2 = 8 • 8 + 2 = 10