Honest question: why don't people just leave for months at a time? Is it because everyone understands that "unlimited" is actually "one month a year, more or less" or whatever the actual amount is?
I can speak for me and others I know rather well - I like what I do. I enjoy going to work, finding things to fix, and fixing them. There are those things that I don't enjoy doing, but, they're not the majority by a long shot. So, six months away wouldn't be that attractive.
Along with the that, one of the tenets of the business is "Freedom and Responsibility". If you can be responsible taking six months off then you are free to do so. I know people that take 4 weeks off at a time without issue. They plan their projects and commitments, communicate to their team, and make sure they're ready to be out for 4 weeks. Then, they leave for 4 week.
Maybe that's the difference. No matter how cool the company is (unless it's, say, SpaceX) I have a hard time imagining that the work would be more interesting than whatever I could come up with to do on my own. Which is probably a big part of why I don't work for a big company.
Is it possible that in healthy environments where people are valued and value each other as people they are capable of behaving ethically and responsibly?
According to my dictionary, work ethic is "the principle that hard work is intrinsically virtuous or worthy of reward." I think only a tiny minority of programmers would hold to that.
Along with the that, one of the tenets of the business is "Freedom and Responsibility". If you can be responsible taking six months off then you are free to do so. I know people that take 4 weeks off at a time without issue. They plan their projects and commitments, communicate to their team, and make sure they're ready to be out for 4 weeks. Then, they leave for 4 week.