[HN Gopher] IRCv3 2022 Spec round-up
       ___________________________________________________________________
        
       IRCv3 2022 Spec round-up
        
       Author : buovjaga
       Score  : 138 points
       Date   : 2022-11-20 17:09 UTC (5 hours ago)
        
 (HTM) web link (ircv3.net)
 (TXT) w3m dump (ircv3.net)
        
       | TheBrokenRail wrote:
       | 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)! 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.
        
         | qudat wrote:
         | Ya 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 wrote:
           | The 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 wrote:
             | I 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.
        
         | bawolff wrote:
         | For 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 wrote:
           | When 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 wrote:
           | It 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.
        
         | adenozine wrote:
         | Insomuch 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.
        
         | dopa42365 wrote:
         | See, 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.
        
         | stonogo wrote:
         | Discord 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 wrote:
           | Those 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.
        
         | andrewshadura wrote:
         | In fact, the Matrix permission system allows for what you
         | describe. For each room, you can define what actions a certain
         | access level can perform.
        
       | Daunk wrote:
       | Is there a modern client and server that supports all of these
       | recent additions?
        
         | slingamn wrote:
         | Here are my biased recommendations ;-)
         | 
         | a. Ergo [1] as the server for a greenfield setup
         | 
         | b. Gamja [2] and Goguma [3] ) as clients
         | 
         | c. Soju [4] as a bouncer for non-Ergo networks
         | 
         | [1] https://github.com/ergochat/ergo [2]
         | https://sr.ht/~emersion/gamja/ [3]
         | https://sr.ht/~emersion/goguma/ [4]
         | https://sr.ht/~emersion/soju/
        
           | qudat wrote:
           | Also throwing a great terminal client in the mix:
           | https://git.sr.ht/~taiite/senpai
        
         | donio wrote:
         | In Emacs-land rcirc supports a bunch of them:
         | 
         | https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/net/rc...
        
           | lzooz wrote:
           | How's rcirc compared to erc?
        
             | donio wrote:
             | I think it comes down to personal preferences. rcirc is a
             | single file. ERC is more modular, it has the core
             | functionality in one file and a bunch of modules can be
             | pulled in for extra functionality.
             | 
             | I originally went with rcirc because I preferred the way it
             | handles logging: it maintains a separate log buffer and you
             | can format the local logs separate from the display format.
             | ERC logging works by writing out the recent portions the
             | buffer itself. Both are very customizable though, lots of
             | variables and hooks so it should be possible to tweak
             | either one to your taste.
        
               | lzooz wrote:
               | Great, cheers
        
         | pandastronaut wrote:
         | You will find a supported features matrix here for clients :
         | https://ircv3.net/software/clients and here for servers :
         | https://ircv3.net/software/servers
        
           | ilyt wrote:
           | I firmly believe support feature matrix is what ultimately
           | killed XMPP for masses - it always felt like you don't know
           | what you get with given client or server and never quite
           | worked fine.
           | 
           | That and advent of zero-fuss web clients
        
         | mananaysiempre wrote:
         | They do have pages listing client[1] and server[2] support.
         | (Behind the "Support" button in the navigation bar, which is
         | perfectly logical, but I needed a couple of seconds to overcome
         | my conditioning and convince myself this may really be the kind
         | of "support" they are talking about.)
         | 
         | [1] https://ircv3.net/software/clients
         | 
         | [2] https://ircv3.net/software/servers
        
         | doublerabbit wrote:
         | Unfortunately, it's still stuck in the dinosaur era.
        
           | Dah00n wrote:
           | That wasn't necessary.
        
             | doublerabbit wrote:
             | Where's the streaming media?
        
               | jenscow wrote:
               | Not on IRC. Some would call that a feature.
        
               | gsich wrote:
               | Links work.
        
               | doublerabbit wrote:
               | not without ssl
        
               | cassianoleal wrote:
               | What does this even mean? If a link has TLS, it will have
               | TLS. If it doesn't, it won't. Like anything on the web.
        
               | doublerabbit wrote:
               | If I have a website that does not require SSL, I don't
               | need an SSL cert. I don't need a screaming firefox window
               | blaring "ThIs SiTe MaY Be InSecUrE" because IRC back in
               | the days you shared links without https. Why does a .jpg
               | need SSL?
               | 
               | IRC is a dead feature. Until someone creates a drag-
               | dropable image uploader to the client, IRC is dead. You
               | can add as many features as you wish to the server, but
               | without a client, there is no connection to hyperspace.
        
               | [deleted]
        
               | gsich wrote:
               | There is no such screaming window. Please test.
        
               | kelnos wrote:
               | > _IRC is a dead feature._
               | 
               | I think all the people who use IRC daily would disagree
               | with you on that.
               | 
               | I do agree that IRC is stuck in the dark ages when it
               | comes to feature support, and even just features in the
               | spec. I dislike Slack, but whenever I use Slack for a
               | while, and then switch to IRC for something else, I miss
               | seemingly-simple things like being able to easily share
               | images, react to messages with emoji, start subthreads in
               | messages (a feature of Slack's I initially hated, but
               | eventually came to appreciate).
               | 
               | I get that it's difficult to add these sorts of things to
               | IRC in a reasonable way, especially when we're talking
               | about degrading gracefully for clients that don't support
               | newer features. But IRC is pretty much the definition of
               | an open, federated protocol failing to avoid
               | ossification.
        
               | doublerabbit wrote:
               | > I think all the people who use IRC daily would disagree
               | with you on that.
               | 
               | What people? I've used IRC for the past 15 years. It is
               | dead. I was the generation to make it alive. You have
               | stale, and chaos. It's old, musky and old.
               | 
               | I have no issue with IRC its a robust, reliable protocol.
               | But it's just stale. Its old. "We will invent this" where
               | is it?
               | 
               | Who recently has made an attempt at a half-good browser?
        
               | progval wrote:
               | > easily share images, react to messages with emoji,
               | start subthreads in messages
               | 
               | You can do all this on IRCCloud (which is currently the
               | only IRC client to support them, sadly). However, like
               | you mentioned, other clients won't see reactions or
               | threading.
        
               | cassianoleal wrote:
               | > I don't need a screaming firefox window blaring "ThIs
               | SiTe MaY Be InSecUrE"
               | 
               | So your problem is with your own choice of browser? This
               | is not related to IRC or web links.
               | 
               | > Until someone creates a drag-dropable image uploader to
               | the client
               | 
               | Create one yourself, then? IDK, I don't feel the need for
               | it. I use IRC with a web client and it satisfies my
               | needs.
               | 
               | > IRC is dead.
               | 
               | It's definitely not dead. I use it daily, as do lots of
               | other people. Just because it doesn't have certain
               | features that you want, it doesn't mean it's dead. It
               | just means it's not for you.
               | 
               | > there is no connection to hyperspace.
               | 
               | I think you're mistaking Star Wars for the Internet.
        
               | doublerabbit wrote:
               | > I think you're mistaking Star Wars for the Internet.
               | 
               | Never seen the movie. Take a joke.
               | 
               | > IRC is dead.
               | 
               | What Network #Channel have you been in that has active
               | conversation? Please let me know the last 95% of channels
               | are unattractive.
               | 
               | > Just because it doesn't have certain features that you
               | want, it doesn't mean it's dead. It just means it's not
               | for you.
               | 
               | You just don't get it.
               | 
               | > So your problem is with your own choice of browser?
               | This is not related to IRC or web links.
               | 
               | No. My problem is how corporate entities are shoving web
               | standards in to our faces and your too blind to care.
        
               | cassianoleal wrote:
               | > What Network #Channel have you been in that has active
               | conversation?
               | 
               | Just a few examples. On Libera.chat:
               | 
               | #proxmox, #btrfs, #docker, #go-nuts, #homeassistant,
               | #linux, #networking, #openwrt, others
               | 
               | On OFTC:
               | 
               | #asahi and its ancillary -dev and -gpu, #openwrt,
               | #turris, ...
               | 
               | I also have friends who I talk to in servers and channels
               | outside of these.
               | 
               | > You just don't get it.
               | 
               | I don't get what? Your arguments are all over the place,
               | it's kinda funny really...
               | 
               | > My problem is how corporate entities are shoving web
               | standards in to our faces and your too blind to care.
               | 
               | You were complaining about Firefox's dislike of websites
               | without TLS. This has nothing to do with IRC, which is
               | what this whole discussion is about.
        
               | kuroguro wrote:
               | HN is also text only and it's the way I like it.
        
         | theandrewbailey wrote:
         | I played around with Ergo and Kiwi IRC some months ago.
         | 
         | https://github.com/ergochat/ergo
         | 
         | https://github.com/kiwiirc/kiwiirc
        
         | Avamander wrote:
         | I don't think any client supports them all, but mIRC and
         | Quassel make the best use of them so far in my opinion.
        
           | [deleted]
        
       | jacooper wrote:
       | Too late. Matrix ate IRC's lunch, its the future of federated
       | chats.
        
       | bgitarts wrote:
       | Unfortunately IRC has failed to keep up with the U/X of
       | centralized chat services like discord which is a shame because
       | an open protocol chat seems needed for the internet.
       | 
       | Why does open protocol usually mean crippled U/X?
        
         | chungy wrote:
         | I would say the opposite rather, the UX of IRC clients (eg,
         | HexChat) is so polished and refined, it puts all the
         | proprietary chat services (and their clients) to shame.
        
         | eurasiantiger wrote:
         | Which alternatives have you tried?
        
         | ilyt wrote:
         | > Why does open protocol usually mean crippled U/X?
         | 
         | Open is entirely unrelated to that, but optional features means
         | crippled UI/UX in the long run. Some server won't support it so
         | users can't use it, or some client won't support it so they
         | will see garbage/nothing when others use that feature.
         | 
         | XMMP showed that well enough and it seems IRCv3 follows suit.
        
           | [deleted]
        
         | 323 wrote:
         | Because extremely few programmers which are attracted by
         | creating protocols have U/X design skills.
         | 
         | In fact, they will probably say something like "just use the
         | CLI, it's a superior way anyway".
        
         | unknownaccount wrote:
         | There should be a way to decouple the UX from the program and
         | if people want a Discord "skin" for IRC that looks nearly 1:1
         | they should be able to have that.
        
           | kelnos wrote:
           | I don't think that would help. The IRC protocol is missing so
           | many messaging features that platforms like Discord have.
           | Just looking like Discord wouldn't fix that.
        
         | arka2147483647 wrote:
         | Who pays for the UI to be developed?
         | 
         | If open source/community, then chronically starved for
         | resources and contributors have divided directions.
         | 
         | If commercial, then they want to differentiate and do embrace,
         | extend, extinguish, in order to drive everybody to their
         | client.
         | 
         | I have come to believe, that the protocol spec and servers, is
         | just the easy part of chat apps.
        
           | BonitaPersona wrote:
           | In an ideal (and therefore unrealistic) world, it would be
           | done by the UX designer/dev equivalent counterparts of the
           | ones developing these open source softwares.
           | 
           | Why do low level engineers work freely on FOSS but designers
           | or UX devs don't is the question.
        
       ___________________________________________________________________
       (page generated 2022-11-20 23:00 UTC)