Dojo de Programação

Preview:

DESCRIPTION

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

Citation preview

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

ramiroluz@gmail.com

15 de novembro de 2013

Ramiro Batista Luz Dojo de Programacao

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

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

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

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

Figura: Blog do grupo dojo Sao Paulo.

Ramiro Batista Luz Dojo de Programacao

Dojo Rio - http://dojorio.org/

Figura: Blog do grupo dojo Dojo Rio.

Ramiro Batista Luz Dojo de Programacao

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

Figura: Pagina do Dojo Parana no GitHub.

Ramiro Batista Luz Dojo de Programacao

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

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

Codigo OCR em PERL.

Figura: Codigo de um Dojo em PERL.

Ramiro Batista Luz Dojo de Programacao

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

Figura: Pagina com problemas para Dojo - DojoPuzzles.

Ramiro Batista Luz Dojo de Programacao

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

Foto de um dojo de programacao.

Figura: Dojo de programacao do grupo dojo-parana.

Ramiro Batista Luz Dojo de Programacao

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

Programacao em par

Compartilhamento do mesmo computador.

Comunicacao constante.

Revisao do codigo instantaneamente.

Ramiro Batista Luz Dojo de Programacao

Passos de bebe

Resolver pequenos problemas gradualmente.

Manter o codigo simples.

Ramiro Batista Luz Dojo de Programacao

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

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

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

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

Vıdeo

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

Ramiro Batista Luz Dojo de Programacao

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

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

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