Coding Dojo

  • View
    820

  • Download
    2

Embed Size (px)

DESCRIPTION

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.

Text of Coding Dojo

  • 1. Coding Dojo

2. Quem sou eu?Willians de Paula Pereira Especialista em Engenharia de Softwarecom nfase em Software Livre Professor do Instituto Federal deEducao, Cincia e Tecnologia deRondnia 3. Quem sou eu?Willians de Paula PereiraMembro do Grupo de Pesquisa em Automao e Robtica GPMecatrnicaCorintianoMesatenistaDesenvolvedorAprendizGeek 4. Por que eu deveria fazer CodingDojo?Programadores no treinam 5. Por que eu deveria fazer CodingDojo?Por que eu deveria treinar programao? 6. Por que eu deveria fazer CodingDojo?Na msica: eles treinam 7. Por que eu deveria fazer CodingDojo?Nas artes marciais: eles treinam 8. Por que eu deveria fazer CodingDojo?Nos esportes: eles treinam 9. Por que eu deveria fazer CodingDojo?At eles treinam 10. Por que eu deveria fazer CodingDojo?Quando programadores fazem treinamento apenas parte do que ele aprendeu se aplica no dia-a-dia 11. Por que eu deveria fazer Coding Dojo?Se voc no aplica o conhecimento adquirido: Voc no saber utilizar todo o pontencial dastecnologias Seu chefe vai te cobrar Voc vai se cobrar Seus amigos nerdsvo te zoar Voc ir arder no mrmoredo inferno 12. No se preocupe, pois todos os seus problemas acabaram Diretamente da 13. Whats f** Coding Dojo? 14. Primeiramente o que um Dojo? Dojo o local onde se treinam artesmarciais japonesas. Muito mais do queuma simples rea, o dojo deve serrespeitado como se fosse a casa dospraticantes. Por isso, comum ver o praticantefazendo uma reverncia antes deadentrar, tal como se faz nos laresjaponeses. do quer dizer caminho, estrada outrilha (sentido espiritual), e jo:lugar, espao fsico, stio. Logo, doj o lugar onde se pratica ocaminho de uma arte marcial 15. O que Coding Dojo?Segundo o http://codingdojo.org um Coding Dojo uma reunio onde um grupo de programadores se unem para trabalhar em um desafio de programao. Eles esto l para se divertir e se envolver, a fim de melhorar suas habilidades. 16. Ambos so treinamentosOs mais experientes passam o conhecimento para os menos experientesTreinamento a partir de repeties com pequenos passos 17. Como surgiu? No Mundo (desde 2003) a partir do Dojo deParis, fundado por: Dave Thomas - criou a idia em seu blog Laurent Bossavit - props a criao de umespao de treinamento em grupo, um Dojo Emannuel Gaillot No Brasil (desde 2007): Ivan Sanchez - Dojo Floripa (pioneiro) Danilo Sato - Dojo So Paulo - IME - USP Dojo de Recife Dojo Rio - Blog 18. ObjetivosPraticarAprenderEnsinarDescobrir o potencial de uma tecnologia discutindo com BASES CONCRETAS 19. Princpios Aprendizado contnuo Ambiente No-competitivo Colaborativo Inlcusivo Local paraexperimentar e testar Passos de beb (babysteps) 20. Regras GeraisComputador + ProjetorTDD Test-Driven Development vermelho -> verde -> refatoraoTodos devem entenderSempre recomea do zero 21. RestrospectivaAo final de toda reunio O que aprendemos? O que no aprendemos O que poderia melhorar?Discusses e comentrios 22. TODOS devem estar em sincronia 23. Prticas utilizadasProgramao em par 24. Prticas utilizadasTDD Test-Driven Development 25. Prticas utilizadas Passos de beb (baby steps) Implicam em fazer apenas pequenas mudanasde cada vez. Por exemplo, ao invs de escrever todo ocontedo de uma classe de uma vez, podemosnos concentrar em um mtodo de cada vez. 26. Prticas utilizadas Humanismo Pessoas desenvolvem software. Metodologias e ferramentasapenas as ajudam a realizar o trabalho. Falha Na dvida, falhe! Desenvolvimento de software sempre vemacompanhado de novos problemas, muitos dos quais notemos ideia de como resolver em princpio. Redundncia Sim, redundncia. Os problemas difceis e crticos emdesenvolvimento de software devem ser resolvidos de vriasformas diferentes. Qualidade Software de m qualidade representa uma enorme perda, Melhoria Ideal no nos preocuparmos em construir o softwareperfeito, nem o design perfeito, nem o processo perfeito, massim em aperfeioar esses e outros aspectos dos projetoscontinuamente. 27. E NUNCA ESQUEA DE REFATORAR 28. Essas prticas te lembram algo? 29. Mtodos geis tem tudo a ver comCoding Dojo 30. Fluxo do Coding Dojo 31. Fluxo de tempo 32. Tipos de DojoKataRandoriKake 33. Regras Gerais - KataApresentao de uma soluo de um problema de Dojo feito em casaApresentado em reunio ao vivoTodos devem conseguir reproduzirInterrupes so permitidas pra tirar dvidas 34. Regras Gerais - Randori TODOS discutem qual problema querem fazer TODOS fazem sugestes de testes para resolvero problema Programao em pares Turnos time-boxed Aps o turno (5-7 minutos) O co-piloto vira piloto O piloto volta pra platia Um novo co-piloto convidado da platia 35. Regras Gerais - RandoriDetalhe importante COMENTRIOS E CRTICAS DAPLATIA SOMENTE QUANDO OSTESTES ESTIVEREM VERDES SILNCIO QUANDO OS TESTESESTIVEREM VERMELHOS 36. Regras Gerais - Kake Evoluo do Randori Nvel mais avanado deCoding Dojo Sem projetor Vrios pares resolvem Diferentes problemas deuma mesma linguagem O mesmo problema emdiferentes linguagens Diferentes problemas emdiferentes linguagens 37. As sesses duram em mdia 2 horasNem sempre o desafio concludo, afinal no o objetivo 38. O que fazer em um Coding Dojo? Experimentar novas ideias Divertir-se Esquema da reunio 30 minutos preparativos (arrumar asala, lightning talks) 20 minutos escolha do problema (brainstorm) 60 minutos programao 20 a 30 minutos retrospectiva 10 minutos encerramento 39. O que NO FAZER no Coding Dojo? Correr para terminar o problema Pegar um problema real Entrar em "Flamewars" nasdiscusses Competir com outros participantes Deixar pessoas sem entender 40. Como aproveitar ao mximo oCoding DojoEntre nas discussesParticipeSeja piloto ou co-piloto mesmo que voc no conhea a tecnologia, lembre-se que as pessoas esto l pra te ajudarFaa networkingConhea pessoas diferentes 41. Ao final do Dojo no esquea da confraternizao += 42. Estratgias para promover CodingDojoEncontre pessoas interessadas em aprenderUtilize problemas diferentes em cada sessoDevem ser contnuosAs sesses devem acontecer normalmente de 15 em 15 diasConvide toda a comunidade de desenvolvedores e vista a camisa de programadorAps o Coding Dojo divulgue o que sua comunidade tem feito 43. Principais comunidades de Coding Dojo no BrasilDOJO RIO DOJO SP 44. 5 Razes para voc ter CodingDojo na sua empresa a maneira mais fcil e barata de investir em treinamentoEstimula habilidades sociais e de auto- organizao publicidade para a empresaIncentiva os desenvolvedores a participarem da comunidade 45. 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/ 46. @williansdepaula/williansdepaulawilliansdepaula@gmail.com