In many cases, the user interface to a program is the most important part for a commercial company: whether the programs works correctly or not seems to be secondary.
People enjoy the interaction on the Internet, and the feeling of belonging to a group that does something interesting: that's how some software projects are born.
Programmers are in the enviable position of not only getting to do what they want to, but because the end result is so important they get paid to do it. There are other professions like that, but not that many.
The cyberspace earnings I get from Linux come in the format of having a Network of people that know me and trust me, and that I can depend on in return.
The fame and reputation part came later, and never was much of a motivator, although it did enable me to work without feeling guilty about neglecting my studies.