Mostrando postagens com marcador php. Mostrar todas as postagens
Mostrando postagens com marcador php. Mostrar todas as postagens

domingo, 28 de agosto de 2011

Dojo@Area1 SL4A 27/08/2011 "Aquecimento para o Linguágil"

Chegamos ao terceiro Coding Dojo de aquecimento para o LinguÁgil!! Agora a brincadeira vai ao mundo móvel, introduzindo a plataforma Android. Contudo, muita gente acha o Java muito verboso, ou simplesmente gosta mais de outras linguagens, como Python, PHP, Ruby, JS, Shell Script, Lua… Entra na parada o SL4A (Scripting Language for Android), um app que roda linguagens de scripts por cima da DVM (Dalvik Virtual Machine). Venha conhecer a plataforma, como trabalhar com ela e ainda por cima, veja ela funcionando para resolver um problema/desafio na hora!!

O que?
Coding Dojo de Scripting Layer for Android (SL4A).

Por que?
Aquecimento para o LinguÁgil 2011

Quando?
27/08/2011, das 09h às 11h30


Onde?  
Faculdade AREA1

Agenda planejada?
Segundo o anúncio inicial:
09:00 – 09:40 : Apresentações coding dojo, SL4A
09:40 – 09:45 : Apresentação do problema
09:45 – 11:15 : Mão-na-massa
11:15 – 11:30 : Retrospectiva do coding Dojo


Quem participou? 
  • Paulo
  • Luiz Cláudio (LinguÁgil)
  • Guilherme (AREA1) 
  • Maurício Vieira (LinguÁgil)
  • Marcos 
  • Fabíola
  • João Victor 
  • Marcelo Curi (LinguÁgil)
  • Victor
  • Thales
  • Arlindo
  • Euler
  • Vitor
  • Rilson
  • Márcio Albuquerque (LinguÁgil)

Qual foi o desafio?
Mostrar o pódio de qualquer corrida da Fórmula 1.

O que aprendemos?

Pontos positivos :-)
  • Nova linguagem
  • Várias pessoas participaram, bom número de participantes
  • Foi em PHP
  • Uso do TDD
  • Explicação da Tecnologia
  • Conhecimento sobre a tecnologia
  • Foi bem informativo, porém faltou alguns conhecimentos de algumas pessoas
  • Faltou uma breve introdução sobre a linguagem
  • Boa interação com o grupo, mesmo com pouco conhecimento, dá pra interagir
  • Bem explicado
  • Todos participaram
  • Mais interativo
  • Desafio foi bom, explorou Android e JSON
  • Fluência devido ao conhecimento que o público já tinha de Dojo
  • Lista de Pilotos e Co-pilotos
  • Marcador de tempo com aviso sonoro
  • Boa participação
  • "Android com linguagens de script é massa"
  • Proposta do Dojo foi MUITO interessante
  • Ótima oportunidade para aprender
  • Ambiente ótimo
Pontos de melhoria :-(
  • Platéia confundia piloto e co-piloto
  • Emulador do Android demora pra levantar
  • Faltou TDD no Android
  • Pouco tempo - quando está na melhor parte, acaba
  • Demora para entender o desafio para quem chegou atrasado
  • Faltou um pouco mais de organização
  • Muito barulho
  • Ajuda sendo dada fora de momento 
  • Piloto e co-pilot sendo guiados, não sabendo o que fazer
  • Base de SL4A dada muito rapidamente
  • Nem todos os particpantes tiveram seus 5 minutos atendidos
  • Muitas pessoas opiniando ao mesmo tempo
  • Não houve muito bem o baby-steps
  • Foi em PHP
  • A sala toda foi o co-piloto
  • Muita sugestão da platéia
  • Pouco tempo
Teve slides?
Sim. Foi feita uma apresentação do que é o SL4a por Márcio.

E fotos?







Retrospectiva por Márcio e Curi

Platéia

Participantes/autores da solução.

Participantes/autores da solução.


Cadê esse código todo? Publicado no Google Code.


quarta-feira, 13 de outubro de 2010

Dojo#4: Jogo da Velha, O Retorno (PHP)

O que?
Coding-Dojo #4

Por que?
- Para que líderes de equipe experimentem a técnica e possam incentivar a participação de suas equipes

Quando?
04/08/2010, das 10 as 12h

Onde?
Serpro, Sala de Treinamento 06, 1o andar

Como foi a agenda?
10' - Visão geral sobre Dojo
5' - Apresentação do desafio
60' - Programação em pares, rodízio a cada 5 minutos, comentários só com teste passando
30' - Retrospectiva

Quem participou?
Serge, Márcio, Curi, Livia, Taíse, Marco Vinicius, Fabão, Leo Thomas, Rafael Miranda, Carlile, Isaac, Vanderlei e Tiago

Qual foi o desafio?

O Jogo da Velha

Em qual linguagem?
PHP/PHPUnit, com NetBeans.

O que aprendemos?
Pontos positivos :-)
  • Aprendizagem rápida
  • Aprendizagem com diversão
  • Aprendizagem dinâmica
  • Controle do tempo
  • Introdução com dicas (leia abaixo a seção "Referenciais adicionais")
  • Assimilação do TDD
  • Obter melhor solução com o envolvimento de todos
  • Construção e validação passo a passo
  • Pessoas com conhecimento da linguagem para auxílio em sintaxe
  • Pensar logo em vários testes e iniciar pelos mais simples (leia abaixo a seção "Referenciais adicionais")
  • Promove integração da equipe
  • Escolha do problema (simples)
  • Código coletivo
  • Visões diferentes agregam valor
  • Programação em par

Pontos de melhoria :-(
  • Maior participação das pessoas que conhecem a tecnologia (já que o foco era TDD, prog. em par e baby-steps)
  • Faltou alinhar conceitos de exceção (como testar exceções). Estudar mais testes com exceções
  • Algumas pessoas ainda acharam pouco o tempo usado no rodízio (5min)
  • Momentos confusos por indisciplina da platéia (muita gente falando e palpitando ao mesmo tempo)
  • Incentivar mais a discussão dentro da platéia
  • Alinhar conceitos desconhecidos (OO, testes, etc)
  • Primeira dupla poderia ter um tempo a mais para pensar em uma solução inicial antes de programar (2min, por exemplo)
  • Problemas mais simples ainda para atacar refatoração total
  • Tentar não usar a frase "Ninguém da platéia pode falar agora" e sim, no lugar, "O teste ainda não passou"
  • Muitos testes não tiveram definição clara

Teve slides?
Sim, os mesmos dos Dojo 1 e 2, só que desta vez apresentados por Márcio, para explicar os conceitos gerais sobre Coding-Dojo. Veja e ouça o SlideCast abaixo ou então baixe o PDF.

Referencias adicionais
Usamos algumas dicas para melhor aplicar o uso de TDD:
  1. Sempre inicie com uma lista de testes
  2. Sempre inicie pelo teste mais simples :
  3. Comece a construção do seu código pela construção do seu teste
  4. Comece o teste pela assertiva
  5. Simule até construir realmente
  6. Busque o verde o mais rápido possível
  7. Construa somente o necessário para o teste passar
  8. Passos de bebê
A referencia foi esse post, que detalha as dicas e ainda tem um vídeo legal mostrando TDD na prática:
http://www.heroisdati.com/tdd-para-iniciantes-para-quem-quer-comecar-e-nao-sabe-como/

E fotos?



Então, mostre-me o o código!

Ficamos devendo, mas o problema foi o mesmo do Dojo#2, então o código é bem parecido com este.


Você quer comentar
(edita/salva e coloca também seu nome)?
Foi muito interessante ver a visão dos líderes com relação a TDD, programação em pares. A receptividade foi MUITO boa. Alguns movimentos com relação a prática de testes e TDD já se fazem notar depois do Dojo. Outra coisa que vi, depois de alguns dojos: precisamos criar um moderador!!
Márcio Albuquerque, 12/08/2010

Dojo#2: Jogo da Velha (PHP)

O que?
Coding-Dojo #2

Por que?
- Por que no Dojo#1 já deixamos marcado, queríamos continuar praticando
- Para experimentar e disseminar a técnica e as práticas relacionadas (TDD, Programação em Pares, Refatoração, Baby Steps...).
- E, como sempre, por que é divertido!!!

Quando?
14/07/2010, das 10 as 12h

Onde?
Serpro, Sala de Treinamento 06, 1o andar

Como foi a agenda?
10' - Visão geral sobre Dojo
5' - Apresentação do desafio
60' - Programação em pares, rodízio a cada 5 minutos, comentários só com teste passando
30' - Retrospectiva

Quem participou?
Serge, Márcio, Thiago, Cleverson, Marlon, Marcelo Curi, Sandro Franco, André, Aline Rios, Gustavo, Luis Apodi, Cezar Ronaldo, João Victor (SERPRO)
Caio e uma colega (UNEB)

Qual foi o desafio?

O Jogo da Velha.

Em qual linguagem?
PHP com PHPUnit e NetBeans

O que aprendemos?
Vai aí a transcrição dos post-its:

Pontos positivos
:-)
- Mudanças de Arquitetura no meio da implementação.
- A platéia pode ajudar com questões de sintaxe.
- Muito bom aprender PHP com TDD e Netbeans.
- Conseguimos passar a maior parte do tempo focados nos testes e não na solução. A solução foi uma consequência.
- Para quem não conhece a linguagem, mas sabe lógica de programação. Foi possível acompanhar a evolução sem grandes problemas.
- Programação em par "na veia"!
- Ajudou a iniciar o aprendizado de uma linguagem nova.
- Cobertura de código.
- Desenvolvimento e testes em pequenos passos.
- Cooperação entre desenvolvedores
- TDD "na veia"!
- Aprende-se com os acertos e erros dos que programam antes.
- Refatoração funcionou muito bem.

Pontos de melhoria :-(
- Pouco tempo para o problema ser resolvido.
- A forma de trabalho encontrada ainda não encoraja novatos (na linguagem ou técnicas) a participar.
- Muitas pessoas dando sugestões ao mesmo tempo.
- Pouca familiaridade com classes de teste (TDD). Confusão entre classes de código (resolução do problema) e classes de teste.
- Devia ter um controle com relação a sugestões da platéia. Muitas sugestões ao mesmo tempo desvia a atenção e foco do piloto e co-piloto.
- Colaboração entre desenvolvedores apenas após o teste passar. Muitos davam palpites com o teste falhando.
- Planejar antes de executar.
- Pouco tempo para implementar (mas muitos disseram que o tempo está condizente com a quantidade de pessoas).
- Falta ainda um pouco mais de prática (nosso segundo Dojo) e foco (querer fazer mais de uma coisa ao mesmo tempo).
- O revezamento dos pares deve ser tal que sempre fique alguém mais experiente com alguém menos experiente.
- Piloto e co-piloto devem comunicar mais o que estão fazendo.

Teve slides?
Sim, os mesmos do Dojo1, para explicar os conceitos gerais sobre Coding-Dojo. Veja e ouça o SlideCast abaixo ou então baixe o PDF.

E fotos?







Então, mostre-me o o código!

Baixe aqui o código que conseguimos produzir. É um projeto NetBeans.


Você quer comentar
(edita/salva e coloca também seu nome)?
Mesmo que algumas pessoas tenham comentado que não chegamos ao final da solução, que o tempo é curto para tanto, o principal foco do Dojo é a execução dele, é praticarmos as técnicas envolvidas (TDD, Programação em Par, Baby Steps) e não chegar a solução. O problema é apenas um meio.
Márcio Albuquerque