There are a number of people on this thread who are saying "I don't contribute because I don't have time". Well, why don't you contribute money instead then? If a piece of software has value to you, either because it helps you do your job, entertains you or saves you some time, then it surely has monetary value.
The advantage of contributing money apart from it taking only about five minutes is that you don't have to deal with the arrogant arseholes that all successful open source projects are staffed by (if many of the anecdotes above are correct).
Full disclosure: I am in this group of people, unless you count the very occasional bug report.