Por que e Como Participar de Projetos Open Source

Me

Motivação

Por Que Participar?

Aprender algo novo

Por Que Participar?

Para retornar à comunidade

Por Que Participar?

"Scratch an itch"

Por Que Participar?

Fator abandono.

Por que participar?

The Hidden Benefit of Giving Back to Open Source Software

Como Participar

Contribuir com código

Enviar Código

Enviar código com novas features é a forma mais direta mas não a mais fácil.

Enviar Código

  • Veja o código de conduta.
  • Aclimate-se ao ambiente do projeto (IRC, Maillist, Slack, etc)
  • Seguir os padrões de codificação do projeto (HACKING.md, CONTRIBUTING)
  • Entender os objetivos do projeto (isso está na cabeça dos mantenedores)

Anedota: Mitter.

Enviar Código

Por onde começar?

  • Issue tracker
  • Entenda quais são as suas habilidades
  • Procure issues nessas habilidades
  • Defina um tempo para se dedicar
  • Paciência

Enviar Código

Lembre-se: para alguém, o projeto é seu filho.

Anedota: IceWM.

Enviar Código

PR = "Puppy Request"

Brett Cannon (Microsoft) - Setting expectations for Open Source participation

Enviar Código

Algumas vezes, o projeto já está abandonado pelo autor original, mas a comunidade ainda mantém indiretamente.

Anedota: Blackbox.

Enviar Código

Muito raramente, o desenvolvedor simplesmente não tem tempo para pesquisar como corrigir uma feature que ele mesmo quer colocar.

Anedota: Htop.

Como Participar

Bug reports

Bug Reports

Quando encontrar um problema, tente repetir; tente isolar o que causa o problema (uma configuração, o nome do arquivo); se conseguir, envie para o desenvolvedor.

Anedota: Skyrim.

Bug Reports

Se possível, crie um teste que mostre como o problema se repete (o que é mais fácil para bibliotecas e frameworks do que projetos).

Anedota: MongoEngine.

Bug Reports

Se não (quiser|saber) programar, descreva passo-a-passo como reproduzir o erro.

O Fork

Quando o desenvolvedor original do projeto não tem mais interesse e não quer continuar, sempre há a possbilidade de ter um desenvolvimento em separado.

Anedota: Jenkins, Pillow

O Fork

... e há vezes que um fork, com ajuda da própria comunidade, volta para o projeto original.

Anedota: Compiz, GCC

Como Participar

Traduções

Traduções

Se você não entende de código, pode ajudar traduzindo a aplicação para a sua língua.

Anedota: Mitter e Fábio Beneditto

Como Participar

Artwork

Artwork

Muitos projetos precisam de um site bonito e até mesmo um logotipo interessante. Ajudar o desenvolvedor mantendo um site que consiga comunicar o objetivo do projeto sempre ajuda.

Anedota: Alguma-Coisa-Dog.

Como Participar

Documentação

Documentação

Desde "como instalar esse projeto" ao "o que ele faz", ainda falta documentação de muita coisa. Nem é preciso saber programar, pegando algumas dicas com o autor do projeto.

Dica: Embora alguns desenvolvedores reclamem da falta de man pages, é possível fazer coisas bem legíveis usando projetos como ReadTheDocs e Gitbook.

Como Participar

Doações

Doações

Alguns projetos tem pessoas trabalhando full time e precisam de alguma forma de pagar essas pessoas.

Anedota: VIM, Mozilla

Como Participar

Evangelização

Evangelização

Você pode ajudar um projeto a crescer divulgando o mesmo em palestas ou até mesmo comentando com seus colegas.

Dica: Evite guerras santas do tipo "meu projeto vs seu projeto".

Anedota: Eu ;).

Como Participar

"Obrigado"

"Obrigado"

Poucas coisas conseguem ser tão poderosas como um simples "obrigado por ter feito esse projeto".

Dica: Cerveja e Pizza também contam como obrigados.

Anedota: Htop.

"One more thing..."

"I think that openness as a practice – not just code you can fork but the transparency and accessibility of the development process."

-- Mike Hoye, Mozilla

Perguntas?