Who wants to be seen as the one always in the social area not working while on the clock? Plus, who would consciously choose to get their socialization from work instead of their personal friends? I think office socialization has to be coincidental or it just won't happen at all.
I think that model works better in university settings because the students have such disjoint schedules, they need those amenities to keep students occupied between classes.
That "appearing as not working while on the clock" is, to me, a foreign fear, and not something I've ever really experienced at the places I've worked in. I know that I (and the teams I've been part of) have been plenty productive without pressure to put in the hours. I think that a culture of putting in the hours would have been counterproductive, in fact. My work has not been flipping burgers, but designing and creating complex systems. It doesn't work out that well under time pressure.
Absolutely. Just being able to chat with colleagues when grabbing a coffee exposes so much more of 'what's going on' than you can ever find out looking at git logs, slack channels and wikis.
A good office would allow you to work in peace when you need to. For a programmer, this would be maybe 50-80% of the time. This is where the monitors and keyboards and chairs are. Personal tools and personal space.
But, there should be enough opportunity to socialize when you feel like it; ranging from sofas and coffee machines and team lunches to pool tables and movie clubs and parties and gardens and tennis courts and dinners and skiing trips or whatever.
Universities tend to be pretty good in this sort of thing, actually. You get a room. With total isolation. You also get a vibrant community of smart people with varying interests and a huge range of activities to pick from.
Most of us aren't hermits, after all. Many programmers living in cubicle hell may think they hate people, but maybe they just hate the interruptions and loosing control of their concentration.