My guess is that many of those hackers willing to take much lower salary for ethics and morality are either already rich or do not have the burden of supporting a family yet. It's already hard for someone to take low salary job when plenty of much better paying jobs are available, it'd be way more harder for someone to do that consistently throughout their life.
Come on, a "much lower salary" compared to a Google or Facebook salary is still a pretty good salary compared to a lot of other jobs. I don't make Google money (I also don't live in the Bay Area) and I need maybe a quarter of the money I'm making. If I had a family I might need half.
You might be surprised at how much family changes things. You have to factor in:
- Assuming two working parents initially, either lose one salary or pay >$1000/month on child care per child until school (unless you're lucky and grandparents live nearby)
- Larger house, larger mortgage. In the UK at least, you probably end up looking for one in the catchment area of a good school which means even more expensive, or go private which is a lot more expensive.
- Kids are just expensive. Clothes, book, activities, clubs, holidays, books.
And yet a lot of plumbers, bus drivers, cashiers and people with other jobs that pay a lot less than whatever a software developer gets successfully raise children.
Those jobs still exist in large numbers in places with low costs of living. Programming jobs generally only exist in places with high costs of living, where someone with any of the jobs you listed (except maybe plumber; those folks make bank) would be struggling to get by, and wouldn't think it was wise to start a family.
> You might be surprised at how much family changes things.
Every expensive hobby that you start probably changes things a lot. Starting a family has the disadvantage that you cannot simply stop it if money starts to lack.