Personally I don’t think offices are good for collaboration either. The way people work together is fundamentally broken because it relies too much on synchronous communication.
Asynchronous communication is good for tasks where there is a long gap between decisions. But one of the reasons I hate working with IT is that the typical change request procedure requires multiple days for each individual change. If failing is even remotely possible (as, IMHO, with every complex system) this can be stifling.
Synchronous communication is where serious deals are made. Ask any broker in the pit on Wall Street.