2. Sobre
Mateus Pontes
Desenvolvimento Web
Masávio Agência Web
CTIS (TRE-PI)
Twitter: @mateuspontes
Email: mateuspo10@gmail.com
php, html, css, javascript, codeigniter, java, jquery, ruby, sinatra, rails, nodejs, wordpress, cms
3. Pesquisa rápida:
Quem já participou de um Coding Dojo?
Quem sabe o que é mas nunca participou?
Quem não sabe o que é?
4. Qual a ideia?
Progamadores não treinam.
Aprender coisas novas e treinar habilidades.
5. O que é um Dojo?
Local onde se pratica artes marciais.
O objetivo de praticar os movimentos aprendidos exaustivamente, com isso
chega a uma maior precisão de cada golpe, movimento,etc.
6. O que é um Coding Dojo?
Local onde programadores treinam e melhoram suas habilidades
10. Como funciona?
Duração: ~ 1 hora e 45 minutos; *
Desafio escolhido e explicado para todos;
Princípios ágeis:
TDD, Pair Programming, Baby steps;
TDD: escreve um teste. 1 - Falhou? 2 - Faça passar. 3 - Passou? Refatore.
Copiloto troca com o piloto em intervalos pré-definidos;
Solução deve ser construída na hora;
Terminar com a retrospectiva do que foi feito.
O que foi feito? O que foi bom? O que pode melhorar?
11. Regras do Coding Dojo
Somente um computador ligado a um projetor;
Plateia deve seguir as regras de cada tipo de Dojo;
Respeito entre os participantes;
Aprender, ensinar e discutir;
Evitar “Flamewars” -> (Ruby é melhor que Java)
Levar problemas novos para cada encontro
12. Tipos de Coding Dojo
Kata Piloto e copiloto já determinados
Randori Todos revezam entre piloto e copiloto
Kake Vários problemas ou linguagens diferentes.
16. Randori
Verde Plateia participa com comentários e críticas
Vermelho Plateia em silêncio!
17. Kake
Quase um Randori;
Nível mais avançado;
Vários pares e grupos simultâneos;
Problemas ou linguagens diferentes em cada grupo;
Pessoas trocam entre máquinas a cada turno;
21. Concluindo..
Experiência importa mais que o código gerado no final;
Deve haver respeito mútuo, todos são iguais no Dojo;
Objetivo é gerar código melhor, mais claro e mais simples;
Compartilhar conhecimento, conhecer novas pessoas,
treinar habilidades, ensinar, aprender, experimentar..
Enfim, se divertir!