Coding Dojo: uma abordagem
teórica e prática
Fernando Kenji Kamei
Novembro de 2010
III Jornada Acadêmica de
Informática da FAL
O Surgimento...
Em 2003, no
Dojo Paris
Dave Thomas
Lauret Bossavit
Emannuel Gaillet
Motivação...
Onde surgiu a
Motivação?
Programadores não treinam...
Treinar sempre...
ProgramadoresProgramadores reunidos p/reunidos p/ treinartreinar ee aprenderaprender,,
trabalhandotrabalhando juntosjuntos numnum desafiodesafio
Coding Dojo
Mas de quê modo?
Praticando,
aprendendo... e
se divertindo!
25/05/10
E sim um ambiente de...
Aprendizado Colaborativo,
não competitivo...
para Resolver problemas
de programação...
Com a finalidade de...
Aprender através de
experiências em grupo
Ou seja, treinar bastante
Ambiente de Treinamento...
O que faz parte do Dojo...
Programação em Par
Piloto e Co-piloto
Aprendizado Colaborativo
TTDDDD
redred -- greengreen -- refactorrefactor
Babys Steps
Refactoring
Melhorar algo que estava
funcionando...
E deixar sempre
funcionando após o
refactoring
Design Simples
Fazer as coisas da maneira
mais simples...
Mas sempre funcional...
piloto/copilotopiloto/copiloto fixosfixos
resolvem antes, apresentamresolvem antes, apresentam ao vivoao vivo
Prepared
Kata
Prepared
Kata
Uso doUso do TDDTDD ee Babys StepsBabys Steps
TodosTodos devemdevem entenderentender, se não,, se não, PerguntePergunte!!
25/05/10
http://dojorio.wordpress.com/2009/05/11/coding-dojo-rio-na-pythoncampus-na-universidade-gama-filho-no-campus-
da-piedade/
Pair programming = piloto + co-pilotoPair programming = piloto + co-piloto
problema resolvidoproblema resolvido ao vivoao vivo
Randori
25/05/10
http://dojorio.wordpress.com/2009/05/11/coding-dojo-rio-na-pythoncampus-na-universidade-gama-filho-no-campus-
da-piedade/
piloto/copilotopiloto/copiloto alternam, 5 a 10' p/ cadaalternam, 5 a 10' p/ cada
Randori
TodosTodos são convidadossão convidados
25/05/10
http://dojorio.wordpress.com/2009/05/11/coding-dojo-rio-na-pythoncampus-na-universidade-gama-filho-no-campus-
da-piedade/
piloto/copilotopiloto/copiloto alternam, 5 a 10' p/ cadaalternam, 5 a 10' p/ cada
Randori
TodosTodos são convidados a ajudarsão convidados a ajudar
25/05/10
foi bom?foi bom?
foi ruim?foi ruim?
O queO que
aprendemos?
aprendemos?
retrospectivahttp://blog.seatecnologia.com.br/tag/
dojo
Agradecimentos
 Organização do Jainf III
 Natália Julieta (nataliajulieta@gmail.com)
 Grupo de Dojo – LabES (Cin­UFPE)
 Serge Rehem por disponilizar sua apresentação
Referências
 Grupo Dojo-Bahia
– groups.google.com.br/group/dojo­bahia
 http://www.dtsato.com/blog/
 http://codingdojo.org/
 http://blog.improveit.com.br/
 http://www.slideshare.net/serge_rehem/coding­
dojo­em­5­minutos
Desafio 01 – Números Primos
Obter a lista de números
primos até um
determinado valor (Ex.: 10
-> 2, 3, 5, 7)
Desafio 02 – KataFizzBuzz
Fase 01
Programa que escreva de 1 a 100. Sendo
que, os números divisíveis por 3, escreva
“Fizz” ao invés do número, e os
divisíveis por 5, escreva “Buzz” ao invés
do número. Para os números divisíveis
por 3 e 5, escreva “FizzBuzz”
Desafio 02 – KataFizzBuzz
Fase 02 – Novas exigências
Agora o programa deve escrever “Fizz”
os números divisíveis por 3 ou conter um
3.
E deve escrever “Buzz” os números
divisíveis por 5 ou conter um 5.
Desafio 03 – Roman Numerals
Fazer um programa que converta os
números em decimais em números
romanos
Esta obra está licenciada sob uma
Licença Creative Commons
http://creativecommons.org/licenses/by-nc-sa/2.0/br/

Coding Dojo: uma abordagem teórica e prática