O documento apresenta uma palestra sobre Dojos de Programação. Resume os principais pontos da origem e conceito de Dojos, descrevendo-os como locais onde programadores praticam programação em par, testes automatizados e resolução de problemas de forma incremental, de maneira análoga às artes marciais. Também lista alguns grupos de Dojos no Brasil e experiências acadêmicas com a metodologia.
1. Dojo de Programa¸˜o
ca
Palestra da Conferencia Brasileira de PERL
Ramiro Batista Luz1
Grupo Dojo Paran´
a
https://github.com/dojo-parana
http://groups.google.com/group/dojo-parana
ramiroluz@gmail.com
15 de novembro de 2013
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
2. Origem da palavra
Tradu¸˜o literal - lugar do caminho.
ca
Monges - lugar onde se estuda a vida.
Atualmente - lugar onde artes marciais s˜o praticadas.
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
3. Origem do Dojo de Programa¸˜o
ca
O termo Kata.
Dave Thomas e os Katas de C´digo.
o
Laurent Bossavit e Emmanuel Gaillot fundam o dojo Paris.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
4. O que ´ o Dojo de Programa¸˜o?
e
ca
Analogia com artes marciais. Sensei, disc´
ıpulos, pr´tica e observa¸˜o.
a
ca
Dinˆmica do Dojo de Programa¸˜o, programa¸˜o em par,
a
ca
ca
desenvolvimento dirigido por testes, passos de bebˆ, turnos,
e
comunica¸˜o de ideias, coopera¸˜o, participa¸˜o, retrospectiva.
ca
ca
ca
Estrutura, computador, projetor, quadro negro/branco ou flipchart.
Estilos, Prepared, Randori, Kake.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
5. Dojo SP - http://www.dojosp.org/.
Figura: Blog do grupo dojo S˜o Paulo.
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
6. Dojo Rio - http://dojorio.org/
Figura: Blog do grupo dojo Dojo Rio.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
7. P´gina do Dojo Paran´ - https://github.com/dojo-parana.
a
a
Figura: P´gina do Dojo Paran´ no GitHub.
a
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
8. Lista do grupo Dojo Paran´ a
http://groups.google.com/group/dojo-parana.
Figura: Lista Dojo Paran´ no Google Groups.
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
9. Reposit´rio Dojo Paran´ o
a
https://github.com/dojo-parana/dojo-parana.
Figura: Reposit´rio de c´digos do Dojo Paran´ no GitHub.
o
o
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
10. C´digo OCR em PERL.
o
Figura: C´digo de um Dojo em PERL.
o
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
11. P´gina Dojo Puzzles - http://www.dojopuzzles.com/
a
Figura: P´gina com problemas para Dojo - DojoPuzzles.
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
12. P´gina da Aldeia CoWorking
a
http://aldeiaco.com.br/cursos/?ee=49.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
13. Foto de um dojo de programa¸˜o.
ca
Figura: Dojo de programa¸˜o do grupo dojo-paran´.
ca
a
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
14. Desenvolvimento dirigido por testes. (TDD)
Implementar testes antes do c´digo.
o
Feedback constante sobre o funcionamento do c´digo.
o
Seguran¸a para mudar.
c
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
15. Programa¸˜o em par
ca
Compartilhamento do mesmo computador.
Comunica¸˜o constante.
ca
Revis˜o do c´digo instantaneamente.
a
o
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
16. Passos de bebˆ
e
Resolver pequenos problemas gradualmente.
Manter o c´digo simples.
o
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
18. A pr´tica de Dojos de Programa¸˜o
a
ca
Relato da experiˆncia de criar e conduzir um Dojo de Programa¸˜o
e
ca
[Sato, Corbucci e Bravo 2008].
Opini˜es sobre o aprendizado em ambientes ´geis, avalia¸˜o de
o
a
ca
atividades, Dojo de Programa¸˜o [Aniche e Silveira 2011].
ca
Avalia¸˜o de t´cnicas de ensino de m´todos ´geis [Bravo 2011].
ca
e
e
a
Apresenta¸˜o de Workshop sobre o Dojo de Programa¸˜o
ca
ca
[Bossavit e Gaillot 2005] e [Bache 2009].
Uso did´tico do Dojo de Programa¸˜o em ambiente acadˆmico
a
ca
e
[Carmo e Braganholo 2012].
Adapta¸˜o do Dojo de Programa¸˜o para uso em curso superior
ca
ca
[Delgado, Toledo e Braganholo 2012].
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
19. Conclus˜o
a
Artigo [Luz, Neto e Noronha 2012] apresentado no Simp´sio
o
Brasileiro de Inform´tica na Educa¸˜o - SBIE 2013.
a
ca
Artigo [Luz, Neto e Noronha 2013] apresentado na International
Conference on Advanced Learning Technologies - ICALT.
Elabora¸˜o da Ontologia do Dojo de Programa¸˜o, usando m´todo
ca
ca
e
Methontology.
O Dojo de Programa¸˜o associado a aulas expositivas promove
ca
maior intera¸˜o e participa¸˜o.
ca
ca
Benef´
ıcios pela participa¸˜o, interven¸˜o do professor podem
ca
ca
minimizar efeito da timidez de alguns alunos.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
20. Agradecimentos
Adolfo Gustavo Serra Seca Neto - Orientador
Robinson Vida Noronha - Co-Orientador.
Felipe Leprevost e organizadores do YAPC 2013.
Tatiane Guimar˜es, Matheus Ara´jo, PETECO e PETCOCE,
a
u
organiza¸˜o do dojo UTFPR.
ca
Jo˜o Alberto Fabro e Gustavo Alberto Gim´nez Lugo - apoio
a
e
institucional para participar de eventos.
Danilo Sato, Hugo Corbucci, Daniel Wildt, Alexandre Freire,
Roberto Leite de Moraes Rodrigues, Mauricio Aniche and Elizabeth
Leddy - participa¸˜o nas entrevistas.
ca
Rodrigo Dias Arruda Senra, d´vidas sobre ontologias.
u
Marcel Caraciolo, d´vidas sobre estat´
u
ıstica.
Aos participantes volunt´rios do question´rio eletrˆnico.
a
a
o
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
21. V´
ıdeo
Dojo - Muito al´m do c´digo.
e
o
http://vimeo.com/20473572
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
22. Referˆncias I
e
ANICHE, M. F.; SILVEIRA, G. d. A. Increasing learning in an agile
environment: lessons learned in an agile team. In: 2011 AGILE conference. Salt Lake City, UT, USA: [s.n.], 2011. p. 289–295. Dispon´ em:
ıvel
<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 software
engineering 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´ em: <http://dx.doi.org/10.1007/978-3-642-01853-4 38>.
ıvel
BOSSAVIT, L.; GAILLOT, E. The coder’s dojo - a different way to
teach and learn programming. In: BAUMEISTER, H.; MARCHESI,
M.; HOLCOMBE, M. (Ed.). Extreme programming and agile
processes in software engineering. Springer Berlin / Heidelberg, 2005,
(Lecture Notes in Computer Science, v. 3556). p. 1156–1158. ISBN
978-3-540-26277-0. 10.1007/11499053 54. Dispon´ em:
ıvel
<http://dx.doi.org/10.1007/11499053 54>.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
23. Referˆncias II
e
BRAVO, M. V. Abordagens para o ensino de pr´ticas de programa¸˜o
a
ca
extrema. Disserta¸˜o (Mestrado) — Instituto de Matem´tica e
ca
a
Estat´
ıstica da Universidade de S˜o Paulo, maio 2011. Dispon´ em:
a
ıvel
<http://grenoble.ime.usp.br/ gold/orientados/dissertacaoMarianaBravo.pdf>.
CARMO, D.; BRAGANHOLO, V. Um estudo sobre o uso did´tico de
a
dojos de programa¸˜o. In: Workshop de educa¸˜o em computa¸˜o.
ca
ca
ca
sociedade brasileira de computa¸ao. [S.l.: s.n.], 2012.
c
DELGADO, C.; TOLEDO, R. de; BRAGANHOLO, V. Uso de dojos
no ensino superior de computa¸˜o. 2012.
ca
LUZ, R.; NETO, A. G. S. S.; NORONHA, R. V. Usando Dojos de
Programacao para o Ensino de Desenvolvimento Dirigido por Testes.
Anais do Simp´sio Brasileiro de Inform´tica na Educa¸˜o. ISSN
o
a
ca
2316-6533., nov. 2012.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca
24. Referˆncias III
e
LUZ, R.; NETO, A. G. S. S.; NORONHA, R. V. Teaching TDD, the
Coding Dojo Style. In: Proceedings of The 13th IEEE International
Conference on Advanced Learning Technologies. [s.n.], 2013.
Dispon´ em: <http://www.ask4research.info/icalt/2013/>.
ıvel
SATO, D. T.; CORBUCCI, H.; BRAVO, M. V. Coding dojo: an
environment for learning and sharing agile practices. AGILE
Conference, IEEE Computer Society, Los Alamitos, CA, USA, v. 0, p.
459–464, 2008.
Ramiro Batista Luz
Dojo de Programa¸˜o
ca