Coding Dojo
Upcoming SlideShare
Loading in...5
×
 

Coding Dojo

on

  • 1,190 views

Apresentação realizada na Escola Regional de Informática RO/AC - ERIN3 explicando como funciona um Coding Dojo, vantanges, desvantagens. Slide baseado em conteúdos disponíveis na internet.

Apresentação realizada na Escola Regional de Informática RO/AC - ERIN3 explicando como funciona um Coding Dojo, vantanges, desvantagens. Slide baseado em conteúdos disponíveis na internet.

Statistics

Views

Total Views
1,190
Views on SlideShare
1,189
Embed Views
1

Actions

Likes
5
Downloads
17
Comments
0

1 Embed 1

http://us-w1.rockmelt.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Coding Dojo Coding Dojo Presentation Transcript

  • Coding Dojo
  • Quem sou eu?Willians de Paula Pereira Especialista em Engenharia de Software com Ênfase em Software Livre Professor do Instituto Federal de Educação, Ciência e Tecnologia de Rondônia
  • Quem sou eu? Willians de Paula PereiraMembro do Grupo de Pesquisa em Automação e Robótica – GPMecatrônicaCorintianoMesatenistaDesenvolvedorAprendizGeek
  • Por que eu deveria fazer CodingDojo?Programadores não treinam
  • Por que eu deveria fazer CodingDojo?Por que eu deveria treinar programação?
  • Por que eu deveria fazer CodingDojo?Na música: eles treinam
  • Por que eu deveria fazer CodingDojo?Nas artes marciais: eles treinam
  • Por que eu deveria fazer CodingDojo?Nos esportes: eles treinam
  • Por que eu deveria fazer CodingDojo?Até eles treinam
  • Por que eu deveria fazer CodingDojo?Quando programadores fazem treinamento apenas parte do que ele aprendeu se aplica no dia-a-dia
  • Por que eu deveria fazer Coding Dojo?Se você não aplica o conhecimento adquirido: Você não saberá utilizar todo o pontencial das tecnologias Seu chefe vai te cobrar Você vai se cobrar Seus amigos nerds vão te zoar Você irá arder no mármore do inferno
  • Não se preocupe, pois todos os seus problemas acabaram Diretamente da
  • What’s f** Coding Dojo?
  • Primeiramente o que é um Dojo? Dojo é o local onde se treinam artes marciais japonesas. 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. «do» quer dizer caminho, estrada ou trilha (sentido espiritual), e «jo»: lugar, espaço físico, sítio. Logo, «dojô» é o lugar onde se pratica o caminho de uma arte marcial
  • O que é Coding Dojo?Segundo o http://codingdojo.org “um Coding Dojo é uma reunião onde um grupo de programadores se unem para trabalhar em um desafio de programação. Eles estão lá para se divertir e se envolver, a fim de melhorar suas habilidades.”
  • Ambos são treinamentosOs mais experientes passam o conhecimento para os menos experientesTreinamento a partir de repetições com pequenos passos
  • Como surgiu? No Mundo (desde 2003) a partir do Dojo de Paris, fundado por:  Dave Thomas - criou a idéia em seu blog  Laurent Bossavit - propôs a criação de um espaço de treinamento em grupo, um Dojo  Emannuel Gaillot No Brasil (desde 2007):  Ivan Sanchez - Dojo Floripa (pioneiro)  Danilo Sato - Dojo São Paulo - IME - USP  Dojo de Recife  Dojo Rio - Blog
  • ObjetivosPraticarAprenderEnsinarDescobrir o potencial de uma tecnologia discutindo com BASES CONCRETAS
  • Princípios Aprendizado contínuo Ambiente  Não-competitivo  Colaborativo  Inlcusivo Local para experimentar e testar Passos de bebê (baby steps)
  • Regras GeraisComputador + ProjetorTDD – Test-Driven Development vermelho -> verde -> refatoraçãoTodos devem entenderSempre recomeça do zero
  • RestrospectivaAo final de toda reunião O que aprendemos? O que não aprendemos O que poderia melhorar? Discussões e comentários
  • TODOS devem estar em sincronia
  • Práticas utilizadasProgramação em par
  • Práticas utilizadasTDD – Test-Driven Development
  • Práticas utilizadas Passos de bebê (baby steps) Implicam em fazer apenas pequenas mudanças de cada vez. Por exemplo, ao invés de escrever todo o conteúdo de uma classe de uma vez, podemos nos concentrar em um método de cada vez.
  • Práticas utilizadas Humanismo  Pessoas desenvolvem software. Metodologias e ferramentas apenas as ajudam a realizar o trabalho. Falha  Na dúvida, falhe! Desenvolvimento de software sempre vem acompanhado de novos problemas, muitos dos quais não temos ideia de como resolver em princípio. Redundância  Sim, redundância. Os problemas difíceis e críticos em desenvolvimento de software devem ser resolvidos de várias formas diferentes. Qualidade  Software de má qualidade representa uma enorme perda, Melhoria  Ideal não nos preocuparmos em construir o software perfeito, nem o design perfeito, nem o processo perfeito, mas sim em aperfeiçoar esses e outros aspectos dos projetos continuamente.
  • E NUNCA ESQUEÇA DE REFATORAR
  • Essas práticas te lembram algo?
  • Métodos ágeis tem tudo a ver comCoding Dojo
  • Fluxo do Coding Dojo
  • Fluxo de tempo
  • Tipos de DojoKataRandoriKake
  • Regras Gerais - KataApresentação de uma solução de um problema de Dojo “feito em casa”Apresentado em reunião “ao vivo”Todos devem conseguir reproduzirInterrupções são permitidas pra tirar dúvidas
  • Regras Gerais - Randori TODOS discutem qual problema querem fazer TODOS fazem sugestões de testes para resolver o problema Programação em pares Turnos time-boxed Após o turno (5-7 minutos)  O co-piloto vira piloto  O piloto volta pra platéia  Um novo co-piloto é convidado da platéia
  • Regras Gerais - RandoriDetalhe importante COMENTÁRIOS E CRÍTICAS DA PLATÉIA SOMENTE QUANDO OS TESTES ESTIVEREM VERDES SILÊNCIO QUANDO OS TESTES ESTIVEREM VERMELHOS
  • Regras Gerais - Kake Evolução do Randori Nível mais avançado de Coding Dojo Sem projetor Vários pares resolvem  Diferentes problemas de uma mesma linguagem  O mesmo problema em diferentes linguagens  Diferentes problemas em diferentes linguagens
  • As sessões duram em média 2 horasNem sempre o desafio é concluído, afinal não é o objetivo
  • O que fazer em um Coding Dojo? Experimentar novas ideias Divertir-se Esquema da reunião  30 minutos – preparativos (arrumar a sala, lightning talks)  20 minutos – escolha do problema (brainstorm)  60 minutos – programação  20 a 30 minutos – retrospectiva  10 minutos – encerramento
  • O que NÃO FAZER no Coding Dojo? Correr para terminar o problema Pegar um problema real Entrar em "Flamewars" nas discussões Competir com outros participantes Deixar pessoas sem entender
  • Como aproveitar ao máximo oCoding DojoEntre nas discussõesParticipeSeja piloto ou co-piloto mesmo que você não conheça a tecnologia, lembre-se que as pessoas estão lá pra te ajudarFaça networkingConheça pessoas diferentes
  • Ao final do Dojo não esqueça da confraternização + =
  • Estratégias para promover CodingDojoEncontre pessoas interessadas em aprenderUtilize problemas diferentes em cada sessãoDevem ser contínuosAs sessões devem acontecer normalmente de 15 em 15 diasConvide toda a comunidade de desenvolvedores e vista a camisa de programadorApós o Coding Dojo divulgue o que sua comunidade tem feito
  • Principais comunidades de Coding Dojo no BrasilDOJO RIO DOJO SP
  • 5 Razões para você ter CodingDojo na sua empresaÉ a maneira mais fácil e barata de investir em treinamentoEstimula habilidades sociais e de auto- organizaçãoÉ publicidade para a empresaIncentiva os desenvolvedores a participarem da comunidade
  • Algumas fontes de problemas paraCoding Dojo Coding Dojo SP – Google Groups http://www.codingdojo.org/cgi-bin/wiki.pl?KataCatalogue http://dojopuzzles.com/ https://sites.google.com/site/tddproblems/all-problems-1 http://www.rubyquiz.com/
  • @williansdepaula /williansdepaulawilliansdepaula@gmail.com