SlideShare uma empresa Scribd logo
1 de 15
CODING DOJO Baseado em apresentação feita por Uilton Campos
Programadores não treinam; Foco no desenvolvimento de código de produção; O que fazer? Motivação
Aprendizado contínuo Ambiente seguro Não competitivo Colaborativo Inclusivo Passos de bebê Qualidade Melhoria Princípios
Computador + Projetor TDD (Vermelho >> Verde >> Refatorar) Sempre começa do zero Todos devem entender Regras Gerais
Ao final de toda reunião: O que aprendemos? O que gostamos? ,[object Object],Discussões, comentários Retrospectiva
Randori Programação em pares Turnos (5-7 min), para revezamento dos pares  Silêncio no vermelho Platéia comenta apenas na fase verde Formato
Praticar Aprender Ensinar Discussão com base concreta sobre o código Objetivos
Não pegue um problema real Não corra para resolver o problema  Não discuta sobre tecnologias  Sem competição entre os participantes Nunca deixe os participantes sem entender O que não fazer...
Daniel Cukier [locaweb], http://agilblog.locaweb.com.br/2009/10/09/coding-dojo/ CodingDojo.org, http://codingdojo.org/ Coding Dojo Piauí, http://www.slideshare.net/regispires/coding-dojo-1923746 Referências
Dúvidas?
Vamos aos problemas...
We all know URLs, http://www.google.se is a popular one.Develop a class that decomposes a given URL into its constituents. In the above example, we would like to get the result The protocol: "http" The domain name: "www.google.se" The path: an empty string in our example. Here are some example tests you could write to design this functionality: "http://some.thing" should give protocol=="http" "ftp://a.large.site" should give domain=="a.large.site" "http://a.site.with/a-path" should give path=="a-path" URL splitting
For example, the roman number XVII is means 17. All rules can be found on wikipedia: Roman numerals.You can go both ways, either int to Roman or Roman to int.This problem is good for demonstrating the incremental development of an algorithm; it requires a couple of key insights, one around the use of a table, and one around thinking about the order of the tests. Roman numberconversion
Ob Obrigado!

Mais conteúdo relacionado

Mais procurados

O que é Desenvolvimento de Aplicações
O que é Desenvolvimento de AplicaçõesO que é Desenvolvimento de Aplicações
O que é Desenvolvimento de AplicaçõesProfThiagoAAlves
 
Test Driven Development (TDD) para seres humanos.
Test Driven Development (TDD) para seres humanos.Test Driven Development (TDD) para seres humanos.
Test Driven Development (TDD) para seres humanos.Rômulo Augusto Santos
 
Prototype for life 20 ago2020
Prototype for life   20 ago2020Prototype for life   20 ago2020
Prototype for life 20 ago2020Fernando Tomé
 
7 Dicas para Desenvolvedores e Designers em um projeto
7 Dicas para Desenvolvedores e Designers em um projeto7 Dicas para Desenvolvedores e Designers em um projeto
7 Dicas para Desenvolvedores e Designers em um projetoTiago Cardoso
 
TDC2016SP - Trilha Startups
TDC2016SP - Trilha StartupsTDC2016SP - Trilha Startups
TDC2016SP - Trilha Startupstdc-globalcode
 
Programação Pragmática
Programação PragmáticaProgramação Pragmática
Programação Pragmáticaelliando dias
 
TDC2016SP - Trilha Startups
TDC2016SP - Trilha StartupsTDC2016SP - Trilha Startups
TDC2016SP - Trilha Startupstdc-globalcode
 
Do protótipo ao produto: técnicas que fazem sentido
Do protótipo ao produto: técnicas que fazem sentidoDo protótipo ao produto: técnicas que fazem sentido
Do protótipo ao produto: técnicas que fazem sentidoBarbara Wolff Dick
 
programming.success - carreira de programador
programming.success - carreira de programadorprogramming.success - carreira de programador
programming.success - carreira de programadorVinícius Krolow
 
Porque eu deveria utilizar Agile
Porque eu deveria utilizar AgilePorque eu deveria utilizar Agile
Porque eu deveria utilizar AgileRodrigo Branas
 
Workshop Prototipação em ux - Como validar uma ideia sem construir o produto
Workshop Prototipação em ux - Como validar uma ideia sem construir o produtoWorkshop Prototipação em ux - Como validar uma ideia sem construir o produto
Workshop Prototipação em ux - Como validar uma ideia sem construir o produtoCarla De Bona
 
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudável
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudávelAgile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudável
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudávelMauricio Andreazza
 
Introdução a Automação de Testes
Introdução a Automação de TestesIntrodução a Automação de Testes
Introdução a Automação de TestesLorena Caldas
 
TDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberTDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberCamilo Lopes
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do MantraDionatan default
 
[Recife Summer School 2013] Testers Tecnicos
[Recife Summer School 2013] Testers Tecnicos[Recife Summer School 2013] Testers Tecnicos
[Recife Summer School 2013] Testers TecnicosGuilherme Motta
 

Mais procurados (20)

O que é Desenvolvimento de Aplicações
O que é Desenvolvimento de AplicaçõesO que é Desenvolvimento de Aplicações
O que é Desenvolvimento de Aplicações
 
Test Driven Development (TDD) para seres humanos.
Test Driven Development (TDD) para seres humanos.Test Driven Development (TDD) para seres humanos.
Test Driven Development (TDD) para seres humanos.
 
Prototype for life 20 ago2020
Prototype for life   20 ago2020Prototype for life   20 ago2020
Prototype for life 20 ago2020
 
7 Dicas para Desenvolvedores e Designers em um projeto
7 Dicas para Desenvolvedores e Designers em um projeto7 Dicas para Desenvolvedores e Designers em um projeto
7 Dicas para Desenvolvedores e Designers em um projeto
 
TDC2016SP - Trilha Startups
TDC2016SP - Trilha StartupsTDC2016SP - Trilha Startups
TDC2016SP - Trilha Startups
 
Programação Pragmática
Programação PragmáticaProgramação Pragmática
Programação Pragmática
 
Tdd
TddTdd
Tdd
 
O que é "Coding Dojo"?
O que é "Coding Dojo"?O que é "Coding Dojo"?
O que é "Coding Dojo"?
 
TDC2016SP - Trilha Startups
TDC2016SP - Trilha StartupsTDC2016SP - Trilha Startups
TDC2016SP - Trilha Startups
 
Do protótipo ao produto: técnicas que fazem sentido
Do protótipo ao produto: técnicas que fazem sentidoDo protótipo ao produto: técnicas que fazem sentido
Do protótipo ao produto: técnicas que fazem sentido
 
Como melhorar seu Front-end Unit Test
Como melhorar seu Front-end Unit TestComo melhorar seu Front-end Unit Test
Como melhorar seu Front-end Unit Test
 
programming.success - carreira de programador
programming.success - carreira de programadorprogramming.success - carreira de programador
programming.success - carreira de programador
 
Porque eu deveria utilizar Agile
Porque eu deveria utilizar AgilePorque eu deveria utilizar Agile
Porque eu deveria utilizar Agile
 
Workshop Prototipação em ux - Como validar uma ideia sem construir o produto
Workshop Prototipação em ux - Como validar uma ideia sem construir o produtoWorkshop Prototipação em ux - Como validar uma ideia sem construir o produto
Workshop Prototipação em ux - Como validar uma ideia sem construir o produto
 
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudável
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudávelAgile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudável
Agile Brazil 2013: TDD e Clean Code, garantia de um desenvolvimento saudável
 
Introdução a Automação de Testes
Introdução a Automação de TestesIntrodução a Automação de Testes
Introdução a Automação de Testes
 
TDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saberTDC 2012 TDD e 20 coisas que você precisa saber
TDC 2012 TDD e 20 coisas que você precisa saber
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
TDD: A Essência do Mantra
TDD: A Essência do MantraTDD: A Essência do Mantra
TDD: A Essência do Mantra
 
[Recife Summer School 2013] Testers Tecnicos
[Recife Summer School 2013] Testers Tecnicos[Recife Summer School 2013] Testers Tecnicos
[Recife Summer School 2013] Testers Tecnicos
 

Semelhante a Apresentação sobre Coding Dojo

Coding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios ÁgeisCoding Dojo - Aplicando Princípios Ágeis
Coding Dojo - Aplicando Princípios ÁgeisLorival Smolski Chapuis
 
Coding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BRCoding Dojo - FISL 2009 - PT-BR
Coding Dojo - FISL 2009 - PT-BRHugo Corbucci
 
Dicas de carreira internacional para desenvolvedores Magento
Dicas de carreira internacional para desenvolvedores MagentoDicas de carreira internacional para desenvolvedores Magento
Dicas de carreira internacional para desenvolvedores MagentoRafael Corrêa Gomes
 
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-BRHugo Corbucci
 
Desenvolvimento Incremental com Test Driven Development
Desenvolvimento Incremental com Test Driven DevelopmentDesenvolvimento Incremental com Test Driven Development
Desenvolvimento Incremental com Test Driven DevelopmentLeonardo de Aguiar
 
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Adolfo Neto
 
Coding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / InstruçõesCoding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / InstruçõesPablo Bender
 
Introdução ao TDD (Test-Driven Development) - #guma10anos
Introdução ao TDD (Test-Driven Development) - #guma10anosIntrodução ao TDD (Test-Driven Development) - #guma10anos
Introdução ao TDD (Test-Driven Development) - #guma10anosDionatan default
 
TDD direto das trincheiras
TDD direto das trincheirasTDD direto das trincheiras
TDD direto das trincheirasLuiz Borba
 

Semelhante a Apresentação sobre Coding Dojo (20)

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
 
Dojo abril
Dojo abrilDojo abril
Dojo abril
 
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 dojo Coding 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
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
Coding dojo
Coding dojoCoding dojo
Coding dojo
 
Dicas de carreira internacional para desenvolvedores Magento
Dicas de carreira internacional para desenvolvedores MagentoDicas de carreira internacional para desenvolvedores Magento
Dicas de carreira internacional para desenvolvedores Magento
 
Coding Dojo
Coding DojoCoding Dojo
Coding Dojo
 
DojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SCDojoTuba: Coding Dojo - Tubarão, SC
DojoTuba: Coding Dojo - Tubarão, SC
 
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
 
Desenvolvimento Incremental com Test Driven Development
Desenvolvimento Incremental com Test Driven DevelopmentDesenvolvimento Incremental com Test Driven Development
Desenvolvimento Incremental com Test Driven Development
 
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
Coding Dojos para Aprendizagem de TDD - Há Evidências Científicas? - Ignite T...
 
Pensando TDD
Pensando TDDPensando TDD
Pensando TDD
 
Coding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / InstruçõesCoding Dojo - Apresentação / Instruções
Coding Dojo - Apresentação / Instruções
 
Introdução ao TDD (Test-Driven Development) - #guma10anos
Introdução ao TDD (Test-Driven Development) - #guma10anosIntrodução ao TDD (Test-Driven Development) - #guma10anos
Introdução ao TDD (Test-Driven Development) - #guma10anos
 
Coding Dojo Aplicado ao Ambiente Organizacional
Coding Dojo Aplicado ao Ambiente OrganizacionalCoding Dojo Aplicado ao Ambiente Organizacional
Coding Dojo Aplicado ao Ambiente Organizacional
 
TDD direto das trincheiras
TDD direto das trincheirasTDD direto das trincheiras
TDD direto das trincheiras
 
Introdução ao TDD
Introdução ao TDDIntrodução ao TDD
Introdução ao TDD
 

Mais de Denis Ferrari

Arquitetura evolutiva - DNAD 2013
Arquitetura evolutiva - DNAD 2013Arquitetura evolutiva - DNAD 2013
Arquitetura evolutiva - DNAD 2013Denis Ferrari
 
Empreendedorismo - Ao vivo e sem retoques
Empreendedorismo - Ao vivo e sem retoquesEmpreendedorismo - Ao vivo e sem retoques
Empreendedorismo - Ao vivo e sem retoquesDenis Ferrari
 
DevInCachu 2013: Arquitetura evolutiva
DevInCachu 2013: Arquitetura evolutivaDevInCachu 2013: Arquitetura evolutiva
DevInCachu 2013: Arquitetura evolutivaDenis Ferrari
 
10 coisas que aprendi com o tempo
10 coisas que aprendi com o tempo10 coisas que aprendi com o tempo
10 coisas que aprendi com o tempoDenis Ferrari
 
UCL Innovation Party - Framework .NET
UCL Innovation Party - Framework .NETUCL Innovation Party - Framework .NET
UCL Innovation Party - Framework .NETDenis Ferrari
 
Desenvolvimento de software - Mercado e Carreira
Desenvolvimento de software - Mercado e CarreiraDesenvolvimento de software - Mercado e Carreira
Desenvolvimento de software - Mercado e CarreiraDenis Ferrari
 
Previsibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwarePrevisibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwareDenis Ferrari
 
Desenvolvimento orientado a Testes
Desenvolvimento orientado a TestesDesenvolvimento orientado a Testes
Desenvolvimento orientado a TestesDenis Ferrari
 

Mais de Denis Ferrari (10)

Arquitetura evolutiva - DNAD 2013
Arquitetura evolutiva - DNAD 2013Arquitetura evolutiva - DNAD 2013
Arquitetura evolutiva - DNAD 2013
 
Empreendedorismo - Ao vivo e sem retoques
Empreendedorismo - Ao vivo e sem retoquesEmpreendedorismo - Ao vivo e sem retoques
Empreendedorismo - Ao vivo e sem retoques
 
DevInCachu 2013: Arquitetura evolutiva
DevInCachu 2013: Arquitetura evolutivaDevInCachu 2013: Arquitetura evolutiva
DevInCachu 2013: Arquitetura evolutiva
 
10 coisas que aprendi com o tempo
10 coisas que aprendi com o tempo10 coisas que aprendi com o tempo
10 coisas que aprendi com o tempo
 
UCL Innovation Party - Framework .NET
UCL Innovation Party - Framework .NETUCL Innovation Party - Framework .NET
UCL Innovation Party - Framework .NET
 
Desenvolvimento de software - Mercado e Carreira
Desenvolvimento de software - Mercado e CarreiraDesenvolvimento de software - Mercado e Carreira
Desenvolvimento de software - Mercado e Carreira
 
Previsibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de softwarePrevisibilidade em desenvolvimento de software
Previsibilidade em desenvolvimento de software
 
Desenvolvimento orientado a Testes
Desenvolvimento orientado a TestesDesenvolvimento orientado a Testes
Desenvolvimento orientado a Testes
 
AOP
AOPAOP
AOP
 
TDD (Resumo)
TDD (Resumo)TDD (Resumo)
TDD (Resumo)
 

Apresentação sobre Coding Dojo

  • 1. CODING DOJO Baseado em apresentação feita por Uilton Campos
  • 2. Programadores não treinam; Foco no desenvolvimento de código de produção; O que fazer? Motivação
  • 3.
  • 4. Aprendizado contínuo Ambiente seguro Não competitivo Colaborativo Inclusivo Passos de bebê Qualidade Melhoria Princípios
  • 5. Computador + Projetor TDD (Vermelho >> Verde >> Refatorar) Sempre começa do zero Todos devem entender Regras Gerais
  • 6.
  • 7. Randori Programação em pares Turnos (5-7 min), para revezamento dos pares Silêncio no vermelho Platéia comenta apenas na fase verde Formato
  • 8. Praticar Aprender Ensinar Discussão com base concreta sobre o código Objetivos
  • 9. Não pegue um problema real Não corra para resolver o problema Não discuta sobre tecnologias Sem competição entre os participantes Nunca deixe os participantes sem entender O que não fazer...
  • 10. Daniel Cukier [locaweb], http://agilblog.locaweb.com.br/2009/10/09/coding-dojo/ CodingDojo.org, http://codingdojo.org/ Coding Dojo Piauí, http://www.slideshare.net/regispires/coding-dojo-1923746 Referências
  • 13. We all know URLs, http://www.google.se is a popular one.Develop a class that decomposes a given URL into its constituents. In the above example, we would like to get the result The protocol: "http" The domain name: "www.google.se" The path: an empty string in our example. Here are some example tests you could write to design this functionality: "http://some.thing" should give protocol=="http" "ftp://a.large.site" should give domain=="a.large.site" "http://a.site.with/a-path" should give path=="a-path" URL splitting
  • 14. For example, the roman number XVII is means 17. All rules can be found on wikipedia: Roman numerals.You can go both ways, either int to Roman or Roman to int.This problem is good for demonstrating the incremental development of an algorithm; it requires a couple of key insights, one around the use of a table, and one around thinking about the order of the tests. Roman numberconversion