I have been doing remote work for 10 years now. Github and Gitlab (if you want to host privately) are the answers for me. Concerning communication and sitting together, my question remains: What exactly is it that you are able to say but incapable of writing? Over the years, I have become suspicious of someone who cannot write something but insists that he wants to say it, because when he is finally sitting there, guess what, he can still not say it. The more complex the project, the less you want to collaborate with that person, if only because his claims that he can say the things that he is incapable of writing, are not true.
But then you can help him put in words what is worrying him, even if he is incapable of saying. That's communication, dialogue. It is interaction in different levels, not just exchange of sequential, defined messages.
When you limit the dimensions of a face-to-face communication to the dimenions of a written communication, it is tautological to say the are the same.
But the advantage of face-to-face is exactly having more communication dimensions.
I doubt there are many things in the area of software development that a competent professional can legitimately be incapable of putting in words.
It is obvious that face-to-face communication can be richer. But it does not follow that internet or just written communication is significantly deficient in an overwhelming majority of situations in our field.
Having to put it in writing is still an extra hurdle. When someone is sitting next to you, it's easy to nudge him and ask "what do you make of this?". When he's somewhere else, you may have to paste or point to the code, possibly include screen shots, figure out how to give him access to the code running locally on your machine, etc. These are significant hurdles for really quick, short interactions.
I'm of this opinion as well. I've had to design some complex architectures, and there was nothing that an (admittedly long) phonecall couldn't iron out.