<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Desenvolvimento &#193;gil - Blog da Improve It: Code Kata</title>
    <link>http://blog.improveit.com.br/articles/2007/02/28/code-kata</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description></description>
    <item>
      <title>Code Kata</title>
      <description>&lt;p&gt;&lt;img src="http://blog.improveit.com.br/files/kata.jpg" alt="Kata" title="Kata"/&gt;&lt;/p&gt;

&lt;p&gt;Durante a viagem para o Paran&#225;, aproveitei para escutar diversos podcasts que estavam h&#225; tempos no notebook. Um dos mais interessantes foi a &lt;a href="http://hivelogic.com/podcast/episodes/dave-thomas"&gt;entrevista&lt;/a&gt; que &lt;a href="http://hivelogic.com/about/dan"&gt;Dan Benjamin&lt;/a&gt; fez com &lt;a href="http://pragdave.pragprog.com"&gt;Dave Thomas&lt;/a&gt;. &lt;a href="http://pragdave.pragprog.com"&gt;Dave&lt;/a&gt; falou sobre como virou editor de livros "acidentalmente". Ali&#225;s, editor de alguns dos &lt;a href="http://www.pragmaticprogrammer.com"&gt;melhores livros de computa&#231;&#227;o&lt;/a&gt; da atualidade. Al&#233;m disso, falou sobre &lt;a href="http://www.ruby-lang.org/en/"&gt;Ruby&lt;/a&gt; e &lt;a href="http://www.rubyonrails.com"&gt;Rails&lt;/a&gt;, naturalmente. Mas, o que mais me chamou a aten&#231;&#227;o foi o conceito de &lt;a href="http://codekata.pragprog.com"&gt;Code Kata&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;O &lt;a href="http://dojofloripa.wordpress.com"&gt;Ivan Sanchez&lt;/a&gt; toca uma bela iniciativa nesse sentido atrav&#233;s do &lt;a href="http://dojofloripa.wordpress.com"&gt;Coding Dojo Floripa&lt;/a&gt;. Eu j&#225; tinha uma no&#231;&#227;o do significado de &lt;a href="http://dojofloripa.wordpress.com/2006/10/26/variacoes-de-dojo"&gt;Dojo e Kata&lt;/a&gt; atrav&#233;s de seu site. Mas, ouvindo as explica&#231;&#245;es do &lt;a href="http://pragdave.pragprog.com"&gt;Dave Thomas&lt;/a&gt;, a id&#233;ia ficou mais clara ainda e compreendi o quanto &#233; poderosa. &lt;/p&gt;

&lt;p&gt;Ele explica que seu filho luta Karat&#234;, onde se aprende diversos tipos de &lt;a href="http://en.wikipedia.org/wiki/Kata"&gt;Kata&lt;/a&gt;. O &lt;a href="http://en.wikipedia.org/wiki/Kata"&gt;Kata&lt;/a&gt; &#233; uma seq&#252;&#234;ncia de movimentos que o lutar repete in&#250;meras vezes &#224; medida que se exercita. S&#227;o movimentos de ataque e defesa que o lutar faz para "simular" uma luta real. Provavelmente nenhuma luta ir&#225; se assemelhar ao &lt;a href="http://en.wikipedia.org/wiki/Kata"&gt;Kata&lt;/a&gt;, mas o objetivo n&#227;o &#233; esse. &lt;/p&gt;

&lt;p&gt;A id&#233;ia &#233; fazer com que os movimentos sejam "internalizados" pelo lutador. Ou seja, eles precisam sair do n&#237;vel consciente para o subconsciente. Precisam "entrar no sangue" e se tornar t&#227;o naturais que o corpo passe a agir de forma reflexiva, sem que a mente consciente tenha que entrar em a&#231;&#227;o. De tanto repetir os movimentos, o corpo acaba aprendendo e o lutador passa a execut&#225;-los sem se dar conta do que est&#225; fazendo. &#201; como passar marcha, acelerar e frear. S&#227;o a&#231;&#245;es feitas de forma praticamente subconsciente quando estamos dirigindo. &lt;/p&gt;

&lt;p&gt;O &lt;a href="http://codekata.pragprog.com"&gt;Code Kata&lt;/a&gt; &#233; um exerc&#237;cio de programa&#231;&#227;o que o desenvolvedor executa para treinar suas habilidades de desenvolvimento. A id&#233;ia &#233;, de tempos em tempos, refazer o exerc&#237;cio, mas sempre se esfor&#231;ando para criar uma solu&#231;&#227;o diferente para o mesmo problema. Isso ajuda a explorar novos pontos de vistas e pesquisar abordagens alternativas. &lt;/p&gt;

&lt;p&gt;H&#225; tamb&#233;m o formato de reuni&#245;es, onde um ou dois desenvolvedores trabalham na solu&#231;&#227;o de um exerc&#237;cio de programa&#231;&#227;o, com uma plat&#233;ia assistindo e fazendo perguntas, como o que fizemos no &lt;a href="http://tech.groups.yahoo.com/group/xprio/"&gt;XP Rio&lt;/a&gt; h&#225; alguns meses: o &lt;a href="http://blog.improveit.com.br/articles/2006/10/18/xp-rio-on-rails"&gt;XP Rio on Rails&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Adorei esse conceito e hoje mesmo o utilizei durante o treinamento &lt;strong&gt;&lt;a href="http://www.improveit.com.br/servicos/imersao_agil"&gt;Imers&#227;o &#193;gil&lt;/a&gt;&lt;/strong&gt; aqui em Fracisco Beltr&#227;o. O &#250;nico detalhe &#233; que misturei isso com &lt;a href="http://www.improveit.com.br/xp/praticas/programacao_par"&gt;programa&#231;&#227;o em par&lt;/a&gt; e o resultado parece ter sido bem proveitoso, sobretudo para ajudar os alunos a fixar alguns dos conceitos mais importantes de &lt;a href="http://www.improveit.com.br/xp/praticas/tdd"&gt;TDD&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;OBS: Figura retirada do &lt;a href="http://en.wikipedia.org"&gt;Wikipedia&lt;/a&gt;.&lt;/p&gt;</description>
      <pubDate>Wed, 28 Feb 2007 19:39:00 -0300</pubDate>
      <guid isPermaLink="false">urn:uuid:787045b4-ddc2-4120-995e-02aac2e20715</guid>
      <author>Vinicius Manh&#227;es Teles</author>
      <link>http://blog.improveit.com.br/articles/2007/02/28/code-kata</link>
      <category>imers&#227;o</category>
      <category>teste</category>
      <category>ruby</category>
      <category>rails</category>
    </item>
    <item>
      <title>"Code Kata" by Marcos Tapaj&#243;s</title>
      <description>&lt;p&gt;Vin&#237;cius, quando comecei a andar de moto um amigo me ensinou um conceito que s&#243; aprendi o nome com esse seu post. Kata !&lt;/p&gt;

&lt;p&gt;Ele me explicou que o grande segredo de dirigir uma moto com seguran&#231;a &#233; tornar determinadas rea&#231;&#245;es instintivas e ele me deu um exemplo e me mandou fazer um exerc&#237;cio que at&#233; hoje eu pratico.&lt;/p&gt;

&lt;p&gt;Todo motociclista sabe que nunca se deve freiar forte com a moto inclinada numa curva pois qualquer pequeno travamento em alguma das rodas far&#225; voc&#234; cair na mesma hora. O problema &#233; que na hora que voc&#234; toma um susto a primeira rea&#231;&#227;o &#233; instintiva e &#233; freiar tudo.&lt;/p&gt;

&lt;p&gt;O segredo desse tipo de situa&#231;&#227;o &#233; levantar a moto e freiar tudo que &#233; poss&#237;vel at&#233; parar ou at&#233; quando n&#227;o se puder mais manter a moto reta sem sair da pista quando se deve deitar novamente e continuar a curva acelerando.&lt;/p&gt;

&lt;p&gt;O exerc&#237;cio que ele me ensinou &#233; bem simples e consiste em quando eu estiver passeando de moto, sem nada para fazer, simular essa situa&#231;&#227;o v&#225;rias vezes nas mais diversas curvas para tornar esse movimento instintivo. Na &#233;poca achei que isso fazia muito sentido e pratiquei muito (ainda hoje fa&#231;o isso).&lt;/p&gt;

&lt;p&gt;Recentemente essa pratica me fez escapar de um acidente razoavelmente grave onde eu estava com v&#225;rias motos indo de Teres&#243;polis para Petr&#243;polis quando em uma curva cheia de areia um casal de amigos cometeu esse erro caindo na minha frente. O que me salvou foi eu estar com essa pratica bem treinada eu conseguir levantar, freiar e s&#243; bater de leve na moto desse amigo.&lt;/p&gt;

&lt;p&gt;Em software as coisas s&#227;o um pouco melhores pois n&#227;o envolve atrito com asfalto mas o conceito &#233; o mesmo e cada vez mais vejo que realmente a pratica pode fazer uma grande diferen&#231;a.&lt;/p&gt;</description>
      <pubDate>Thu, 01 Mar 2007 20:26:08 -0300</pubDate>
      <guid isPermaLink="false">urn:uuid:58db4bfa-b000-4a51-8381-edd486349248</guid>
      <link>http://blog.improveit.com.br/articles/2007/02/28/code-kata#comment-271</link>
    </item>
  </channel>
</rss>
