Possible Duplicates:
Why do programmers help each other without pay?
What motivates people to answer questions in Stack Overflow?
You have StackOverflow, and you have Wikipedia, and you have Kongregate. All of these websites have a dedicated follower base that provides rich content for free. The first time I asked a question on StackOverflow, I received like 70 views and 4 or 5 good answers within the span of a couple of hours. Wikipedia is the worlds largest encyclopedia. Kongregate currently has 30,000 games. How do these websites gain so much participation from their users without providing the users with anything of monetary value?
There's the "meta game" factor. StackOverflow has badges, Wikipedia has the featured article and featured pictures, and Kongregate has their own badge system for making certain accomplishments. In addition there are some form of points. The points in StackOverflow are obvious, in Wikipedia you can see how many edits someone has made (a form of points). But what does all of this matter? You can't redeem your points for cash after all. So are the points some sort of psychological equivalent to money? So that even though you're not making any money, you feel like you are? Or is there some sort of social dynamic behind the meta game and the points so that they are a kind of way to advertise your relative accomplishments to the rest of the community? Or is the motivation for something much more lofty than points, or social status, such as just helping people out (StackOverflow), or accumulating and organizing knowledge (Wikipedia), or helping people to enjoy their day (Kongregate)?
Where does the motivation come from? I'm very interested to understand this dynamic more clearly. What are your thoughts?