SlideShare uma empresa Scribd logo
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/

Mais conteúdo relacionado

Mais procurados

Demoiselle Paraguay Dojo 18/01/2012
Demoiselle Paraguay Dojo 18/01/2012Demoiselle Paraguay Dojo 18/01/2012
Demoiselle Paraguay Dojo 18/01/2012
Cleverson Sacramento
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Regis Magalhães
 
Coding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / InstruçõesCoding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / Instruções
Pablo Bender
 
Curso MySQL #01 - Surgimento dos Bancos de Dados
Curso MySQL #01 - Surgimento dos Bancos de DadosCurso MySQL #01 - Surgimento dos Bancos de Dados
Curso MySQL #01 - Surgimento dos Bancos de Dados
Curso em Vídeo - Cursos Grátis com Certificado
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
Ramiro Luz
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Rodrigo Branas
 
Coding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios ÁgeisCoding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios Ágeis
Lorival Smolski Chapuis
 
Coding Dojo
Coding DojoCoding Dojo
Curso MySQL #07 - Manipulando Registros DELETE UPDATE
Curso MySQL #07 - Manipulando Registros DELETE UPDATECurso MySQL #07 - Manipulando Registros DELETE UPDATE
Curso MySQL #07 - Manipulando Registros DELETE UPDATE
Curso em Vídeo - Cursos Grátis com Certificado
 
Learning Dojo
Learning DojoLearning Dojo
Learning Dojo
Flávio Lisboa
 
Curso MySQL #04 - Melhorando banco de dados
Curso MySQL #04 - Melhorando banco de dadosCurso MySQL #04 - Melhorando banco de dados
Curso MySQL #04 - Melhorando banco de dados
Curso em Vídeo - Cursos Grátis com Certificado
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Henrique Bastos
 
Curso MySQL #05 - Inserindo Dados INSERT INTO
Curso MySQL #05 - Inserindo Dados INSERT INTOCurso MySQL #05 - Inserindo Dados INSERT INTO
Curso MySQL #05 - Inserindo Dados INSERT INTO
Curso em Vídeo - Cursos Grátis com Certificado
 
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQLCurso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso em Vídeo - Cursos Grátis com Certificado
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
Marlon Carvalho
 
Palestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalhoPalestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalho
Janynne Gomes
 
Step
StepStep
Step
Saturno
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Marlon Carvalho
 
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOINCurso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso em Vídeo - Cursos Grátis com Certificado
 
Curso MySQL #16 - SQL com JOIN para mais de uma tabela
Curso MySQL #16 - SQL com JOIN para mais de uma tabelaCurso MySQL #16 - SQL com JOIN para mais de uma tabela
Curso MySQL #16 - SQL com JOIN para mais de uma tabela
Curso em Vídeo - Cursos Grátis com Certificado
 

Mais procurados (20)

Demoiselle Paraguay Dojo 18/01/2012
Demoiselle Paraguay Dojo 18/01/2012Demoiselle Paraguay Dojo 18/01/2012
Demoiselle Paraguay Dojo 18/01/2012
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Coding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / InstruçõesCoding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / Instruções
 
Curso MySQL #01 - Surgimento dos Bancos de Dados
Curso MySQL #01 - Surgimento dos Bancos de DadosCurso MySQL #01 - Surgimento dos Bancos de Dados
Curso MySQL #01 - Surgimento dos Bancos de Dados
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Coding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios ÁgeisCoding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios Ágeis
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Curso MySQL #07 - Manipulando Registros DELETE UPDATE
Curso MySQL #07 - Manipulando Registros DELETE UPDATECurso MySQL #07 - Manipulando Registros DELETE UPDATE
Curso MySQL #07 - Manipulando Registros DELETE UPDATE
 
Learning Dojo
Learning DojoLearning Dojo
Learning Dojo
 
Curso MySQL #04 - Melhorando banco de dados
Curso MySQL #04 - Melhorando banco de dadosCurso MySQL #04 - Melhorando banco de dados
Curso MySQL #04 - Melhorando banco de dados
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Curso MySQL #05 - Inserindo Dados INSERT INTO
Curso MySQL #05 - Inserindo Dados INSERT INTOCurso MySQL #05 - Inserindo Dados INSERT INTO
Curso MySQL #05 - Inserindo Dados INSERT INTO
 
Curso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQLCurso MySQL #03 - Criando um Banco de Dados MySQL
Curso MySQL #03 - Criando um Banco de Dados MySQL
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Palestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalhoPalestra: Desafios do desenvolvedor no mercado de trabalho
Palestra: Desafios do desenvolvedor no mercado de trabalho
 
Step
StepStep
Step
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOINCurso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
Curso MySQL #15 - Chaves Estrangeiras e SELECT com JOIN
 
Curso MySQL #16 - SQL com JOIN para mais de uma tabela
Curso MySQL #16 - SQL com JOIN para mais de uma tabelaCurso MySQL #16 - SQL com JOIN para mais de uma tabela
Curso MySQL #16 - SQL com JOIN para mais de uma tabela
 

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

Coding Dojo - Pycon Br 2008 - PT-BR
Coding Dojo - Pycon Br 2008 - PT-BRCoding Dojo - Pycon Br 2008 - PT-BR
Coding Dojo - Pycon Br 2008 - PT-BR
Hugo Corbucci
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
Jeferson Calazans
 
Coding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BRCoding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BR
Hugo Corbucci
 
DojoTuba 01
DojoTuba 01DojoTuba 01
DojoTuba 01
Thiago Ghisi
 
#safaDojo com Android
#safaDojo com Android#safaDojo com Android
#safaDojo com Android
Ramon Ribeiro Rabello
 
#safaDojo com Android
#safaDojo com Android#safaDojo com Android
#safaDojo com Android
Comunidade Tá safo!
 
Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!
Josenaldo de Oliveira Matos Filho
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Henrique Bastos
 
O que é "Coding Dojo"?
O que é "Coding Dojo"?O que é "Coding Dojo"?
O que é "Coding Dojo"?
Israel Teixeira
 
Dojo abril
Dojo abrilDojo abril
I CEFET Coding Dojo - Divulgação
I CEFET Coding Dojo - DivulgaçãoI CEFET Coding Dojo - Divulgação
I CEFET Coding Dojo - Divulgação
thiagodp
 
Joinville Dojo 2010
Joinville Dojo   2010Joinville Dojo   2010
Joinville Dojo 2010
Lorival Smolski Chapuis
 
Coding Dojo Juiz de Fora
Coding Dojo Juiz de ForaCoding Dojo Juiz de Fora
Coding Dojo Juiz de Fora
marlonmandrade
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
Dionatan default
 
CEFET Coding Dojo - Divulgação
CEFET Coding Dojo - DivulgaçãoCEFET Coding Dojo - Divulgação
CEFET Coding Dojo - Divulgação
thiagodp
 
DojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SCDojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SC
Gefferson Figueiredo Marcos
 
Ebook como planejar cursos online
Ebook como planejar cursos onlineEbook como planejar cursos online
Ebook como planejar cursos online
Cursos Que Funcionam
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
Daniel Cukier
 
Coding dojo C# com NUnit
Coding dojo C# com NUnitCoding dojo C# com NUnit
Coding dojo C# com NUnit
Fabricio Panhan
 
Webquest fracções equivalentes
Webquest   fracções equivalentesWebquest   fracções equivalentes
Webquest fracções equivalentes
Joao Ferreira
 

Semelhante a Coding Dojo: uma abordagem teórica e prática (20)

Coding Dojo - Pycon Br 2008 - PT-BR
Coding Dojo - Pycon Br 2008 - PT-BRCoding Dojo - Pycon Br 2008 - PT-BR
Coding Dojo - Pycon Br 2008 - PT-BR
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Coding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BRCoding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BR
 
DojoTuba 01
DojoTuba 01DojoTuba 01
DojoTuba 01
 
#safaDojo com Android
#safaDojo com Android#safaDojo com Android
#safaDojo com Android
 
#safaDojo com Android
#safaDojo com Android#safaDojo com Android
#safaDojo com Android
 
Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!Coding Dojo em 10 Minutos!
Coding Dojo em 10 Minutos!
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
O que é "Coding Dojo"?
O que é "Coding Dojo"?O que é "Coding Dojo"?
O que é "Coding Dojo"?
 
Dojo abril
Dojo abrilDojo abril
Dojo abril
 
I CEFET Coding Dojo - Divulgação
I CEFET Coding Dojo - DivulgaçãoI CEFET Coding Dojo - Divulgação
I CEFET Coding Dojo - Divulgação
 
Joinville Dojo 2010
Joinville Dojo   2010Joinville Dojo   2010
Joinville Dojo 2010
 
Coding Dojo Juiz de Fora
Coding Dojo Juiz de ForaCoding Dojo Juiz de Fora
Coding Dojo Juiz de Fora
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
 
CEFET Coding Dojo - Divulgação
CEFET Coding Dojo - DivulgaçãoCEFET Coding Dojo - Divulgação
CEFET Coding Dojo - Divulgação
 
DojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SCDojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SC
 
Ebook como planejar cursos online
Ebook como planejar cursos onlineEbook como planejar cursos online
Ebook como planejar cursos online
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Coding dojo C# com NUnit
Coding dojo C# com NUnitCoding dojo C# com NUnit
Coding dojo C# com NUnit
 
Webquest fracções equivalentes
Webquest   fracções equivalentesWebquest   fracções equivalentes
Webquest fracções equivalentes
 

Último

Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
EliakimArajo2
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
Rafael Santos
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
anpproferick
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
anpproferick
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
Ian Oliveira
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
tnrlucas
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Annelise Gripp
 

Último (7)

Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
 
Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
 

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