Relato do HackingDay v0.1
12 de Novembro de 2012, 0:00 - sem comentários aindaCom quase uma hora de atraso, iniciamos o HackingDay do dia 11 de novembro. O espaço foi bom, agradável mesmo, mas precisamos reorganizar a fiação. A comida estava ótima e 100% dela era vegana (Uau!), desde os quitutes até os biscoitos de viagem. Avançamos em áreas importantes do código, criamos features interessantes, mas não foi (quase) nada do que esperávamos para esse dia. A participação foi muito baixa, o que confirma que confirmação em eventos no facebook não é confiável e que fazer eventos no domingo é uma péssima idéia.
Participantes
outros assistiram ao vivo, mas não interferiram no desenvolvimento.
O que foi feito
Testes, muitos testes!
Claro, tínhamos que fazer testes, mas não fizemos apenas para o plugin das macros, fizemos testes para novos métodos que criamos para a infra de plugins e testes para áreas não cobertas no core do Noosfero. Esta foi uma surpresa para nós, pois testes são invariavelmente exigidos em patches do Noosfero. Acreditamos que o tal método sem testes é muito antigo e foi criado quando a política de testes não era tão rigorosa e além disso pode ter entrado em um commit grande o que dificulta a avaliação do release manager, que aceitou o patch por confiança. Isso reforça também a orientação para o trabalho com micro-commits.
Métodos novos para a infra de plugin
Criamos o método waterfall para transformar o conteúdo em cadeia. Ele se opõe ao método dispatch no sentido em que o dispatch coleta todas as saídas dos plugins registrados em um hotspot e retorna uma lista com estas, enquanto o waterfall envia a saída de um plugin para o outro, sobrepondo as possíveis transformações que cada um faz sobre o conteúdo.
Momento da definição do nome watherfall: 49:46
Criamos o método picknrun para executar um determinado método em apenas um determinado plugin, caso este esteja habilitado e tenha o tal método, ou seja, o registro de um hotspot. Esse método parecia necessário para a infra de macros, mas não temos mais tanta certeza disto.
Cunhando o nome picknrun: 2:51:22
O que deu errado
Hora de início
Alguns dos participantes locais, de presença fundamental, demoraram para chegar. Alguns chegaram muito depois da hora marcada para o início, inviabilizando os preparos deixados para última hora, o que nos fez desistir de colocar o Gobby para funcionar.
Edição colaborativa
Pensamos até em usar serviços fechados para a edição colaborativa (assim como usamos hangout para transmissão/participação), mas felizmente a versão mais atual do Gobby já funciona muito bem. Até levantamos um servidor gobby em colivre.net para organizar e viabilizar a participação externa, mas nossa organização de última hora não lembrou que a Colivre usa Debian Estável em seus desktops, apesar dos membros usarem Debian Testing em seus laptops. Infelizmente, a versão do Gobby no Debian estável não supria nossas necessidades e não havia mais tempo para uma compilação local.
Codding Dojo
Iniciamos com pouca gente localmente, onde o dojo realmente aconteceria, e mesmo com a chegada de mais dois convidados não nos motivamos. Até poderíamos fazer o encontro no modelo dojo, mas nos pareceu mais interessante trabalharmos num modelo derivado de pair-programming (com muito mais de dois programadores), já que (quase) todos estavam participando intensamente da elaboração do código.
Também foi bastante positivo ter Rodrigo Souto (Diguliu) liderando o desenvolvimento e explicando detalhes que ele dominava muito mais que qualquer outro participante, como a infra de plugins e os testes no Noosfero. Esse modelo pareceu bastante produtivo (nosso objetivo 0), estava confortável para todos e ainda foi bastante instrutivo.
Bebidas
O homem do dinheiro não compareceu e ainda estávamos sobrecarregados com a preparação do espaço na última hora, por isso tivemos ótima comida (encomendada com antecedência), com água mineral. (Ao menos não foi água da torneira.)
Soluções propostas
Preparação antecipada da infra do encontro
- Definir um grupo responsável pela infra
- Definir toda a infra necessária no check-list
- Preparar e testar toda a infra, incluindo o clone do repositório, no dia anterior ou na manhã do dia do encontro.
Definir um responsável pelas comidas e bebidas, que receba o dinheiro com antecedência.
Comits
- Including the waterfall method and redefining parse content
- Adding method picknrun and base infra for macros plugin
Ficou em aberto
Data do próximo HackingDay. Esquecemos de discutir isso.
Modelo para registro de macros. Discuta isso!
HackingDay v0.1
6 de Novembro de 2012, 0:00 - sem comentários aindaNo próximo domingo (sim, Domingo!), de 13:30 até 19:00 horas, faremos o nosso segundo encontro HakingDay. Um encontro para programadores, totalmente aberto, onde você não precisa nem avisar que vai, basta aparecer lá. :-)
HackingDay é um encontro onde desenvolvemos algo realmente útil, enquanto aprendemos, trocamos informações e discutimos sobre temas relacionados ao projeto em execução. No final o resultado é repassado ao projeto de software livre de onde retiramos o tiket, para benefício da comunidade.
Conforme decidido no primeiro encontro, continuaremos o ticket "Macros para artigos" até termos algo minimamente útil.
Teremos comida liberada no local! (agora é oficial!) Obrigado a professora Debora Abdala e ao TecCiência pelo apoio!
Se você está em SSA, apareça na sede da Colivre, no domingo 11/11 as 13:30.
Se você não está em SSA, se ligue no hangout!
(acompanhe-nos nas redes e pegue o convite que publicaremos no domingo)
Participe, Curta, siga no Twitter e siga no Identi.ca.
Update
Leia o relato deste encontro!
HackingDay v0.0
27 de Outubro de 2012, 0:00 - sem comentários aindaNesta edição inaugural (de teste) trabalhamos no ticket Macros para artigos. Eleito pelo método Schulze via ModernBallots.com. Não completamos o projeto, mas apendemos bastante e já temos uma idéia melhor sobre como organizar esse tipo de encontro.
Nesta edição inaugural (de teste) trabalhamos no ticket Macros para artigos. Eleito pelo método Schulze via ModernBallots.com. Não completamos o projeto, mas apendemos bastante e já temos uma idéia melhor sobre como organizar esse tipo de encontro.
Cardápio: biscoitos, e água.
Participantes:
Tickets propostos:
- Macros para artigos (Noosfero)
- Identi.ca Provider para o Gnome3 (GNOME Online Accounts)
- Real time user notification (Noosfero)
- Liquid Democracy Plugin (Noosfero)
Vários conceitos foram apresentados e estratégias discutidas para solucionar divérsos micro problemas relacionados ao ticket, o que mostra um grande potencial formativo nesse encontro e uma chance ainda maior de se chegar a uma solução de qualidade, através da inteligência coletiva.
Imagens do Encontro pré Alpha Test
Reunião prévia com a participação dos participantes locais e os conectados.
Valécio, a distância, faz suas proposições.
Enquanto a projeção se torna a tela principal, onde o código é desenvolvido, telas auxiliares mostram os participantes a distância.
Valéssio participando enquanto o código é escrito localmente
Várias cabeças juntas, umas codam, outras refletem, outras pesquisam...
Aurium pesquisa, Yuri reflete e Diguliu coda.
O código tem seu merecido lugar de destaque
Todos de ferente para o mesmo código, e vendo-o da mesma forma. (inclusive pelo hangout)
Os primeiros participantes locais
Diguliu, Yuri, Aurium e Nadilson, no CPD da UFBA
A participação a distância
Neste momento temos Maurício Vieira e Valécio, mas também participaram Joêno e Rafael Gomes.