I'm interested in real experience and personal answers not just those standard worn out "benefits of contributing to open source" that we all memorized by heart by now.

I've met many people who contribute to open source project and almost never did this topic come up: why did they contribute to this open source project. So, if you've contributed to an open source project before in any way, can you please pause for a second and try to remember what really made you decide to contribute to that particular project.

Was it a random decision, was it because you were bored, was it because the company you worked for was already using it and you contributed as part of your job, was it because the project was too big you wanted to get contracts, or the project was too small you wanted to build it, or because your prof or co-worker asked you to help with his open source project, or.....

To substantiate your reasons, please mention the project name and rate your involvement (heavy, occasional, light, once).

6 Answers 6


Because something was broken, and I needed to fix it for my own purposes anyway - why not share it with others in the same boat.


I like the idea that most open source contributors do it for something else than the "benefits".

But because there is always a reason, conscious or not...

  • Some do it for the social aspect. They meet people, they make new friends.
  • Some do it for the status it gives them. (StackOverflow like websites are based on that behavior).
  • Some do it because they like to achieve things. They like to solve problems. They like the idea that they are useful in this world.

It's always a combination of more or less of the three.

I'm more of the last one, with a small amount of the first and the second.

Open Source has an additional behavior that is more "practical":

  • Some did it because they have to. Because of licensing terms, to clear they conscience, whatever.
  • I thought I was pretty clear in my answer, I do it because I like to achieve things and be useful, and a little bit for the social & status aspect of the thing. Do you need more details ?
    – user2567
    Oct 12, 2010 at 13:27
  • Oh I misunderstood you then. All these reasons are yours. I thought you were talking in general because you started each bullet point with "some people".
    – Ermin
    Oct 12, 2010 at 13:31
  • No, I wanted to describe all top reasons before, as it's a subject I like very much (psychology)
    – user2567
    Oct 12, 2010 at 13:37
  • fair enough, +1 then
    – Ermin
    Oct 12, 2010 at 13:52
  • I like to think of it that way too, Pierre :) Nov 22, 2010 at 19:38

I contributed an extension to a Squirrelmail plugin, because I wanted to use that functionality and it was not already available.


I did it to support the project. I loose if the project dies.


I contributed to an open source project that would have faded away had I not contributed. I'm happy to say that because I did contribute it's still around and has flourished a little more than anyone expected.

When I switched from Windows to a Mac, my favourite IM client wasn't available. There was a small project started to create one.

It got into early alpha stages, was very buggy and crashy and eventually the author abandoned it. There were quite a few people using it at the time, and each time the IM service updated it's protocol, the client would get worse.

I started writing some fixes for it and before I knew it I had become it's developer. As it turned out, a couple of forks turned up, and the original project died back a little, yet I helped contribute to some of the forks too. The joys of open source!

Right now, an iPhone app I am actively working on is based on one of the forks that popped up for the IM protocol library. It's amazing how open source products can evolve and come full circle sometimes :)


We frequently do small contributions to various open source projects. This is primarily done because a particular piece of code done to achieve some functionality "logically" belongs to the projects and not our own code, and by contributing them back upstream they get part of the official distribution instead of us having to keep close track of new updates ensuring the code still works.

This is a good thing, as it lowers the risk of things breaking when deciding to upgrade to the newest version of libraries.

Not the answer you're looking for? Browse other questions tagged or ask your own question.