Skip to content

Latest commit

 

History

History
76 lines (50 loc) · 4.38 KB

README.md

File metadata and controls

76 lines (50 loc) · 4.38 KB

DOJO PHP-PB

Este respositório foi criado com o objetivo de compartilhar as experiências da PHP-PB ao levar à comunidade local de tecnologia possibilidade de resolução de problemas computacionais utilizando PHP.

O que é Coding Dojo?

Coding Dojo é um método de aprendizagem para desenvolvimento de projetos em computação, utilizado em universidades, eventos de computação, empresas e hackerspaces. Nessa dinâmica, todas as pessoas constroem juntas a solução, alternando a posição reflexiva da platéia com as posições mais ativas dos pilotos, construindo a partir do trabalho acumulado dos pilotos anteriores. wikipedia

Tipos aplicados

Kata Demonstração de uma solução pré-desenvolvida para mostrar a plateia tal possíbilidade de resolução do problema.

Randori Neste formato se aplica técnicas como TDD, baby steps e pair program. O problema é escolhido na hora do encontro e tem como objetivo desenvolver a evolução da resolução, sem a real necessidade de resolver o problema. Há quatro personagens nesse formato:

  1. Mestre: Alguém para controlar a plateia enquanto os testes não estão passando;
  2. Piloto: Quem está codificando no momento;
  3. Copiloto: Acompanha as ações do piloto e pode sugerir alterações no código a qualquer momento;
  4. Plateia: Pessoas aguardando a vez de ser copiloto e piloto, consecutivamente;

Neste formato há apenas um computador e um projetor para que o código seja acompanhado por todos no ambiente. O rodízio de pilotos e copilotos ocorrem de 5 a 7 min.

Kake Este formato é muito semelhante ao Randori, com a diferença de que todos do ambiente são piloto e copiloto, e há mudança das duplas em um período pré-determinado.

Qual o objetivo do Coding Dojo?

Treinar programação

"...Um músico não pega uma partitura pela primeira vez e segue para o palco. Ele estuda, pratica, fora do palco, até ter domínio total para apresentar ao público...". É com este espírito que os participantes devem levar a brincadeira;

Compartilhar Conhecimento

Só o fato de sempre ter alguém diferente programando junto de você, você está tendo a chance de aprender coisas novas. "...ninguém é tão burro que não tenha nada a ensinar, nem tão inteligente que não tenha nada a aprender..."

Diversão

Isso só se ver na prática.

Regras do jogo

Para tornar o evento mais sociável, propomos que seja realizado um coding dojo na categoria Randori. As regras são as seguintes:

  1. O tempo total será de 1 hora, dividida em 3 etapas. Na primeira etapa, com duração de 10 min, devemos escolher o problema a ser desenvolvido. A segunda etapa, com duração de 40 min, devemos desenvolver o problema. Na última etapa, 10 min finais, devemos levantar os pontos positivos e negativos a respeito do dojo;

  2. Caso o problema apresente uma solução fácil, e o tempo da segunda fase ainda estiver contando, pode-se escolher um segundo problema;

  3. Só haverá um computador na sala, ligado a um projetor, no qual o problema estará sendo desenvolvido;

  4. Duas pessoas por vez irão programar. O piloto, será o operador do teclado, e o copiloto, estará ao seu lado para auxiliar no rumo do desenvolvimento do problema;

  5. O desenvolvimento do problema deverá ser guiado por testes, seguindo a risca o fundamento do TDD (Test, Code, Refactory);

  6. O desenvolvimento do problema deverá seguir a risca a metodologia baby steps, na qual a ação deve ser a mínima para o desenvolvimento do problema;

  7. Haverá no local um mestre, pessoa com mais experiência na linguagem, que pode auxiliar a dupla em caso de problemas de sintaxe;

  8. A plateia, restante das pessoas que não estão pilotando, copilotando ou mestrando, deverá permanecer em silêncio enquanto os testes não estiverem passando (vermelho). A platéia pode tirar dúvidas ou fazer observações, quando os testes estiverem ok (verde);

  9. O tempo de cada ciclo de piloto é de 5 min;

  10. Não há necessidade de sentir vergonha, todos estão aqui para se divertir e programar por prazer.

Coisas que precisam ser ditas

  1. O respeito é fundamental para que o evento ocorra bem;
  2. Não é uma competição para ver quem programa mais/melhor;
  3. Seja receptivo com seu copiloto;
  4. Documentações podem ser consultadas a qualquer momento;
  5. Site para referência de problema: http://dojopuzzles.com/