The only issue is client support and the fact that I don't have a good sense of the state of development/stability/soundness for SSB.
If you (or anyone) has experience actually using SSB or similar true P2P platforms, I'd be very interested to hear what did or didn't work well.
On the other hand, the underlying libraries are opinionated in that they usually use depject and a handful of other tools/techniques that aren't super familiar to those outside the SSB community, which makes it harder to write brand new clients.
I'd use SSB exclusively if they offered a web client (as I'm on a Chromebook), but we're slowly getting there.
https://github.com/ssbc/patchfoo
you do need to host your `sbot` somewhere tho
very interesting and maybe better than SSB..
it has hypercore - raw distributed streams, and hyperdrive - file abstraction on top, and a whole bunch of related projects, like Beaker browser.
https://github.com/datproject/awesome-dat
the protocol could be turned into a generic federated messaging framework..
There is a discussion about that somewhere but I can't find it anymore
This is exactly what namecoin tried to solve. Buy an identifier, put whatever you want in it. Example: https://nameid.org/?name=rakoo
> The other question is whether we want server-to-server federation at all instead of a P2P network like bittorrent.
We want something in between. The best model I know is the one of scuttlebutt (http://scuttlebot.io/more/protocols/secure-scuttlebutt.html): Each peer is identified by an asymetric keypair, and writes posts/comments/photos to a local ledger. Everything is signed and potentially encrypted if the message is to be read only by select people. Diffusion follows the peers' connections: stuff is sent from peer to peer as they connect together, friends can be used as a third leg (ie a common friend can carry stuff even if it's not for them), and you also have pubs where more people can connect and get more stuff faster. This system is different from bittorrent in that everything depends on the human connections: information spreads along human acquaintances, names aren't globally unique, they depend on how your friends agree to name you, etc...
It's better than naive server-to-server federation because pubs can be simple, stupid message forwarders yet still have all the advantages of being always-up servers.