Signal has a fun dark pattern where it unrevocably grants permissions for anyone you allow to contact you to see everything in your profile for the rest of time. It has only a single trust level with contacts effectively: full trust. This is unacceptable in any tool you use for online community, unless you exclusively use it for online community and can decline to provide any info in this full-trust level. Unfortunately Signal also makes very sure you can't have a second account, by tying your account to a phone number, and only allowing one Signal instance per mobile device.
Is Signal good? Yes, but only exclusively for communication with people you already trust.
EDIT: typos
getDeviceMedia and getUserMedia are very powerful these days. I haven't actually tested it but I believe a chromium browser would have no issue capturing the hw accelerated output from a game. You can pipe these media streams directly to WebRTC peers for playback on the other side. A server with a simple selective forwarding unit could enable larger scale meetings (100s of participants). All of this can happen in <1000 lines of JS and server code. Most of the heavy lifting happens in the browser engine. Concerns like automating browser permissions, global hot keys, etc. can be handled via electron or platform specific options like WebView2.
Mobile clients are a bit cursed right now. The best solution is to maintain a standard client in the app stores. Forcing everyone to sign their own mobile apps is way too much friction. And you do need native for this on mobile. Browser only / PWA has no chance in hell of providing a smooth UX on iOS or Android.
Signal → private but bad for communities
Matrix → flexible but rough UX
XMPP → powerful but fragmented
Discord → centralized but frictionless
Users pick frictionless every time. We probably don’t need new apps or protocols we need a client that works well.
Sadly Matrix has never had a good UX for me. IMO they spent too many complexity tokens on e2ee and there are simply not enough left.
IMO XMPP is technically superior to Matrix. It "only" needs a cross-platform high-quality, branded app àla Element. There's underlying protocol support for all the features: video/audio calls, group calls, threads and reactions. Maybe missing are custom emoji (I think?) and channel grouping (which is still in the works). And of course all these protocol features work fine with federation.
It's like describing DNS, which is a conglomerate of RFCs so complex that it's unlikely to be implemented correctly and completely.
XMPP is a design fail in that regard, because if you have to tell your chat contacts to download a different client that fulfills OMEMO or XEP-whatever specs, then yeah, ain't gonna happen for most people.
(I am still a proponent of XMPP, but the working groups need to get their shit together to unify protocol support across clients)
The main site https://xmpp.org/software/ lists lots of different options but I have no idea what core/advanced means and comparing all of these would take ages.
> Tools do not make a culture; the people engaging on it do
Absolutely, but it's also important to keep in mind that the tool has a big impact on culture by virtue of what behaviors it encourages and what limitations it has. "The medium is the message" is very true here, so think carefully about which tool you hop onto.
Discord has a financially and politically vulnerable posture that is downstream of having to operate a very large team, raise funding, be exposed to investor market pressure. However, it is also one of the rare instances of successful consumer freemium subscription monetization. A clone does not have to pay the tuition of "what makes this specific space compelling, and want-to-pay-for"; it just have to _exists_, passively soaking up migrants from each platform shift.
ITT WTB 3rd place for my frens.
I recently set up a Mumble server on my home server and it seems great so far, was able to get my friends connected pretty easily. We'll see how the voice quality and latency compare to Discord.
That makes you an even smaller minority unfortunately. Most people are not going to set up a home server.
Client dependent, but channel overview per server is also not that good.
https://wiki.bitmessage.org/index.php/Main_Page
https://vituperative.github.io/i2pchat/
Bring this back!, for sentimental reasons:
https://dcplusplus.sourceforge.io/webhelp/chat_commands.html
I've really had a hard time finding a Discord alternative that has the same kind of first-class voice and video chat support that Discord does. Back to Ventrilo and Mumble I guess /s
I also can't figure out a way to access them outside of the Steam client and in DOTA where I believe they're tied to the in-game guild system.