Dojo UENF [5]

domingo, 16 maio 2010

No dia 11/05/10 aconteceu o quinto Dojo UENF. Sempre seguimos o RandoriKata, mas desta vez propus algumas mudanças, o pessoal achou legal, e fizemos um Dojo diferente. Decidimos que vamos fazer o teste de usar esse formato de dojo como experiência. Se ficar legal continuamos a utilizá-lo, se não, voltamos a fazer o RandoriKata tradicional.

Continuamos com ruby e escolhemos fazer o jogo de dominó. Começamos definindo as regras do jogo, sem muitos problemas. Foi levantada a questão de criar uma classe peça ou não, e chegamos ao consenso de que a classe peça só teria características e não teria comportamentos, o que não caracteriza uma classe. Em um momento, pensamos em fazer um stub, mas não sabíamos como fazer. Decidimos criar o objeto real para darmos continuidade e refatorar na próxima sessão. Como fazer dublês em Ruby entrou na lista de dúvidas.
De acordo com as regras, um jogo de dominó só existe se tiverem no mínimo 2 e no máximo 4 jogadores. Decidimos então que ao instanciar um jogo, deveria ser feita essa validação e caso ela não fosse válida uma exceção seria levantada. Contudo não sabíamos como fazer isso em ruby, o que foi adicionado na lista de dúvidas e fizemos de uma outra maneira para na próxima sessão refatorarmos.

A primeira impressão de utilizar a modalidade diferente foi boa. Ficamos com a expectativa de aprendermos o que não sabíamos para aplicar no Dojo seguinte e como o problema é legal, ficamos realmente com vontade de terminá-lo o que aumenta a vontade de que chegue logo o próximo Dojo.

Galera no Dojo UENF

Participantes

Retrospectiva

🙂

  • Nível do Problema e o problema em si
  • Todos participaram
  • O problema se desenvolveu num ritmo legal

😦

  • Passaram na porta e acharam que era pascal! Porra, pascal é sacanagem!

Dúvidas

  • Dublês (mock e stub)
  • Tratamento de exceção

Valeu galera! Até o próximo Dojo!

[]’s


Dojo UENF [4]

domingo, 16 maio 2010

No dia 04/05/10 aconteceu o quarto Dojo UENF. Continuamos a usar Ruby e o pessoal escolheu o problema da linguagem alienígena retirado do Google Code Jam.

Discutimos por algum tempo se iríamos usar regex ou não. Ficamos batendo cabeça por bastante tempo sobre detalhes da linguagem e fazendo muitos testes no irb para ver como as coisas funcionavam. Apesar do problemas ser bem legal, o desenvolvimento ficou muito amarrado e acabamos encerrando o Dojo mais cedo.

Galera presente até o fim

Participantes

Retrospectiva

🙂

  • Problema legal

😦

  • Não existia o master e ficamos batendo cabeça em detalhes da linguagem
  • Pouca gente

Bom, é isso ai. Até a próxima!

[]’s


Dojo UENF [3]

domingo, 16 maio 2010

No dia 20/04/10 aconteceu o terceiro Dojo UENF. Continuamos a usar Ruby e o pessoal escolheu o problema das lâmpadas no corredor.

Como deixei para fazer esse relato muito tempo depois (#fail), não me lembro exatamente como ele se desenvolveu, ainda mais que perdemos as fotos (#fail2) e não tem como saber quais foram os pontos positivos e negativos levantados na retrospectiva.

Rodrigo levantou um questionamento sobre como escrevíamos os testes no Dojo; como eles eram escritos de forma TDD e não BDD, ferindo o conceito de que o teste não é apenas um teste, mas sim uma especificação. Disso surgiu o arquivo __dojo.rb, que mostra como ele acha deveríamos escrever nossos testes. Essa discussão foi muito proveitosa e todos acabamos concordando que ele tinha razão.

Participantes

Retrospectiva

🙂

  • A discussão levantada por Rodrigo

😦

  • Perdemos as fotos
  • Deixamos para fazer o relato muito tempo depois

Por hoje é só. Até a próxima!

[]’s


DojoRio@Niterói – 06/05/2010

sábado, 8 maio 2010

Galera,

Rolou nessa última quinta-feira mais uma edição do DojoRio@Niterói. Novamente ele foi realizado no laboratório dos nossos amigos do NTP.

Como haviam novas pessoas que não estavam acostumadas com como o Dojo funciona, resolvemos escolher um problema mais simples. Assim, o problema escolhido foi o da bilheteria de cinema. Conseguimos avançar bastantes com o problema e nos dedicamos bastante a questões de refatoração de código.

Participaram deste Dojo:

Bem, como haviam novos frequentadores, a retrospectiva foi bastante importante. Entre os pontos positivos foram citados:

  • Ter gente nova;
  • Quase o mesmo número de homens e mulheres;
  • Várias namoradas estarem presentes == Dojo é família;
  • O vermelho ter sido respeitado;
  • Ter sido no NTP;
  • Ter gente nova;
  • Todos terem programado;
  • Ensinar e aprender com a percepção dos outros;
  • O problema;
  • Ter sido em Python;
  • A comida;
  • As namoradas que estava lá mesmo que nunca tivessem programado, conseguiram entender o que estava sendo feito;
  • Pilotos falando alto;
  • A interação entre as pessoas e o dinamismo da reunião. Vale ressaltar que esse ponto foi levantado pelas duas pessoas que foram pela primeira vez nessa quinta e não são da área de Computação.
  • Ver um grupo de pessoas reunidas para desenvolver sem compromisso;

Pelo outro lado, os pontos a serem melhorados foram:

  • Ter sido em Python;
  • Ter deixado para escolher o problema na hora do Dojo;
  • Não termos explicado aos novos as metodologias do Dojo;
  • Ter ido menos gente que de costume (7º Dans?);
  • Ter acabado cedo;

Como sugestões nós tivemos:

  • Fazer o próximo em Javascript;
  • Fazer algumas sessões para iniciantes. A ideia é fazer algumas sessões com problemas mais fáceis para as pessoas que ainda não saibam programar e queiram aprender de uma maneira mais divertida e menos acadêmica;

Resumindo, foi um Dojo bastante proveitoso e divertido, muito em função das caras novas. Bem, espero todos na próxima quinta-feira!

Abraços,

Bernardo Fontes


ForkinRio[3] de Python

terça-feira, 4 maio 2010

Pessoal,

Aconteceu nesse último domingo a terceira reunião do ForkinRio de Python. Apesar de algumas faltas, o número do pessoal que compareceu foi bastante legal e o novo local – a casa do Vinícius Teles – contribuiu muito para o desenrolar do encontro. Isso sem contar o pessoal novo que apareceu nessa reunião e o Mauro George que merece ser citado por passar por 2 horas de viagem para se juntar a nós.

Estiveram presente no encontro:

Para passar para vocês que não puderam comparecer, vou fazer um resumo dos pontos positivos e do que podemos melhorar que foram levantados na nossa retrospectiva.

Antes de mais nada, a mudança do local e a infra que pudemos usar foi essencial. Espelhamos uma mesma tela em três monitores e todos puderam acompanhar todos os códigos ao mesmo tempo.

O fato de termos dois rubistas presente na reunião acabou por gerar discussões de alto nível comparando as linguagens. As comparações iam desde questões de sintaxe quanto questões bem profundas das linguagens. Entretanto, as comparações não eram para fomentar a competição do que é melhor, mas sim para entendermos as formas de fazer o mesmo comando nas duas linguagens e o que podemos fazer em uma e não podemos na outra.

Como nós não somos capazes de discutir pouco, essas dicussões não se limitaram às diferenças entre as linguagens. Acabamos por levantar um sério questionamento sobre onde usar Java. Também rolou uma conversa muito interessante sobre como é importante, na nossa área, você aprender e trabalhar ao lado de outras pessoas. Para fechar com chave de ouro, tivemos um grande debate sobre orientação à objetos.

Para esse resultado, foi essencial todos terem colocado os códigos que produziram em suas respectivas contas do Github. Pelo formato que o próprio Github fornece, a nossa dinâmica ficou bem suave. Inclusive, surgiu a ideia de fazermos um ForkinRio remoto para termos a experiência (apesar de todos concordarem que o encontro presencial é muito melhor).

Além disso, surgiu a ideia de fazermos um repositório no Github onde colocaríamos o que nós achamos de mais interessante em cada exercício. Assim, geraríamos um apanhado geral do que ficou legal para que o pessoal que não teve como ir à reunião pudesse ver depois.

Além da galera que faltou, o que nós não achamos legal foi o fato de alguns exercícios não terem sido resolvidos e também de não termos colocado em prática algumas idéias como a do Benchmark e a dos podcasts. Entretanto, tentaremos implementá-las na próxima reunão.

Falando sobre próximo encontro, quando será? Bem, para colocar nossa ideia em prática, o primeiro encontro remoto será no domingo que vem, dia 08/05. Sim, nos dias das mães às 09:00. Para não criar muita confusão com nossas mães a reunião deve durar até a hora do almoço já serão pouquíssimos exercícios. Serão somente dois do Google Python’s Class: Log Puzzle Exercise e o Copy Special Exercise.

A reunião presencial, por sua vez, acontecerá no dia 15/05, às 09:00 no esquema de sempre. Para essa reunião serão cobrados a leitura e os exercícios da Parte V do livro.

Espero todos lá!

Abraços,

Bernardo Fontes