A beleza das melhorias imperfeitas
Estava lendo o blog do James Shore (para quem não conhece, co-autor do recomendadíssimo The Art of Agile Development) quando li a seguinte pérola de sabedoria:
Greatness emerges from a relentless march of imperfect improvements. A tiny improvement today enables a better improvement tomorrow, which enables even more improvement the next day and the day after that. Before you know it, you have more fun working in your “legacy” codebase than on brand-new code. It’s possible! I’ve seen it.
Isso me fez parar para pensar em diversas atividades que andei fazendo no meu trabalho em um projeto de software livre (será assunto para outro post). Basicamente estou adotando algumas práticas de XP para a minha rotina de desenvolvimento. Tem sido uma experiência bastante agradável, principalmente porque os resultados apareceram rapidamente.
Existem dificuldades também, algumas por falta de experiência anterior com a metodologia mas a principal é comportamental: XP requer disciplina, principalmente ao seguir o máximo possível o timebox definido nas estimativas das histórias. Todas as vezes que lancei mão dessa disciplina porque queria terminar algo de uma vez só resultaram em fracasso retumbante. Atraso é igual a desperdício, pior ainda atraso que não resulte em software que funcione e/ou software que funcione mas não testado!
Voltando a Shore, nos últimos dois meses, estive bastante concentrado na busca por melhorias nos meus ciclos desenvolvimento. O projeto em que estou trabalhando tem uma base de código legada (legado é algo que não fiz, o que imediatamente se traduz a: poutz! – um sentimento profundo e dualista, onde não sabemos onde estamos nem para onde vamos). Qual foi a primeira coisa que fiz? Logo na primeira semana, me lancei a corrigir alguns bugs.
Em duas semanas, já tinha alguma documentação sobre coding standards, ao qual sigo toda vez que altero algum código. Em três semanas, já tinha os primeiros testes unitários (PHPUnit) e funcionais (Selenium) para checar se as correções foram bem sucedidas. Anteontem, atualizei a documentação para contemplar detalhes sugeridos pela FSF ao lançar um software sob GPL e, ontem, comecei a usar um script de build (Phing) para criar pacotes ZIPs e GZips para distribuição do software. Em quase todas as semanas consegui corrigir algum bug (mesmo que muitíssimo pequeno ou simples).
Claro que teve dedicação extra, apoio da gerencia (fundamental) e várias horas de estudo fora do trabalho para estudar soluções em PHP para a execução dessas atividades mas, o grande lab, foi o trabalho diário. Anteontem, fizemos nossa primeira release pública com a correção de um pouco mais de uma dúzia de bugs.
Há ainda um monte de coisa (integração contínua, versionamento do banco de dados, etc, etc) a fazer mas espero que tenha conseguido capturar a mensagem: é melhor ir melhorando aos poucos, de forma imperfeita, do que esperar meses até entregar a perfeição. Do que vale ficar perdendo tempo prevendo coisas (e criando um book de diagramas UMLs que ninguém irá atualizar ou consultar) que o seu cliente não precisa e que não terão utilidade? Adicione valor sempre, em pequenos ciclos de desenvolvimento, entregue valor!
A invasão feminina em TI está anunciada
Não é nenhum report do Gartner como também não é uma previsão da mãe Diná. Trata-se apenas de um chute pessoal usando como estatística a turma do curso de PHP da 4Linux que estou ministrando atualmente. São 10 alunos no total, sendo 50% de mulheres e 50% de homens. Só para enfatizar o feito: é um curso de linguagem de programação!
Bem vindas e sucesso!
Impressões da PHP Conference Brasil 2008
Duas semanas depois da minha palestra na PHP Conference Brasil, finalmente posto aqui minhas impressões sobre o evento. Dizem que a primeira impressão é a que fica. Para mim, foi uma experiência simplesmente extraordinária.

Não é todo dia que se vê um ElePHPant por aí
Fontes e links da palestra na PHP Conference 2008
PDF da apresentação: Desenvolvimento Web com Drupal: o CMS e o framework
Links: aos poucos irei atualizando. Caso tenha algo específico que queira perguntar, mande e-mail ou comente que respondo o mais breve possível.
Reta final para a PHP Conference Brasil 2008 e sorteio de inscrição silver
Faltam apenas 16 dias para a PHP Conference Brasil. O conteúdo das palestras é de alto nível, tornando difícil decidir em qual ir.
Como poderei ir apenas dia 29 (dia da minha palestra), já escolhi as palestras imperdíveis para mim:
- PHP at SourceForge: Powering the World’s #1 Open-Source Website, do Luke Crouch que trabalha no SourceForge (9h – 11h)
- Colocando “Perfume” no código: Refactoring, padrões de Codificação com PHP, do Guilherme Lacerda (11:30 – 13h)
Tem outras ótimas palestras que serão no horário de minha palestra como “Uso do PHP no Apontador” e “Ganhando tempo com casos de teste“.
Sorteio de inscrição silver
Os palestrantes receberam da organização um pacote de cortesias para convidar amigos e familiares ao evento. Eu reservei uma para sortear entre o pessoal com quem sempre acabo conversando pela Internet, seja através de grupos ou blogs. É uma inscrição silver que dá direito a assistir as palestras do dia 28 ou 29.
Para participar, basta fazer um comentário neste post com o texto “Inscrição Silver“. Não esqueça de colocar o seu e-mail pois enviarei o código da inscrição a este. Sortearei o voucher dia 16/11 e anunciarei o vencedor aqui no blog.

