Enviar código com novas features é a forma mais direta mas não a mais fácil.
Anedota: Mitter.
Lembre-se: para alguém, o projeto é seu filho.
Anedota: IceWM.
Algumas vezes, o projeto já está abandonado pelo autor original, mas a comunidade ainda mantém indiretamente.
Anedota: Blackbox.
Muito raramente, o desenvolvedor simplesmente não tem tempo para pesquisar como corrigir uma feature que ele mesmo quer colocar.
Anedota: Htop.
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.
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.
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
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.
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.
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 ;).
"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.