And it's even better for the environment if we don't make everyone commute.
Can you imagine a world where all the software startups go fully remote and all that prime office space becomes residential? You'd still need the restaurants and bars and whatnot, but instead of a bunch of office workers coming in at noon, you'd have a bunch of neighbors who are all taking a break from their jobs. It would be glorious.
I've done a lot of both, and what I've found is that in person works better if the company isn't "remote first". Being one or a few remote people sucks, lots of stuff happens in the office without you. But having the right tools for remote work makes it in some cases better.
But even in the case of an office, when everyone goes remote, suddenly it's not so bad.
At reddit, since when I was there everyone else was just out of college, we always worked the last two weeks of the year from home because we had "winter break". So for those few weeks, we were a 100% remote company, and it worked out ok. BUT, we didn't make any big decisions or do any deep collaboration because even though everyone was remote we waited till we got back to the office, not because it was better but because we weren't set up to do it remotely.
It's really all about having good processes for remote work -- ie. as much async as possible. And once you do that, even if you go to an office later, you've get better systems set up for tracking what happened and seeing history for new employees.
The worst thing for a new employee is having to get up to speed when all the meetings were in person and not recorded.
We have 2 "offices" 1 in SF and 1 in tokyo. It's completely optional whether you come in or not. Most people work from home. Our office in SF and Tokyo is mainly for entertaining customers and meetings.
Instead of losing all of the signals from in person communication, the accidental bump into's or a glance causing you to notice someone doing something relevant to you (or vice versa), you can just walk over to someone else's space and collaborate with them. If they need a period of focus, they can disconnect from the group space and have a doorbell, but it would also be easy to rejoin.
And unlike skype you're not always 'on the call', everyone just happens to be in the same room and if nobody says anything all day it's ok. More to the point you could even mute people if it's not relevant.
I once did an 'always on' google hangout with another guy when I was working on a software project with him. It was remarkably effective substitute for being in the same room. Key was it was always on and we could speak to each other when necessary. Nobody does this although in the companies I have worked in.
Also many meeting spaces have microphone quality issues, and it can be hard to hear people in the other meeting room as they have conversations with each other.
Culturally I think it will be hard to pull off, virtue of video conferencing not being used in the same way today.
I'm always surprised by the fact that more companies don't adopt the "always on" google hangout. It's literally in the name of the service, "hangout" yet people use it like a traditional conferencing tool.
If more people adopted it as a ROOM that you all worked in, I have a feeling many of the remote nay sayers would at least feel a little bit better about things.
Perhaps some very very clever voice reordering software could help, not sure. For now text chat works better.