<?xml version="1.0" encoding="UTF-8"?>
<evento>
<topico>
<nome>Coding Dojo</nome>
<titulo>Coding Dojo</titulo>
<descritor>apoie, apoie.org,
Tabela de Decisões, programa, simplificar, método, LDC, Dojo, Dojo Rio,
Coding Dojo, Kata, Princípios, Regras Gerais, Retrospectiva, Formatos,
Kata, Randori, Kake, Objetivos, Como funciona</descritor>
<lead>Treinamento para programadores utilizando TDD (Desenvolvimento Orientado a Testes).</lead>
<tempo>10:17min</tempo>
<origem>Dojo.xml</origem>
<fonte>&lt;a href=&quot;http://agilblog.locaweb.com.br/2009/10/09/coding-dojo/&quot; target=&quot;_blank&quot;&gt;vídeo de Daniel Cukier (Locaweb)&lt;/a&gt; baseado em slides de &lt;a href=&quot;http://www.dtsato.com/blog/2007/08/27/dojo-treino-para-programadores/&quot; target=&quot;_blank&quot;&gt;Danilo Sato&lt;/a&gt;.</fonte>
</topico>
<topico>
<titulo>Dojo</titulo>
<desc>
Dojo (pessoas interessadas, recursos) =&amp;gt; diversão, aprendizagem&lt;br&gt;
&lt;br&gt;
&lt;table&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td colspan=&quot;3&quot; rowspan=&quot;1&quot;&gt;&lt;br&gt;
&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt; Programadores se
reúnem para&amp;nbsp;aprender.&lt;br&gt;
Experiências&amp;nbsp;compartilhadas com o grupo.&lt;br&gt;
Ambiente inclusivo e seguro. &lt;br&gt;
      &lt;img src=&quot;DojoFluxoTempo.png&quot; alt=&quot;Fluxo do dojo=&quot; title=&quot;Fluxo de tempo&quot;&gt;&lt;br&gt;
      &lt;/td&gt;
      &lt;td&gt;Reuniões centradas num desafio de programação. &lt;br&gt;
Desenvolvimento orientado a teste (TDD).&lt;br&gt;
      &lt;img src=&quot;DojoFluxoProcesso.png&quot; alt=&quot;Fluxo&quot; title=&quot;Fluxo do dojo&quot;&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;ul&gt;
&lt;/ul&gt;
</desc>
</topico>
<topico>
<titulo>Definição, objetivo
e como funciona.</titulo>
<desc> O Dojo é um espaço
onde programadores se reúnem para treinar e aprender. As reuniões são
periódicas e centradas num desafio de programação. &lt;br&gt;
&lt;br&gt;
Apesar do desafio, o objetivo não é terminar o problema. A idéia é
aprender com as experiências vivenciadas pelo grupo. O ambiente é
inclusivo, seguro e convidativo. &lt;br&gt;
&lt;br&gt;
&lt;table cellpadding=&quot;2&quot; cellspacing=&quot;0&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;
&lt;div style=&quot;font-family: Courier; text-align: left; white-space: nowrap;&quot;&gt;
&lt;a href=&quot;Dojo.html&quot;&gt;Dojo&lt;/a&gt; (recursos) =&amp;gt;
diversão, aprendizagem
&lt;ol&gt;
  &lt;li&gt;Definir problema e linguagem&lt;/li&gt;
  &lt;li&gt;Dupla sempre explica modificações
  &lt;/li&gt;
&lt;/ol&gt;
&lt;table style=&quot;margin-left: 50px;&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td colspan=&quot;4&quot; rowspan=&quot;1&quot;&gt;Repete&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;1.&lt;/td&gt;
      &lt;td colspan=&quot;3&quot;&gt;Adicionar teste que falhe&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;2.&lt;/td&gt;
      &lt;td colspan=&quot;3&quot;&gt;Teste passou?&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;br&gt;
&lt;/td&gt;
      &lt;td&gt;|&lt;/td&gt;
      &lt;td colspan=&quot;2&quot;&gt;Refatorar?&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
            &lt;td style=&quot;vertical-align: top;&quot;&gt;&lt;br&gt;
            &lt;/td&gt;
            &lt;td style=&quot;vertical-align: top;&quot;&gt;|&lt;br&gt;
            &lt;/td&gt;
            &lt;td style=&quot;vertical-align: top;&quot;&gt;|&lt;br&gt;
            &lt;/td&gt;
            &lt;td style=&quot;vertical-align: top;&quot;&gt;&lt;br&gt;
            &lt;/td&gt;
          &lt;/tr&gt;
&lt;tr&gt;
      &lt;td&gt;&lt;br&gt;
&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;Refatorar testes/programa&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;br&gt;
&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;.&lt;/td&gt;
      &lt;td&gt;Codificar programa&lt;br&gt;
Platéia em silencio&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;&lt;br&gt;
&lt;/td&gt;
      &lt;td&gt;1&lt;/td&gt;
      &lt;td&gt;.&lt;/td&gt;
      &lt;td&gt;Platéia participa&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
      &lt;/td&gt;
      &lt;td&gt;&lt;img src=&quot;DojoFluxoProcesso.png&quot; alt=&quot;Fluxo&quot; title=&quot;Fluxo do dojo&quot;&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
</topico>
<topico>
<titulo>Rotatividade</titulo>
<desc>
&lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot; cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Personagens (Quem)&lt;/span&gt;&lt;br&gt;
      &lt;ul&gt;
        &lt;li&gt;Piloto = quem digita o código&lt;/li&gt;
        &lt;li&gt;Co-piloto = ajuda o piloto com orientação verbal&lt;/li&gt;
        &lt;li&gt;Platéia = observa o desenvolvimento do código
aguardando sua vez de ser co-piloto e piloto&lt;/li&gt;
      &lt;/ul&gt;
      &lt;span style=&quot;font-weight: bold;&quot;&gt;No início:&lt;/span&gt;
      &lt;ul&gt;
        &lt;li&gt;um participante ocupa a posição de piloto&lt;/li&gt;
        &lt;li&gt;outro participante ocupa a posição de co-piloto&lt;/li&gt;
      &lt;/ul&gt;
      &lt;span style=&quot;font-weight: bold;&quot;&gt;A cada
intervalo de tempo&lt;/span&gt; (geralmente de 5 a 7 minutos):&lt;br&gt;
      &lt;ul&gt;
        &lt;li&gt;piloto retorna para platéia&lt;/li&gt;
        &lt;li&gt;co-piloto assume o lugar do piloto&lt;/li&gt;
        &lt;li&gt;alguém da platéia assume o lugar do co-piloto&lt;/li&gt;
      &lt;/ul&gt;
      &lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;&lt;/span&gt; &lt;/td&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt; &lt;img src=&quot;DojoFluxoTempo.png&quot; alt=&quot;Fluxo do dojo&quot; title=&quot;Fluxo de tempo&quot;&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
</topico>
<topico>
<titulo>Recursos</titulo>
<desc>
&lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot; cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt;&lt;span style=&quot;font-weight: bold;&quot;&gt;Elementos necessários&lt;/span&gt;:&lt;br&gt;
      &lt;ul&gt;
        &lt;li&gt;Pessoas interessadas&lt;/li&gt;
        &lt;li&gt;Sala com espaço necessário para o evento&lt;/li&gt;
        &lt;li&gt;Projetor ligado ao computador&lt;/li&gt;
        &lt;li&gt;Tela para projeção&lt;/li&gt;
        &lt;li&gt;Quadro para definir o problema&lt;/li&gt;
        &lt;li&gt;1 Computador para ser utilizado por 2 pessoas&lt;/li&gt;
        &lt;li&gt;Ambiente de teste e desenvolvimento&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
      &lt;td&gt;&lt;img alt=&quot;Elementos do dojo&quot; src=&quot;DojoElemento.png&quot;&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
</topico>
<topico>
<titulo>Características</titulo>
<desc>
&lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot; cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt;
      &lt;h4&gt;Princípios&lt;/h4&gt;
      &lt;ul&gt;
        &lt;li&gt;Aprendizado Contínuo&lt;/li&gt;
        &lt;li&gt;Ambiente Seguro&lt;/li&gt;
        &lt;ul&gt;
          &lt;li&gt;Não Competitivo&lt;/li&gt;
          &lt;li&gt;Colaborativo&lt;/li&gt;
          &lt;li&gt;Inclusivo &lt;/li&gt;
        &lt;/ul&gt;
        &lt;li&gt;Passos de Bebê&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
      &lt;td style=&quot;&quot;&gt;
      &lt;h4&gt;Objetivos&lt;/h4&gt;
      &lt;ul&gt;
        &lt;li&gt;Praticar&lt;/li&gt;
        &lt;li&gt;Aprender&lt;/li&gt;
        &lt;li&gt;Ensinar&lt;/li&gt;
        &lt;li&gt;Discutir com bases concretas&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
      &lt;td style=&quot;&quot;&gt;
      &lt;h4&gt;Regras Gerais&lt;/h4&gt;
      &lt;ul&gt;
        &lt;li&gt;TDD (&lt;font color=&quot;#ff0000&quot;&gt;vermelho&lt;/font&gt;
&amp;gt;&amp;gt; &lt;font color=&quot;#339966&quot;&gt;verde&lt;/font&gt;
&amp;gt;&amp;gt; refatoração)&lt;/li&gt;
        &lt;li&gt;Todos devem entender&lt;/li&gt;
        &lt;li&gt;SEMPRE recomeça do zero&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt;
      &lt;h4&gt;Não faça&lt;/h4&gt;
      &lt;ul style=&quot;text-decoration: line-through;&quot;&gt;
        &lt;li&gt;Correr para terminar o problema&lt;/li&gt;
        &lt;li&gt;Pegar um problema real&lt;/li&gt;
        &lt;li&gt;Entrar em &quot;Flamewars&quot; nas discussões&lt;/li&gt;
        &lt;li&gt;Competir com outros participantes&lt;/li&gt;
        &lt;li&gt;Deixar pessoas sem entender&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
</topico>
<topico>
<titulo>Retrospectiva</titulo>
<desc>
&lt;table style=&quot;text-align: left;&quot; border=&quot;0&quot; cellpadding=&quot;2&quot; cellspacing=&quot;2&quot;&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt; Ao final de
toda reunião:
      &lt;ul&gt;
        &lt;li&gt;O que aprendemos?&lt;/li&gt;
        &lt;li&gt;O que gostamos?&lt;/li&gt;
        &lt;li&gt;O que poderia melhorar?&lt;/li&gt;
        &lt;li&gt;Discussões ou comentários&lt;/li&gt;
      &lt;/ul&gt;
      &lt;/td&gt;
      &lt;td style=&quot;vertical-align: top;&quot;&gt; &lt;img src=&quot;DojoRetrospectiva.png&quot; alt=&quot;Retrospectiva do dojo&quot; title=&quot;Fluxo de tempo&quot;&gt;
      &lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
</desc>
</topico>
<topico>
<titulo>Fontes de Problemas</titulo>
<desc>
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://thedailywtf.com/Series/Bring_Your_Own_Code.aspx&quot;&gt;Bring_Your_Own_Code&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://groups.google.com/group/dojo_sp/web/fontes-de-problemas?pli=1&quot; target=&quot;_blank&quot;&gt;Coding Dojo São Paulo&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://codegolf.com/&quot; target=&quot;_blank&quot;&gt;Code
Golf&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://dojopuzzles.com/&quot; target=&quot;_blank&quot;&gt;Dojo Puzzles&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://programmerpuzzlers.com/&quot; target=&quot;_blank&quot;&gt;Programmer Puzzlers&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://sites.google.com/site/tddproblems/all-problems-1&quot; target=&quot;_blank&quot;&gt;TDD Problems&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://rubychallenge.com/&quot; target=&quot;_blank&quot;&gt;Ruby Challenge&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.codingdojo.org/cgi-bin/wiki.pl?KataCatalogue&quot; target=&quot;_blank&quot;&gt;Coding Dojo Wiki&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.rubyquiz.com/&quot; rel=&quot;nofollow&quot;&gt;Ruby
Quiz&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://projecteuler.net/&quot; rel=&quot;nofollow&quot;&gt;Project Euler&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://codingkata.org/&quot; target=&quot;_blank&quot;&gt;Coding Kata&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://codekata.pragprog.com/&quot; target=&quot;_blank&quot;&gt;Code Kata&lt;/a&gt; (Dave Thomas)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.codeanthem.com/blog/2010/06/introducing-programmer-puzzlers/&quot; target=&quot;_blank&quot;&gt;Code Anthem&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.programming-challenges.com/pg.php?page=studenthome&quot; target=&quot;_blank&quot;&gt;Programming Challenges&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.topcoder.com/&quot; target=&quot;_blank&quot;&gt;Top
Coder&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://acm.uva.es/p/&quot; target=&quot;_blank&quot;&gt;UVa
I&lt;/a&gt; (novo servidor: &lt;a href=&quot;http://icpcres.ecs.baylor.edu/onlinejudge/index.php&quot; target=&quot;_blank&quot;&gt;ECS Baylor&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://acmicpc-live-archive.uva.es/nuevoportal/&quot; target=&quot;_blank&quot;&gt;UVa II&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.itasoftware.com/careers/puzzles07.html&quot; target=&quot;_blank&quot;&gt;ITA Software recruiting puzzles&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</desc>
</topico>
<topico>
<titulo>Como surgiu?</titulo>
<desc>
&lt;h4&gt;No Mundo (desde 2003) a partir do &lt;a target=&quot;_blank&quot; href=&quot;http://www.codingdojo.org/cgi-bin/wiki.pl?ParisDojo&quot;&gt;Dojo
de Paris&lt;/a&gt;, fundado por:&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://pragdave.pragprog.com/&quot;&gt;Dave Thomas&lt;/a&gt; -
criou a idéia em seu &lt;a target=&quot;_blank&quot; href=&quot;http://codekata.pragprog.com/&quot;&gt;blog&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://www.bossavit.com&quot;&gt;Laurent
Bossavit&lt;/a&gt; - propôs a &lt;a target=&quot;_blank&quot; href=&quot;http://www.bossavit.com/pivot/pivot/entry.php?id=207&quot;&gt;criação
de um espaço de treinamento em grupo, um Dojo&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://emmanuelgaillot.blogspot.com/&quot;&gt;Emannuel Gaillot&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br&gt;
&lt;h4&gt;No Brasil (desde 2007):&lt;/h4&gt;
&lt;ul&gt;
  &lt;li&gt;Ivan Sanchez - &lt;a target=&quot;_blank&quot; href=&quot;http://dojofloripa.wordpress.com&quot;&gt;Dojo Floripa&lt;/a&gt;
(pioneiro)&lt;/li&gt;
  &lt;li&gt;Danilo Sato - &lt;a target=&quot;_blank&quot; href=&quot;http://www.dtsato.com&quot;&gt;Dojo São Paulo&lt;/a&gt; - &lt;a target=&quot;_blank&quot; href=&quot;http://www.ime.usp.br/&quot;&gt;IME -
USP&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a target=&quot;_blank&quot; href=&quot;http://dojorecife.wordpress.com&quot;&gt;Dojo de Recife&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a target=&quot;_blank&quot; href=&quot;DojoRio.html&quot;&gt;Dojo Rio&lt;/a&gt; - &lt;a target=&quot;_blank&quot; href=&quot;http://dojorio.wordpress.com/&quot;&gt;Blog&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</desc>
</topico>
</evento>

