IRCv3
ircv3.net
ircv3.net
This is a fair criticism, but IRC is decades old while Matrix is what, 3-5 years old? Give it time and choice of clients and servers will only improve.
IRC is a joke once you’re used to Slack, especially in an organization that uses it well.
Naturally, how each of us feels about that experience is subjective. So setting that aside, the part about IRC that I haven't seen handled with Slack is being a one-stop shop. With IRC, I can discover and access multiple communities within a single server at once. The most popular servers can be connected to and browsed with a click in most IRC applications. With Slack, I need to find a project's Slack workspace, request an invitation, then go through the process of adding it to each of my clients. I'd love to see the equivalent of a FreeNode workspace where I can join an OCaml channel and a Ruby channel without going through all of the above and dealing with walled-off communities.
Revisiting resource consumption, I've opted out of communities that moved to Slack because once I hit around 10 workspaces, the Slack app slowed to a crawl and guzzled RAM. To be fair, that's gotten a lot better in recent years, but I still find managing several workspaces to just be too much cognitive overhead. I may only be in one channel on each workspace, but I can't easily switch between them. With IRC, doing a "/join ##ocaml" is super fast, barely consumes additional resources, and adds a new tab to my main interface for fast switching between channels.
I know about IRC bouncers and all that, but I don't want to set up a server just for that, and managing them is a pain as well. I know about IRCCloud too, but I don't use chat often enough to justify $5/month (I'm poor, and I just want to chat occasionally).
I don't care much for Slack for many reasons, but at least I can actually use it. I find IRC to be functionally unusable because of this.
From a quick glance, it looks IRCv3 solves this with the chathistory extension/specification.[1] But AFAIK most (no?) servers implement this (yet) and the specification isn't finished either.
I'd also add that I've often seen IRCCloud banned from many channels due to extreme amount of spam from their users.
There are Slack gateways that exist for native applications. I currently use a Slack libpurple plugin with Pidgin, and although threading is slightly cumbersome, eliminating Electron and/or a browser has greatly improved my experience overall.
Slack is a product
There is a really big difference
Burn Slack to the ground is my considered stance at this point.
- messages sent to you while logged out are lost
- no support for videos, images and GIFs
- (usually) not great support for emoji
- no support for file attachments
- no useful mobile clients unless with support from the server
Yes, those can be considered frivolous features, but they are used by people to express themselves (which is, in essence, what a chat protocol is used for), they are expected because IRC's competition has them, and some of them are an objective usability improvement that I'm not willing to go back on.
The advantage of doing it this way actually makes it easier to scroll back in the chat history when you're searching for something that was posted.
As others have pointed out, there's also a pretty decent range of very usable "daily driver" clients these days (Element, weechat, FluffyChat, nheko, Quaternion, NeoChat all spring to mind). 2nd generation servers are also progressing well (Dendrite in Go & Conduit in Rust).
That linked message has a lot of good information though.
> this is specific to a homeserver implementation
which suggests that it's not documenting a Matrix protocol. Unless Matrix has no standardized client protocol? Are all clients going to be homeserver-specific?
Even so I'd hope there's some document that says "Matrix standardizes server-server communication, client-server communication is out of the scope of this standard and is left to individual implementations" or something like that.
I'd prefer a light desktop client though. I didn't spend much time with the web version, perhaps this is why I missed it. But I will definitely give it a try!
By the way I understand the focus on consumer usability, as it's needed for wider adoption. I'd really love for matrix to become mainstream.
Also, every time I have to expand the "Show xxx more" ones for each section, I can't just scroll to the bottom of the list. So that's an extra click.
When I mean a high density look I mean without avatars etc :)
I heard that server is very consumerish too.
IRC v3 - https://news.ycombinator.com/item?id=12671063 - Oct 2016 (217 comments)
IRCv3 - https://news.ycombinator.com/item?id=11005999 - Jan 2016 (77 comments)
I think the point is that writing anything for anything is simpler, faster, and has fewer dependencies when parsing is easy.
> Also, Matrix uses an HTTP API and almost every language at least has a binding to libcurl.
Certainly there are advantages of using Matrix and it's HTTP compatibility to implement some solutions. However, I can also imagine some projects are best served with a simple protocol with lean libraries that don't incur unnecessary dependencies on HTTP and the related bloat and complexity.
That's basically everything you need to know for some basic chat.
My opinion is that a strong 'minimum' protocol is critical to interoperability and opportunities for federated protocols to function well across providers. I recall that was the main, non XML, reason that XMPP failed. Of course I also dislike XML as a data storage / transmission format.
And it makes sense, IRC is already out there and has a ton of servers and clients working, you can't split that community based on the client they're using otherwise you're just creating yet another isolated chat protocol like a ton others before it.
I used to really love IRC, and think it could undergo a resurgence given the right upgrades.
https://www.haproxy.com/blog/haproxy/proxy-protocol/
It's messy. The tooling around TLS and reverse proxying for HTTP is much more common and easy.
Alternatively, if your proxy and origin are on the same ethernet broadcast domain, you could just change the destination ethernet address and resend the packet as-is, or stick it in an IPIP tunnel.
No need for that, there's an IRC extension to indicate the source IP to the backend: https://ircv3.net/specs/extensions/webirc
It's supported by all the major IRCd implementations these days.
No one is going to open up non-standard ports especially not for IRC which most people aren't familiar with.
IRCv3 gets a lot more right than wrong.
And these days even most SMBs are taking network security seriously and blocking non HTTP ports.
I see no reason whatsoever to make HTTP a core requirement.
Because there wasn't enough focus on end user experience.
The kind of SNR that causes an attempted takeover? As IRC has depopulated it's been increasingly inhabited by a particular type of person and has a particular culture. That's fine, but ascribing some technical superiority to it because of your cultural preferences doesn't make sense. IRC attracts a certain type of user who persists despite its UX; it's not technologically superior. The rest of us who aren't in that culture go elsewhere, to a network that fulfills our needs. Like Matrix (or even XMPP for some).
If you mean anime subbers, 4channers, and the warez/pirate crowd , they've all moved to Discord or Telegram. The only ones left are the technically inclined folk who adopted the platform at its genesis (i.e. #c, #perl, etc.)
Say what you will about culture but this is a fact and I don't see it changing. Slack and Teams are gimmicks at best. Matrix unusable for me, every single one of my peers and, apparently, the vast majority of said technical communities that keep their center of operations firmly entrenched in IRC.
Copy the diagnostics/securityalert env vars from here, as well as the sed lines:
https://github.com/caprover/one-click-apps/blob/master/publi...
[1] https://github.com/mattermost/mattermost-mobile/issues/5387
[2] https://github.com/matterhorn-chat/matterhorn/issues/711
Never once used IRC. Discord, Slack, Gitter but never IRC.
And love the idea of Slack being a gimmick.
about the only highlight is ease of creating bots for monitoring and automation.
Listen on port 443; problem solved until they switch to server allow lists.
It's even pretty useless on laptops or desktops that aren't always running.
That's not true. I used HoloIRC client on Android with no problem.
> It's even pretty useless on laptops or desktops that aren't always running.
There is no need to. If it's about talks history, chats are not right tool then, forums are more convenient.
Chats are suitable for casual or urgent instant discussions. In all other cases forums are better because user doesn't have to present during discussion, he can return and comment any time he want.
This sounds like a fox and the grapes situation. You can't see history on IRC so rather than noting the deficiency, you list it as a feature.
As a modern IM user, I am part of many low volume groups and the history is essential as there will usually only be 5 or so messages in the day which I would have just missed if I had used IRC. I agree that history on a fast pace 100 member chat is not so useful but not having it isn't a benefit either.
(Disclaimer: I’m a developer of RobustIRC)
I like oragono and also wrote an ircd in go, and was inspired a bit by some of the project's code.