More for the helping the world part of things. Many people will give their all to causes they consider worthy for minimal personal gain. Not like they can't move to a regular corporate job after 10 years when they need to support a family.
such companies with salaries under average market level wont work well due to
1. corporate bureacracy - managers usually are undercompetent and tend to ignore personal matters so team members might bully eachother
2. idealistic people usually have a couple of nuts loose in their heads, combine two or more such persons and you get problem for entire team - linux's coc is one example.
so nearly every org without really focused goal and means of it's following will go the mozilla way, the marissa meyer and such...
it will happen every time if managerial part ignore specifics of programmer work.