Both ZeroNet and Freenet have decentralized forums. Freenet's forum is called FMS. They have decentralized microblogging too - ZeroMe on ZeroNet and Sone on Freenet. This is a post I wrote about ZeroNet's decentralized microblogging: https://bluishcoder.co.nz/2017/10/12/zerome-decentralized-mi...
Moderation is a must, unfortunately. Matters of trust make it difficult to run code on the users' computers, even if NAT and so forth didn't get in the way.
I like the vision of decentralized computing, but I'm afraid it'll be at minimum very inefficient, and possibly infeasible.
ZeroNet has moderation in that site owners can remove posts. Users can self moderate via mute/block.
Freenet's FMS allows moderation using a web of trust. You provide trust to users pseudo-anonymous identities. And you can choose to trust who they trust. Trust scores are computed and any identity below a level will not be seen by your identity.
Freenet's Sone has similar functionality using a web of trust plugin (FMS has its own trust implementation) that can be used by other plugins.
> you could use something akin to Usenet's technical model (as that was a fully-decentralized message board collection).
That was effectively funded by taxpayers by way of universities.
Maybe the answer is public funding for online content, but we should be clear about it. This is an economic problem, not a technical one. Federation might slice the economic problem into smaller pieces, but they still need to be paid for.
Slice it down enough, and the average user can donate without much issue
Slice it down even further, and it can simply be the cost of entry. In the same fashion that P2P sharing communities usually require that you make X gb of data available before you can join, or closed torrent communities require an even seed/leech ratio, your federated network can require that you allow upload and 10gb of hard drive space to use (or vary based on usage or something)
Distribute the cost to the point that for any given person the cost is negligible is the ideal.
At the very core it comes down to whether or not people will have always-connected device that can do simple tasks for them. Imagine a layered webs-of-trust from Layer 2 up. Person P1 can trust router R1 (the one they use at home) to accept messages for them. They follow P2, P3, P4 on this future Twitter. P2 may entrust their friend's router. To deliver messages from internet piece to internet piece you use the WoT to make sure that the packets you are sending are from trusted computers. Some institutions, like banks, say, may be more forgiving than others because they have a profit incentive, so if your home computer gets hacked they may disallow your packets for a while, but once you get a fixed computer you're off to the races again.
Forums could be done in a multitude of ways, but what you are primarily asking for is for open forums. But it isn't possible to secure an open forum. We see this over and over again as spammers push their garbage down everyones throats or gloss it up by astroturfing. We can have relative anonymity, for example, Person P1 signs trust to Alias A5. We could even use something more complicated like what Monero does, but I worry at some point it will just turn into another form of money and that is antithetical to the whole model which should harshly punish people and devices that supply trust for cash.
Anyway, I know its a bit abstract, but you could have a forum. And it could be more or less realtime (since I'm getting updates pushed to my own device) but you're right, it is way more complicated and wouldn't truly be the same thing.
Well, depends on what you mean by decentralized and whether you meant distributed instead. If your use case allows centralization that you control, just put it on your always-on home computer and expose it as an onion service over Tor. The more infrastructure requirements you have (e.g. HA, load balancing, backups, etc) the larger the burden of course.
Of course, if it must be distributed/decentralized using others' resources (beyond just disk space), this is not a very mature area and the app has to be written to take advantage of the limited options that do exist.
Let's say I want to run a forum. Something equivalent to, hmm, https://forums.sufficientvelocity.com/
How do I do that as a decentralized website?