5 ms·
The issue I have with Matrix/IRC/IRCv3 compared to Discord is that they don't really work well with public communities. Discord's server/channel/role system is
by TheBrokenRail 4y ago
The issue I have with Matrix/IRC/IRCv3 compared to Discord is that they don't really work well with public communities.
Discord's server/channel/role system is amazing, and I don't know why everyone else isn't replicating it.
For instance, let's take the Pine64 Discord server. It has a grand total of 27 channels split into 10 categories (including top-level). Using Discord's permissions system, some of those channels are read-only like #announcements.
Pine64's server is also bridged to Matrix. Matrix requires every single channel to be bridged individually into their own Matrix chat, just look at this table (https://wiki.pine64.org/wiki/Main_Page#Chat_Platforms https://wiki.pine64.org/wiki/Main_Page#Chat_Platforms)! In fact, some of the channels aren't even bridged at all! Meanwhile on Discord, everything's all in one easy to use place. You just join the server, and that's it.
But what about Matrix spaces? Aren't those the equivalent of Discord servers? The issue is that rather than an integrated experience, Matrix servers are just a built-in version of the table I listed above. You still have to leave/join chats individually and it doesn't even have categories!
But that's all from a user's perspective, what about from a server admin's perspective? Discord's permission system is great and flexible, and Matrix's system is just kind of bad. In case you don't know Matrix's system from what i understand is basically: every user gets a permission level number, and users with certain levels can do certain things. That's it, no flexibility whatsoever.
Meanwhile on Discord, you can create roles which when given to users allow them to do certain things. Like anyone with a "Moderator" role can delete messages or ban people. But you could also make it so "moderators" can't delete messages, only ban people. And you can also make roles behave different on per-channel or per-category basis. You can even make it so users can't see a channel at all without a role (for instance, a server I'm an admin on has a #mod-chat channel and a #admin-chat channel).
Matrix's system just can't do that. And it really doesn't integrate with their Spaces system. There's no way to make it so only certain people can see certain channels in a Matrix Space. In fact, there's no way to manage permissions for an entire Matrix Space at all! It's limited to a per-chat basis.
And that long-winded rant is why I will stick with Discord.
- adenozine 4y agoInsomuch as this may be an adequate design, for many cases the fact that it’s not open source is a nonstarter. I’d certainly never touch it for my teams and workgroups at work, because we need to be able to host it and isolate and harden. Discord is also sorta prone to this weird and cringy sort of internet culture which regular people find a little gross, I’d think. I’m old enough to distinctly remember the rise of IRC and I can’t see a reason aside from better security for it to be reinvented rather than just updating the standard. Emojis and attachments and whatnot.
- 1propionyl 4y ago> [IRC, MSN/ICQ/etc, ...] is also sorta prone to this weird and cringy sort of internet culture which regular people find a little gross, I’d think. Nothing new under the sun.
- stonogo 4y agoDiscord and IRC are not competitors. Discord is just a product you choose to use or not. Discord Inc. runs the servers, and you use whatever software they approve to connect. Using unapproved software could result in a ban from the service. IRC is a set of protocols to enable a federated service. You choose which server implementation you want to host, and your users choose from dozens of available clients, which all work together because of the relevant standards, to which everyone has access. The rest of your comment seems to be a comparison of Matrix, which is not IRC, and Discord. It's great that you've found a product you like, which suits your needs. Don't make the mistake of thinking IRC is competing with it, though. IRC will still be here long after Discord Inc. exits.
- ilyt 4y agoThose 3 product fill same function, chatting between people. Of course they are competitors, it's just IRC isn't competitive in normal people space. The fact IRC might or might not choose to compete doesn't mean it isn't one of choices people wanting chatting app consider.
- Gigachad 4y agoAfter seeing almost every single community I frequented on IRC move to Discord and some to Matrix over the last 10 years, I just don't agree that Discord is not competing. It's captured almost all of the users. IRC will always "exist" in the same way steam powered trains and analogue cameras exist. IRC certainly isn't relevant anymore.
- charcircuit 4y agoDiscord and IRC are competitors. Where do you think the terms servers and channels came from? Just because IRC is losing to Discord badly you can't just retroactively redefine IRC as a chat service for people who want to use something with an open protocol.
- phire 4y agoThe protocols might not be competitors. But that doesn't change the fact that Discord has been swallowing up almost every single community that either previously used IRC, or would have used IRC if it was created 10-20 years ago. The sad fact is that other than openness (in several senses of the word), Discord delivers a much better experience to the communities that use it. It preserves scroll back. It has a proper mobile app that reliably delivers notifications (I'm not aware of anyway to do this with IRC, other than a closed and paid service like IRC cloud). It has moderation tools. It has community building tools and ways to split off sub-conversations. It has platform wide anti-spam. It both embeds images and videos, and stores them. It is incredibly depressing watching communities die on IRC, either moving to discord, or being replaced by new communities on discord that serve the same role. Most of the ones still holding on are run by older people who have strong views on the importantness of openness. I actively support those communities staying on IRC. But at the same time, I use discord myself, and I understand why it's winning.
- andrewshadura 4y agoIn fact, the Matrix permission system allows for what you describe. For each room, you can define what actions a certain access level can perform.
- qudat 4y agoYa but there’s little client diversity. I can’t have discord running on a headless dev box and remote in to catch up. This is what irc better for terminal enthusiasts
- p1necone 4y agoThe only reason you need to do that in the first place is that IRC servers don't save chat history/dms when you're offline. You'd gain no benefit from doing that with Discord.
- qudat 4y agoI use all sorts of computers for personal and professional use. I don’t want to install discord on all those clients. The point is more about the possibilities which have been severely muted with chat apps like discord.
- Avamander 4y agoQuassel does bring an experience very close to that though. Still IRC, but a bit more modern and nice.
- charcircuit 4y agoWhy would you want to do that? You can install Discord on your phone if you want to catch up if you are out somewhere doing something.
- bawolff 4y agoFor irc that just seems like a UI difference. Of course you can have announce only channels in irc, people have been doing that forever. The big thing is that discord shows you all related channels on the project. If you are on libera, there isn't the same discoverability. So in a sense announcement only channels are much less useful because users cant find them (not to mention lack of history if you dont have a bouncer).
- progval 4y agoWhen hosting your own IRC server, you can "force-join" users to arbitrary channels to replicate what it's like to join a discord guild. Pine64 does it, for example.
- ilyt 4y agoIt goes much farther than that I think the most interesting use of its API i've seen was using the dumb little reaction "press icon to add to the counter thing" as a way to opt in or confirm stuff. I remember one server where the #welcome channel just have a bunch of "categories" to choose from and depending on which one you clicked you got assigned a role that unlocked a bunch of channels related to the topic. Some also used it to the new user onboarding where you got access once you read the rules and accepted it by clicking the reaction. > So in a sense announcement only channels are much less useful because users cant find them (not to mention lack of history if you dont have a bouncer). That's my issue with projects or corporations using discord for generic chat - it is entirely undiscoverable to outside world, can't just google a question.
- dopa42365 4y agoSee, you can decide to stick with discord, and discord can decide to not stick with you. That's the difference. "Your" discord "server" turns out to be neither of those.
- zaptheimpaler 4y agoagree and the issues with IRC are so much more basic. there isn't even a built in history. i could miss DMs directly addressed to me or an important conversation just by being offline and have no way of even knowing. a technical user could set up a bouncer, but just using discord is much easier. for any of the 95% of general non-technical communities discord hosts, IRC is a complete non-starter.
- palata 4y agoYou seem to complain mostly about the bouncer. There are services that will "just work" for you, like IRCCloud or chat.sr.ht (and certainly others). You just will just have history without knowing about what a bouncer is.
- feanaro 4y agoYou list out a lot of propositions in your comment about what Matrix's role model can or cannot do compared to Discord's, but only some of them are actually true. To attempt to distill the real deficiencies: - Non-monotonic roles. You can't have Deleters (who can only delete things, but not ban) and Banners (who can only ban, but not delete things) in a single channel (room). - Auto-joining rooms upon joining a space. - Room roles/permissions inheriting from space roles/permissions. - A permission to control which members of a space can see a channel. Luckily all of those except the first one seem easily built upon the current protocol by relatively tame extensions. The last two in particular stem from the fact that spaces are too "weak" to support this at the moment: unlike in Discord, a room can be in more than one space at once. This means you can use spaces to define your own private categorizations, which is something Discord doesn't support at all. However, to be able to support those last two use cases, we'd need to define a mechanism by which a room could designate one special space as the owning space for that room. On the other hand, Matrix does have: - Categories. These are simply modeled with spaces within spaces. Spaces can be infinitely nested. - The ability to make roles behave differently on a per-channel and per-space basis. - A role which can only delete things but not ban people, or a role which can ban people but not delete things. You just can't have both at the same time.
- TheBrokenRail 4y agoThis was a much better (and more accurate) description of my complaints about Matrix's permissions system. Thanks!
- _flux 4y ago> However, to be able to support those last two use cases, we'd need to define a mechanism by which a room could designate one special space as the owning space for that room. This actually exists, so a room knows its canonical parent space, but the feature is not used: https://spec.matrix.org/unstable/client-server-api/#mspaceparent-relationships https://spec.matrix.org/unstable/client-server-api/#mspacepa...
- Avamander 4y agoIt's also difficult to have a good working permalink to Matrix chats that don't throw a bunch of errors for people. Nowhere as seamless as Discord's invite links. Ask for mercy if you want to do multiple channels invite-only. Need to upgrade rooms first. Then the space is out of sync for some clients, some permalinks to chats break. Maybe it'll work, just maybe.
- Tmpod 4y agoI agree with the sentiment that Discord is overall much nicer for Discord communities :p No, but really, Matrix isn't quite there yet in terms of those nice and easy community management features, but what you listed isn't quite accurate, as others have pointed out. Either way, besides Matrix, I'm also really interested in the development of Revolt[1], and I suspect you will be too :) [1]: https://revolt.chat https://revolt.chat