15 Oct

We all have a favorite open-source application. Maybe it's Firefox, OpenOffice.org, Eclipse, PiTiVi, Gimp, Kdenlive, or any one of the tens of thousands of other open-source apps. After running my own open-source project for the past year, I wanted to share my thoughts on the subject. That is... what are 5 ways to help improve your favorite open-source application.

HINT: None of these involve programming.

1. Contribute Ideas
Everyone has an opinion. Why not share it with the project. I see so many ideas, suggestions, and complaints posted on forums. These ideas never make it to the project team, and thus never improve the project. Most projects have some preferred method of sharing feedback. Whether it's IRC, mailing list, or a bug tracking system, communicate your ideas back to the project.

2. Help with Bug Reports
Your favorite project probably gets many bug reports each day. These bug reports slow down the developers, and in many cases they do not result in a bug... but rather a confused user or a common issue that has a documented work-around. Most bug systems let anyone jump in and help out. Answering a bunch of bugs will definitely make the developers of your project happy (assuming you are helpful to people), and give them more time to focus on programming.

3. Donate Money or Equipment
Running an open-source project can be an expensive endeavor. Hosting fees and legal fees alone can kill a project. Most projects accept donations, and are very grateful... even if they don't "thank" you. But trust me, donations can really be helpful for a project, and in some cases fund airfare and hotel fees for events that bring developers together.

4. Spread the Word
It's exciting to see a project grow and expand. Every project has to compete in a really noisy environment, and try to gain the attention of prospective users. Post links, blogs, videos, and articles about your favorite projects. Drive as many users to the project's website as possible. This has many positive side effects. Some of the people you direct to the project, might one day turn into contributors, bug trackers, testers, packagers, documentors, etc... The larger the user-base, the more ideas and contributors will come to the project. And that is really important to the life of all open-source projects.

5. Send a Nice Email
It sounds so simple. We (open-source developers) are regular people, just like you. We enjoy getting a nice email as much as the next person. I can not tell you how many times a nice email has motivated me to work extra late... fix an extra bug, post a new article, and generally makes me want to do better. So, don't be afraid to send a nice email to your favorite project, and say "Great job people... keep up the good work!".

One of the most surprising things I've encountered while running an open-source project is the ridiculously rude comments and emails I have received. Here are a few quotes I've saved up for your reading pleasure: "How dare you make a project that crashes my computer...", "why don't you go learn Python before talking to me...", "I hate this program...", "We don't need another video editor... go away...". Imagine sitting at your computer, knee deep in programming a bug fix for a volunteer project, and getting an email like this. Kind of kills the motivation, if you know what I mean.

Hopefully this post will motivate a few of you to jump in and help out with your favorite projects. Sometimes the smallest contributions can make the biggest difference.

[image credit: http://www.opensource.org]