I think an important part of it is people's expectations. If you present something as being p2p then people are more chill than if you present it as being client server (even if you never use technical terms in your presentation). The thing is that p2p tech has always been so terrible that even these more chill expectations were far from being met. Playing around with some of this iroh stuff though I'm starting to wonder if the tech hasn't caught up? - this is iroh powered and works better than it should for p2p. Something is going on.

Replies (2)

Iroh is over QUIC, which has great features but it is UDP, meaning you can't use Tor. So it doesn't provide both privacy and p2p. Also web-based clients probably can't do QUIC and even if they can, they are not going to accept the TLS "raw public key". No single transport can make everybody happy: websockets: the only transport that works in browsers. Also works with Tor. But you rely on DNS and CAs and it is the lowest performance choice. tcp: wouldn't have to rely on DNS and CAs, Tor is supported, and performance is in the middle. But cannot support browser based clients. quic: wouldn't have to rely on DNS and CAs, and it has the best performance by a long shot. But you can't use Tor or browser-based clients.
Not allowing browser based clients is a feature 😈 I kid.. sort of. There isn't any reason browsers can't be extended to support quic etc. I think you kinda want to be connection type agnostic. There are connections you'd prefer (quic) or connections you'd settle for (tcp, Bluetooth) The nice thing is that you don't have to develop them all at once. You just pick the easiest to implement and make an algorithm that "chooses" ```return ConnectionType::quic``` then add types after it works at all and as demand develops.