Coding Dojo #1: Amigo Secreto

Agendamos o coding dojo com uma semana de antecedência mas ainda sim por pouco não foi cancelado, devido algumas dificuldades com a configuração do notebook, as chaves da sala e o empréstimo do projetor… mas apesar das dificuldades, todos os participantes foram atrás e fizeram o dojo acontecer.

Devido as dificuldades mencionadas iniciamos com uma hora de atraso, (9:10hrs), conseguimos reservar a sala das 8-10 hrs, então tínhamos apenas mais uma hora, já havíamos escolhido o problema que foi o Secret Santa , deveríamos ter feito um brainstorm inicial sobre o problema, mas devido ao atraso não fizemos e isso nos fez falta, fomos direto programar a solução.
Apesar de não termos evoluído muito com a solução, o resultado foi excelente, logo depois do primeiro dojo, já percebo que alguns agora estão receptivos em aceitar o desafio e a nova cultura agile, e nem preciso mencionar os benefícios de ter toda equipe programando o mesmo código.

Inicialmente faríamos quinzenalmente, mas ao final do encontro todos foram unânimes em marcar logo o próximo dojo em uma semana e deixar o encontro semanal =D
…”

Texto originalmente publicado em:
http://marcomoura.wordpress.com/2010/08/11/meu-primeiro-code-dojo/

O kata
O problema requer que o nosso programa faça um sorteio “inteligente” de amigos secretos.

No jeito manual de se escolher pares de amigos secretos (com os papeizinhos) sempre tem a chatice de que alguém acaba se pegando, e daí todo mundo coloca de volta no saco – sem piadinhas por favor P Além disso, na hora de revelar, sempre acontece os tais “ciclos”: A pega B, B pega C e C pega A.

O nosso objetivo então era fazer um programa que, dada uma lista de nomes como entrada, fizesse a escolha dos pares de amigos secretos, sem que ninguém pegasse a si mesmo, e com o maior “ciclo” possível.

Exemplo válido:
Nomes: João, Maria, Marcos, Ana, Cláudia
Amigos: (João, Marcos), (Marcos, Cláudia), (Cláudia, Ana), (Ana, Maria), (Maria, João)

Exemplo inválido (Alguém se pega):
(João, Marcos), (Marcos, Marcos), …

Exemplo inválido (”ciclo” pequeno):
(João, Marcos), (Marcos, Cláudia), (Cláudia, João), …

Havia ainda mais um requisito no problema: ninguém pode pegar um amigo secreto da sua família, ou seja, pessoas que têm o mesmo sobrenome não podem se pegar – por favor, sem piadinhas aqui também.

referência: http://pet.inf.ufsc.br/dojo/2010/06/dojo-9-secret-santas/

Retrospectiva

Bom:

  • Aprendizagem
  • Integração
  • Sala
  • TDD -Testes
  • Interrupções (Ajuda)

Ruim:

  • Teclado e mouse( Não teve mouse)
  • Atraso( motivo: retroprojetor)
  • Falta de conhecimento LPOO
  • máquina
  • nervosismo
  • timidez
  • Fizemos mais do que o teste precisava para passar
  • Bloco de notas
  • interrupções

Para próximas:

  1. Início: 20 minutos para discussão do problema
  2. Término: 15 minutos de Retrospectiva

Dados do encontro