- cross-posted to:
- technology@lemmy.world
- cross-posted to:
- technology@lemmy.world
So, tell me about matrix and how to use its full basic potential…
Well, it was a good run.
💩
First thing they will do is put in some AI that can talk to people for you or something.
There are already bots for that. I’ve seen them in less popular channels
gentlemen start your enshittification.
Great time to start working on a replacement… if you have several million hanging around.
Finally, I hope Discord’s inevitable enshittification will be the kick in the ass that will launch a platform that doesn’t gargle donkey balls - preferably someting fediverse capable.
I always liked TeamSpeak, is that still around?
Like IRC?
Matrix
I wonder if Flotilla on Nostr will be ready in time. The nostr community can unfortunately be a bit iffy right now, but I like the tech, and I’m always excited to see someone taking a good stab at Discord.
I don’t think Nostr can take on Discord. A big part of Discord is the voice chat channels, which, as far as I know, Nostr just isn’t built for.
Soon as you hear the term instance, most people are out.
Call it a server, then. Tons of people already call them Discord servers. And it’d be a lot more true of Flotilla than Discord. Functionally, from a UX perspective, there’d be VERY little difference to an end user. You’d get an invite somehow, probably through a link, maybe combined with whitelisting your identity for more private communities, and you’d be in, using a client remarkably similar to Discord once it’s in a good spot. For most users, they can fully ignore the technical complexities.
Is there one very central, singular instance/server that everyone can join from, without causing performance issues (like if everyone on Lemmy was on the same instance)?
That’s required for normies. Look, 90% of people won’t ever move from reddit to lemmy because they’d have to CHOOSE an instance. It’s not that the choice even matters TOO much. It’s just the fact that there’s a choice. It’s a problem.
When Steve Jobs said Apple restricted your customizability and settings because users are dumb and don’t know what they want, I always thought he was an arrogant dickhead. And he was an arrogant dickhead, but he was also right. Average users don’t want choices, they want the OOTB experience to be as good as possible.
That’s a moot point because Discord doesn’t even have that. Community discovery happens almost entirely through users sharing invite links. There are third party websites that aggregate and categorize public communities with long lasting or permanent invite links, and that’s about the only other option. Functionally, a user can ignore where the community is hosted. All that matters is that they get the invite they want, just like today with Discord.
I think you see it as a federated system like the Fediverse, but that’s not really the case. Nostr relays are under no obligation to propagate content between each other, and for a Discord-like community, there’s no real need to. Clients are free to connect to as few or as many relays as they like. For something like this, the relay used by the community would be baked into the invite so users can connect without worrying about it. From their perspective, the only real difference is that the link doesn’t start with the Discord domain name.
Discord has a single point of registration though.
You can see the same communities from lemmy.world and lemm.ee, more or less. But the average user doesnt know that. They get confused. People are stupid. Sad, I know, but also true.
It’s good timing that I’ve been learning Docker to run Jellyfin and *arr. Guess I’ll look into throwing matrix or mattermost on there now, too.
Duuude. Discord is a dumpster fire right now. I’m interested to see how much hotter that fire can get.
Enough to power cities that run out power because Canada cut them off.
Another tough but not impossible migration for my crew, but there isn’t a good enough alternative yet. Plus they finally got around to fixing streaming on Linux, apparently, and I’m about to swap back once my new m.2 is installed.
Start making your plans for a replacement because it will be going to shit soon.
Although, I’m honestly surprised that there isn’t a Fediverse equivalent/Alternative to Discord.
IK that platforms like Matrix exist, but what I’m talking about is a a federated platform that’s a clone of Discord.
The trouble with relying on each community to self-host is that it’s unlikely to ever make it to the masses that way. Self-hosting is a significant barrier.
interesting; is revolt self hosted too or is it just purely a discord alternative? it looks almost identical from screenshots.
I tried revolt a year or so ago and it was pretty rough
Now is the time for Matrix to improve usability and whatnot, because I think that’s the most credible replacement.
I really wish Matrix had been more successful, but it has some pretty core problems that prevented it from gaining more traction.
It fell into the same trap as XMPP, though perhaps even worse, with a focus more on its protocol and specification than a single unified product vision. The reference server implementation is slow, and using a language not optimal for its purpose, with alternative server implementations left incomplete and unsupported. It took a long time for them to figure out voice and video and for it to work well, and the “user flow” still isn’t at Discord levels.
I’ve rooted for Matrix for a long time, but as a former XMPP evangelist, to me the writing on the wall says it isn’t suited for success either. I’d love to be wrong, but I don’t see a way through.
What do you think the main problems are?
In terms of performance, there’s Rust in the synapse repo already, and both Conduit (Rust) and Dendrite (Go) seem viable. If one of those projects reaches parity with Synapse, do you think that’ll “fix” matrix?
If not, are there other issues core to matrix design? I’m not that familiar with matrix except as an occasional user that follows a few tech rooms, but I’d love to help out if I’m pointed in the right direction. I’m comfortable with Rust and Go (and do Python at my day job), so if backend performance is a bottleneck, I could make help out.
But if the problems are fundamental to how it’s designed or how the project operates, I’d rather work on other things.
I do think the other home server implementations gaining parity (production-ready) with the reference home server would go a long way. I haven’t run a home server but I’ve heard from those that have that it really has a hard time scaling. (Though this serves as impetus to give it a try over spring break)
Which brings me to the caveats of the protocol, I personally don’t think the design is ideal, it’s more described as a distributed message bus, what I’ve read of the spec it’s over engineered, it made good decisions wrt using modern web technologies (JSON, WebRTC), but it didn’t scope itself to the particular task.
That said, I haven’t written a federated protocol, and they have. But if I was going to, I’d really want to look at Discord and see how to copy a lot of that model, but break parts of it out to facilitate federation:
I originally wrote a huge hypothetical design here that I speculated would fare better, but honestly the specifics become less relevant, point is that the shared state of rooms is a real challenge, and one out of scope for just a federated instant messaging system, and I’m no longer certain it’s viable.
I’m personally more interested in P2P protocols than federated, so that’s the stuff I build in my spare time.
So instead of something like Lemmy or Matrix, I’d have something like BitTorrent or Tor, so nodes just add capacity instead of hosting specific content. You could configure your node(s) to pin specific content (e.g. for backups or latency), but your data would also be distributed to other peoples’ computers.
This provides data redundancy, permanency of the service (no centralization whatsoever), and ease of scaling (every client could store and seed data), but comes with complexity. I think it’s workable though.
Matrix is probably something worth looking at, at least from an intellectual standpoint, for you. It uses shared message state and a DAG, plus some fancy perfect forward secrecy (using Signal’s Double Ratchet algorithm), which is at least interesting. There’s also Tox (chat/protocol) if you want totally distributed chat.
Personally, I really like distributed models from a theoretical standpoint; but for end-user applications they pose very difficult constraints, we live in a world with ⪅50% publicly routed IP for one, they fundamentally require immense data replication, latency in peer-finding, bandwidth constraints, and ultimately sub-par UX. I thought IPFS with a way to pay nodes to pin content was a really neat idea, but hasn’t caught on, for example. Not to discourage you, if you think it’s workable then have at it, but I think it at least explains the current state of things.
Yeah, I’ll have to look into Matrix’s design. I know some of the basics, but the devil is in the details.
we live in a world with ⪅50% publicly routed IP for one
STUN servers bring access up dramatically, and there’s always TURN for the stragglers. Things seem to be getting better with more and more people getting IPv6. I still don’t have it though, and I’m also behind CGNAT, so I know the pain.
But I don’t think bandwidth is really a problem. You should use similar bandwidth to a centralized service, provided the application does appropriate caching and there’s some form of cooperative querying to reduce wire transfer.
I’m following Iroh development (started as a faster replacement for IPFS), and this video was particularly instructive for reducing wire overhead (fancy bloom filter application). I’m trying to build something like Lemmy with it, and I’m interested to see if a similar approach could work for something like Discord.
But yeah, given how much I’m struggling with it certainly explains why it’s not very popular. I could build my project as a centralized service in much less time because synchronizing between clients is very straightforward, and something I do every day at work. But we already have that, and the Fediverse just takes that idea and connects nodes together, so I wouldn’t be adding anything. However, I think longer term, something like this (probably not my specific project) is going to be really important, and I think it’ll be “fast enough.”
pay nodes to pin content
Yeah, I don’t think that’s going to work, because you’d have to pay a sufficient number of nodes such that one node losing interest won’t screw you. And then you need some form of contract (smart contracts on a blockchain?) to ensure you are getting what you’re paying for instead of just getting screwed by someone tossing the data and never telling you.
I’m trying to design my system such that everyone participates in some small way in supporting the network. If you’re on a phone, you store a lot less than if you’re on a PC, but more than if you’re in a web browser. Maybe we could have a distributed fund for rewarding people for supplying more resources than necessary, idk, but I’m honestly not interested in the money part, I just want to build something cool that can’t be taken down because someone got bought out, lost interest, or their government disconnected from the internet. In fact, my system should “just work” if you have people traveling w/ data between isolated networks, provided they have a list of relays within each network that they can connect to peers with.
I can’t wait for Discord to enshittify so that lazy devs can’t say “join our Discord for updates and support!” anymore.
Hate that shit.
Somehow this post has negative down votes and I’m all for it.
Fiiiiiiiiiinally.
How can it not be awful for them too? Like users may even try to ✌️search Discord✌️ for their issue only to come up short and have fo ask a question asked a million times already. Gross.
It’s quite shit already
It seems unlikely that will stop, at least with any speed, TBH.
Unfortunately this is probably going to be a buy for me.
Seeing how the market reacted to the enshittification of Reddit, means that Discord probably has a lot of upside on the share price. The parallels between the two services can’t be ignored.
here it fucking come, if you thought it was enshitified you haven’t seen anything yet!