Prove me that you can have a conversation with someone who's 8+ hours away and sleeping when you are awake.
Prove me that you can teach someone over the phone to use a python profiler, knowing he's never used a profiler before. (That's one of the thing I had to do last week).
There are remote-only outfits, and they do fine - at least as well "We're not getting any work done because we're in an open plan office and we can't hear ourselves think" outfits.
But hiring policy is an issue, and so is PM. It needs people with a compatible attitude, and that includes management.
It's not that remote is a panacea, but it shouldn't be a showstopper either. There are plenty of productivity killers in non-remote work styles too.
What do you professionals do? They work with other professionals and progress with each other.
What do you do with the world class experts you have? Make them work with other world class experts to make the impossible possible. Again, lots of collaboration and interactions needed!
For anything non trivial or not explained by a stack overflow answer, the "go learn X by yourself" could easily take weeks to years, whereas it could be explained in a few days with face to face interactions.
The "can't hear ourselves think in an open plan" are dysfunctional organisation. Of course, a lot of things do better than that, including other dysfunctional organisations. Let's have a better point of comparison than that ;)
I mean the world was educated through text for over a millennia. It works.
I would replace text with mentors
The original point I was trying to make is you don't have to be "in the office" to learn programming stuff.
You seem to be suggesting that "collaboration" and "interactions" are things that necessarily can only happen synchronously and via richer media than text. Even if you want to move away from OSS as an example, I'd point towards the centuries of intellectual discussion that took place via hand-written snail mail letters.
Is in-person communication faster? No question. Is it the only way to effectively communicate ideas as part of a two-sided discussion? I should hope not.
6 hours is about the limit to still have a bit of overlap. That's London-Houston for me.
What's the context of the conversation? That's really important. Of course you can't have a conversation with someone who is sleeping.
Equally you can't expect a well thought out response from your colleague when you are sitting over their shoulder asking them questions, wheeeas you will get that if you give them time to respond.
> prove me you can teach someone over the phone to use a python profiler, ...
Again, why? In that case surely it makes sense for: A) you to do the task (as you colleague can't use a profiler)
B) your colleague to learn to use the profiler. If your job is to teach someone to use a tool over the air, then yes you have a very valid point. If it's mot, then you tell them to earn how to use a profiler or you'll do the task and they should tackle something else instead
That sounds dysfunctional to me. What's the point in having co-workers, teams, company if I am on my own for everything? What's gonna happen when I get hit by a bus? What's gonna happen when another guy get hit by a bus and noone knew anything he was doing?
No. Every problem comes down to "there's a problem that needs to be solved".