Contribuindo em Python (e com projetos de SL em geral)
Há bastante tempo eu participo de projetos de tradução de software livre, mas tinha uma coisa que queria fazer há muito tempo: contribuir com código.
Há uns meses, pedi a
Tiago pra me indicar um projeto onde eu poderia colaborar diretamente com código. Ele me sugeriu o
Vampux, um software para configurar guitarra (algo assim, não entendo muito de música, hehe).
Tiago começou este software em
pygtk, e logo constatei que a melhor solução seria aplicar um framework mvc. O
Kiwi é um framework (brasileiro

) para aplicações escritas em pygtk + glade, e provê uma
mão-na-roda chamada
Virtual Proxy (link direto pro
kiwi howto, comece do começo).
O meu problema é que o kiwi não tinha suporte para
scales (aquela barrinha de rolagem muito útil para qualquer software relacionado a música), e lá fui eu tentar entender o código para fazer o negócio funcionar...
Um detalhe essencial é que para funcionar os proxies no kiwi, é preciso que as widgets estejam listadas no
gazpacho (um clone do
glade todo feito em pygtk), então lá fui eu tentar entender o código do gazpacho também, hehe.
Resumindo a história, depois de algum tempo, e com a ajuda de
Johan Dahlin, eu consegui submeter patches (e tê-los aceitos) para o
gazpacho e para o
kiwi em seus repositórios subversion. É claro que fiquei muito orgulhoso com isto. O próximo passo é voltar ao código do vampux, e reformá-lo completamente para funcionar com kiwi+gazpacho.
UPDATE: Saiu hoje (09 Nov 2007) a
release 1.9.19 do kiwi, com o meu
patch 
Pra funcionar os
scales, é preciso, por enquanto, usar a versão
trunk do gazpacho. Qualquer dúvida, pode falar
comigo.
Pra começar a entender como funciona pygtk, o meu primeiro passo foi ler o
tutorial sobre pytgk+libglade disponível no
Python Brasil.
Voltando ao título do post, uma forma muito útil de se ajudar em projetos como estes, sem ser com código, é ajudando a fazer triagem de bugs. Como comentado em uma
mensagem recente na lista do PSL-BA, os desenvolvedores destes softwares geralmente não tem tempo nem para classificar os bugs submetidos aos seus repositórios bugzilla.
Se você tem interesse em colaborar com o gazpacho, mas acha que não tem condições de contribuir diretamente com código, você pode pegar os
bugs não classificados e tentar reproduzí-los. O passo seguinte é entrar em contato com
os desenvolvedores e apontar os bugs que você classificou. Isto vale para qualquer outro projeto repleto de bugs não-classificados em seus repositórios bugzilla.
Mãos à obra!
- Warning
- Can't INCLUDE '', path is empty or contains illegal characters.