24
Dojo de Programa¸ ao Palestra da Conferencia Brasileira de PERL Ramiro Batista Luz 1 Grupo Dojo Paran´ a https://github.com/dojo-parana http://groups.google.com/group/dojo-parana [email protected] 15 de novembro de 2013 Ramiro Batista Luz Dojo de Programa¸c˜ ao

Dojo de Programação

Embed Size (px)

DESCRIPTION

Apresentação na Conferência Brasileira de PERL. YAPC 2013. http://2013.yapcbrasil.org.br/

Citation preview

Page 1: Dojo de Programação

Dojo de ProgramacaoPalestra da Conferencia Brasileira de PERL

Ramiro Batista Luz1

Grupo Dojo Paranahttps://github.com/dojo-parana

http://groups.google.com/group/dojo-parana

[email protected]

15 de novembro de 2013

Ramiro Batista Luz Dojo de Programacao

Page 2: Dojo de Programação

Origem da palavra

Traducao literal - lugar do caminho.

Monges - lugar onde se estuda a vida.

Atualmente - lugar onde artes marciais sao praticadas.

Ramiro Batista Luz Dojo de Programacao

Page 3: Dojo de Programação

Origem do Dojo de Programacao

O termo Kata.

Dave Thomas e os Katas de Codigo.

Laurent Bossavit e Emmanuel Gaillot fundam o dojo Paris.

Ramiro Batista Luz Dojo de Programacao

Page 4: Dojo de Programação

O que e o Dojo de Programacao?

Analogia com artes marciais. Sensei, discıpulos, pratica e observacao.

Dinamica do Dojo de Programacao, programacao em par,desenvolvimento dirigido por testes, passos de bebe, turnos,comunicacao de ideias, cooperacao, participacao, retrospectiva.

Estrutura, computador, projetor, quadro negro/branco ou flipchart.

Estilos, Prepared, Randori, Kake.

Ramiro Batista Luz Dojo de Programacao

Page 5: Dojo de Programação

Dojo SP - http://www.dojosp.org/.

Figura: Blog do grupo dojo Sao Paulo.

Ramiro Batista Luz Dojo de Programacao

Page 6: Dojo de Programação

Dojo Rio - http://dojorio.org/

Figura: Blog do grupo dojo Dojo Rio.

Ramiro Batista Luz Dojo de Programacao

Page 7: Dojo de Programação

Pagina do Dojo Parana - https://github.com/dojo-parana.

Figura: Pagina do Dojo Parana no GitHub.

Ramiro Batista Luz Dojo de Programacao

Page 8: Dojo de Programação

Lista do grupo Dojo Parana -http://groups.google.com/group/dojo-parana.

Figura: Lista Dojo Parana no Google Groups.

Ramiro Batista Luz Dojo de Programacao

Page 9: Dojo de Programação

Repositorio Dojo Parana -https://github.com/dojo-parana/dojo-parana.

Figura: Repositorio de codigos do Dojo Parana no GitHub.

Ramiro Batista Luz Dojo de Programacao

Page 10: Dojo de Programação

Codigo OCR em PERL.

Figura: Codigo de um Dojo em PERL.

Ramiro Batista Luz Dojo de Programacao

Page 11: Dojo de Programação

Pagina Dojo Puzzles - http://www.dojopuzzles.com/

Figura: Pagina com problemas para Dojo - DojoPuzzles.

Ramiro Batista Luz Dojo de Programacao

Page 12: Dojo de Programação

Pagina da Aldeia CoWorkinghttp://aldeiaco.com.br/cursos/?ee=49.

Figura: Pagina do espaco onde realizamos os encontros do Dojo Parana.

Ramiro Batista Luz Dojo de Programacao

Page 13: Dojo de Programação

Foto de um dojo de programacao.

Figura: Dojo de programacao do grupo dojo-parana.

Ramiro Batista Luz Dojo de Programacao

Page 14: Dojo de Programação

Desenvolvimento dirigido por testes. (TDD)

Implementar testes antes do codigo.

Feedback constante sobre o funcionamento do codigo.

Seguranca para mudar.

Ramiro Batista Luz Dojo de Programacao

Page 15: Dojo de Programação

Programacao em par

Compartilhamento do mesmo computador.

Comunicacao constante.

Revisao do codigo instantaneamente.

Ramiro Batista Luz Dojo de Programacao

Page 16: Dojo de Programação

Passos de bebe

Resolver pequenos problemas gradualmente.

Manter o codigo simples.

Ramiro Batista Luz Dojo de Programacao

Page 17: Dojo de Programação

Requisitos para realizacao

Computador.

Projetor.

Quadro branco.

Sensei.

Guru da linguagem.

Sala para cerca de 30 pessoas no maximo.

Ramiro Batista Luz Dojo de Programacao

Page 18: Dojo de Programação

A pratica de Dojos de Programacao

Relato da experiencia de criar e conduzir um Dojo de Programacao[Sato, Corbucci e Bravo 2008].

Opinioes sobre o aprendizado em ambientes ageis, avaliacao deatividades, Dojo de Programacao [Aniche e Silveira 2011].

Avaliacao de tecnicas de ensino de metodos ageis [Bravo 2011].

Apresentacao de Workshop sobre o Dojo de Programacao[Bossavit e Gaillot 2005] e [Bache 2009].

Uso didatico do Dojo de Programacao em ambiente academico[Carmo e Braganholo 2012].

Adaptacao do Dojo de Programacao para uso em curso superior[Delgado, Toledo e Braganholo 2012].

Ramiro Batista Luz Dojo de Programacao

Page 19: Dojo de Programação

Conclusao

Artigo [Luz, Neto e Noronha 2012] apresentado no SimposioBrasileiro de Informatica na Educacao - SBIE 2013.

Artigo [Luz, Neto e Noronha 2013] apresentado na InternationalConference on Advanced Learning Technologies - ICALT.

Elaboracao da Ontologia do Dojo de Programacao, usando metodoMethontology.

O Dojo de Programacao associado a aulas expositivas promovemaior interacao e participacao.

Benefıcios pela participacao, intervencao do professor podemminimizar efeito da timidez de alguns alunos.

Ramiro Batista Luz Dojo de Programacao

Page 20: Dojo de Programação

Agradecimentos

Adolfo Gustavo Serra Seca Neto - Orientador

Robinson Vida Noronha - Co-Orientador.

Felipe Leprevost e organizadores do YAPC 2013.

Tatiane Guimaraes, Matheus Araujo, PETECO e PETCOCE,organizacao do dojo UTFPR.

Joao Alberto Fabro e Gustavo Alberto Gimenez Lugo - apoioinstitucional para participar de eventos.

Danilo Sato, Hugo Corbucci, Daniel Wildt, Alexandre Freire,Roberto Leite de Moraes Rodrigues, Mauricio Aniche and ElizabethLeddy - participacao nas entrevistas.

Rodrigo Dias Arruda Senra, duvidas sobre ontologias.

Marcel Caraciolo, duvidas sobre estatıstica.

Aos participantes voluntarios do questionario eletronico.

Ramiro Batista Luz Dojo de Programacao

Page 21: Dojo de Programação

Vıdeo

Dojo - Muito alem do codigo.http://vimeo.com/20473572

Ramiro Batista Luz Dojo de Programacao

Page 22: Dojo de Programação

Referencias I

ANICHE, M. F.; SILVEIRA, G. d. A. Increasing learning in an agileenvironment: lessons learned in an agile team. In: 2011 AGILE confe-rence. Salt Lake City, UT, USA: [s.n.], 2011. p. 289–295. Disponıvel em:<http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=6005834>.

BACHE, E. Test driven development: performing art. In:ABRAHAMSSON, P. et al. (Ed.). Agile processes in softwareengineering and extreme programming. Springer Berlin Heidelberg,2009, (Lecture Notes in Business Information Processing, v. 31). p.217–218. ISBN 978-3-642-01853-4. 10.1007/978-3-642-01853-4 38.Disponıvel em: <http://dx.doi.org/10.1007/978-3-642-01853-4 38>.

BOSSAVIT, L.; GAILLOT, E. The coder’s dojo - a different way toteach and learn programming. In: BAUMEISTER, H.; MARCHESI,M.; HOLCOMBE, M. (Ed.). Extreme programming and agileprocesses in software engineering. Springer Berlin / Heidelberg, 2005,(Lecture Notes in Computer Science, v. 3556). p. 1156–1158. ISBN978-3-540-26277-0. 10.1007/11499053 54. Disponıvel em:<http://dx.doi.org/10.1007/11499053 54>.

Ramiro Batista Luz Dojo de Programacao

Page 23: Dojo de Programação

Referencias II

BRAVO, M. V. Abordagens para o ensino de praticas de programacaoextrema. Dissertacao (Mestrado) — Instituto de Matematica eEstatıstica da Universidade de Sao Paulo, maio 2011. Disponıvel em:<http://grenoble.ime.usp.br/ gold/orientados/dissertacao-MarianaBravo.pdf>.

CARMO, D.; BRAGANHOLO, V. Um estudo sobre o uso didatico dedojos de programacao. In: Workshop de educacao em computacao.sociedade brasileira de computacao. [S.l.: s.n.], 2012.

DELGADO, C.; TOLEDO, R. de; BRAGANHOLO, V. Uso de dojosno ensino superior de computacao. 2012.

LUZ, R.; NETO, A. G. S. S.; NORONHA, R. V. Usando Dojos deProgramacao para o Ensino de Desenvolvimento Dirigido por Testes.Anais do Simposio Brasileiro de Informatica na Educacao. ISSN2316-6533., nov. 2012.

Ramiro Batista Luz Dojo de Programacao

Page 24: Dojo de Programação

Referencias III

LUZ, R.; NETO, A. G. S. S.; NORONHA, R. V. Teaching TDD, theCoding Dojo Style. In: Proceedings of The 13th IEEE InternationalConference on Advanced Learning Technologies. [s.n.], 2013.Disponıvel em: <http://www.ask4research.info/icalt/2013/>.

SATO, D. T.; CORBUCCI, H.; BRAVO, M. V. Coding dojo: anenvironment for learning and sharing agile practices. AGILEConference, IEEE Computer Society, Los Alamitos, CA, USA, v. 0, p.459–464, 2008.

Ramiro Batista Luz Dojo de Programacao