There is no mechanism to ignore a user, mute a user, or temporarily suspend a user if they need a timeout. The first two are completely impossible, while the latter today is manual / mostly possible using undocumented APIs and mechanizing of HTTP requests. Users reporting spam is done by them sending a message to an admin, or in the admin channel, and requires someone to manually intervene and moderate the message. So we effectively need to aim for follow-the-sun moderator coverage, which is a bit painful.
In terms of usability and accessibility, some of the things Slack does (e.g., threads) are not super-inclusive or accessible to users who use screen readers. Today, based on feedback I've gotten, IRC is still superior for users who rely on screen readers due to some form of visual impairment.
Whichever product they go with, it'd be nice if they provided an authenticated IRC gateway which would allow this class of user to have a better experience using the platform as they could use one of the text-based IRC clients that has served them well.
For everyone who is saying they hope Slack isn't the choice, I'm fairly confident with these issues today they won't pursue Slack. If anyone from Mozilla, or any other org, would like to discuss some of the challenges we've had using Slack as an open community I'm more than happy to schedule time. I'd like to help you provide the best experience and community for your users.
However, OS and non-profit communities quickly run into the history issue. There is no way that some of the communities I'm part of on Slack could pay for all the users. For example, the "Maker's Kitchen" slack has 1500-2000 people.
How much information and knowledge is lost and questions re-asked?
But in my experience, many don't use the search anyhow. :P
I'll admit, I don't know the full details of the relationship we have with Slack as I'm just an admin and not an owner. It is paid for by someone, but I don't know how much we're paying per head or of it's a flat rate.
This is common, and Slack is treated more like a hallway conversation. Hallway conversations are enormously valuable, but if you want a record of something or if you want to make sure it reaches everyone, you use email instead.
I even went a step further and built a product that would generate FAQs from slack history and made it easy for people to add and categorize knowledge from Slack to provide answers to questions, metric, etc...
I would love to have open source communities use it for free if helped them manage supporting their communities easier.
It's https://landria.io. Would love to know if it would be useful for you.
Bulk-Deletion / banning:
They've been really helpful, but Slack still seems _far_ from ideal for this.
Otherwise APIs used are documented:
To be clear: NOT recommending Slack. Just mentioning that we also have issues and some tooling has helped, the tools could use more docs but they're pretty simple and open source FWIW.
This is the main reason we aren't considering leaving Slack.
But I agree with the sentiment that it's not a good fit for open source projects. For that, an open source Slack-like tool like Mattermost or similar would be a better idea.
It would be really strange to me if they used a closed source community messaging platform.
It seems better than Skype and Hipchat and whatever Google's latest chat app.
I mean you're not wrong, but you're not setting the bar particularly high :).
I totally get that at an office workspace, the solution here is HR. But this is a loosely federated place, and even in my own opinion the conduct doesn’t merit such a response. I just want to be able to mute people.
A mute or ignore feature would have been great to lower the victim's anxiety level during that time due to HR's unhelpful handling of the situation. The victim's finances and general life circumstances did not make "just quit" a good resolution.
(Oh, and the end result: HR fired the victim, with some severance paid, and kept the abuser a while longer. The abuser eventually got fired but probably not due to this incident.)
Sure, it's "chat for gamers", but it works for anything.
Granted, it has to handle gamer communities.
We don't have these sorts of controls in Slack because it's built to support companies with Human Resource departments. Communities like ours don't give the Slack shareholders value.
So in some ways it's worse than IRC.
Why not ban them completely and have a private appeal process? How often are people a nuisance in one channel yet valuable in another?
That user is then still on the server, they can make their own channels or message admins directly. There might be an #ops channel where they can go and plead their case. If they annoy the admins or someone else that reports them to the admins, then they might get a server-wide ban.
A lot of this comes behavior from public irc servers. Channel operators can manage their channel however they desire, and if the users don't like it, they can start their own channel. But for an organization ran IRC server, a server wide ban is more possible. But in the case of say, Mozilla, there are all sorts of different groups running their own channel. So a group working on a mozilla labs project might just start a channel for that project, but not actually have server-ban privileges. So they can moderate their channel and perhaps request a server ban on someone, but that server ban might take hours to approve, or the bad actor might just go away.
The distributed moderation works well with large networks, because the people doing the moderation are in the channel reading it and keeping up with the conversation.
However, because the bar for becoming a channel operator is low, it's not a good idea to give full ban access to them.
We have seen this before and we will see it again. If OSS wants to be widely used, it needs to take UI seriously, and not dismiss it as frivolous “eye-candy”.
It’s ok so say ‘no, we are fine within our niche’. But then you don’t get to arrogantly explain to them how they are “taking one step forward, two back” by not embarking on the joyful journey of fiddling with config files.
Freenode has about 85,000 people logged in right now and there's over 50,000 channels.
I'm in a bunch of tech related channels and there's hundreds (or 1,000+) people in most of them. It's still active and has been for 15+ years. Freenode is just 1 IRC network of many too but it's where a lot of tech channels are set up.
IRC is awesome. You can use it from a terminal (or get a GUI client that uses < 20MB of RAM), it opens instantly, you can connect to a bunch of channels and networks automatically (with password protection on your nick), typing feels instant and you get infinite log history. Doesn't get much better in my opinion.
Don't get me wrong, I love IRC. I have been using it for over 20 years (wow, I'm old). I have met there very important people in my life. But I coordinate a team at work, we use Slack and I wouldn't even consider using IRC instead.
I find Slack to be even worse in that regard because they'll purge your history after 10,000 lines unless you pay, but the payment scheme doesn't make sense for a lot of communities. Like, whose going to pay $15/month per USER if you have 300 people in your channel? That would be $4,500 / month to get unlimited history right? I never signed up because I don't want to pay a mortgage to get chat history.
I dunno. I just don't see the appeal of Slack for both communities and small teams.
I'm not fan of Slack for large communities but, seriously, let's stick to facts when discussing the pros and cons.
I'm a part of Slack for some large communities (not by choice but because it's where the organization wants to be), and every few months all of my private message history disappears and it tells me something about upgrading. It's not searchable, but it's also not in the back log either. It's 100% removed from the UI.
To me, that's not a good user experience, where you wake up one day and all of your important chat history is unavailable. It's even worse that it's still available but behind a paywall. So they hold your data hostage unless you pay that 1 month of fees. It's not about not being able to afford it. If you have a large community with 8,000 people, are you really going to spend $53,000+ to get your private messages which you only have access to for 1 month? Not even big companies with 100 million of funding have the paid plan. It might as well be purged even though technically it's not.
I used it daily for decades, but let's not forget netsplits, nick collisions, zero log history (without a bouncer, and then you need a place to run a bouncer!), no file-sharing in a NAT world (dcc stopped working a loooong time ago), and no integration with any other apps, and on and on.
Don't get me wrong, I wish there was an open-source project that built a big group chat system that worked as well as slack and discord do, but it's a joke to say that irc is better than slack.
File transfers are definitely an issue over IRC but https://send.firefox.com/ solves that problem very well. For sharing code, there's gists (which I often send directly through my code editor which makes it seamless).
I'm curious if someone has figured this out in the interm.
(My current hope lies in Mattermost, honestly.)
In other words, yes, in any reasonable environment you would have access to everything ever said in any logged channel.
It really sounds more like you used IRC daily decades ago.
IRC may have its shortcomings, but its worst defect, for the too many people that want to have fun while pretending to communicate, is that it is not "modern".
You also need a "de facto official" client that includes a small list of default servers, and big friendly buttons for /JOIN and /PART - in fact the user should not be required to type a /COMMAND at any point.
Some IRC users don’t like the idea of the channel being logged though? That’s the best I can come up with for an argument against it.
It does surprise me that some people are supporters of open source, but aren't supporters of open and transparent communication. Seems like a miss.
A command for receiving the log may be helpful to have though as an optional extension.
This is how literally all my peers think.
It's exactly this kind of flippant dismissal that is why IRC is dying, because there are too many people who equate modernity with frivolity. That is, unless our requirements strictly adhere to your arbitrarily-defined notions of that which has merit, our voices are left unheard.
And IRC's greatest defenders wonder why everybody jumps ship.
Whereas, for the rest of us, we just want the same features I've been using on other platforms not just since the rise of Slack, Discord and its ilk, but other platforms besides, both before and after the rise of Web 2.0 and social media.
I find it pretentious that anybody could consider the following features "having fun while pretending to communicate", showing their profound lack of understanding for what communication can, perhaps should, be:
- the ability to modify one's own messages
- the ability to delete one's own message, and have that deletion propagated
- the ability to delete other peoples' messages, and have that deletion propagated
- simple but flexible role-based permissions systems that can be defined on a per-community basis
- collections of text channels in one community/guild/server that can be ordered, and that ordering propagated and standardised for all participants in that community (for the sake of consistency)
- usernames and nicknames that don't collide, using a normally-hidden primary key for each user that is associated with an account rather than ever-changing hostmasks that can be hidden, making bans and ignores ineffectual
- automatically-created community-based moderation logs
- the ability to create private group discussions without needing to create a text channel
- the ability for all participants in the community to see messages in the same format, including code blocks with syntax highlighting, images, video links, and web embeds
- a contacts list that travels across sessions, regardless of client, sign-in location, etc., and associated direct message history
- the ability to read missed messages while offline without needing to set up a bouncer (either necessitating a home computer be left on all the time AND be accessible via the web, not always practical; or every individual user paying for a bouncer, something that should be considered vastly unnecessary)
- everything just working
Instead of thinking "everybody just wants to send silly emojis and video chat, what a waste of time", the IRC crowd would do well to listen to what people actually want, need, and have come to expect from online communication, rather than derisively and condescendingly covering their eyes and putting their fingers in their ears.
>- the ability to delete one's own message, and have that deletion propagated
> - the ability to delete other peoples' messages, and have that deletion propagated
These 1) don’t work when you need them too and 2) are very much antifeatures
I’ve been in slack and discourd channels with important people who will post things that cause me to make some decision and then will go back and delete or edit their message. It’s gotten to the point where whenever these people post to slack I always take a screenshot. On discourd you can just use finch and all the edits show up as new messages.
I really liked how on IRC you just sent messages and that was the end of it.
>- everything just working
Hah, that would describe IRC better than discourd IMO. Slack “works” but good god is it slow.
They don't? They work perfectly fine for me and always have. Citation needed.
> 2) are very much antifeatures
According to whom?
People use and profit from these features all day, every day on Slack and Discord. Whether you put any stock into them doesn't make any difference: they are features for a vast number of people other than yourself, they are definitely features.
> I really liked how on IRC you just sent messages and that was the end of it
I did, until I realised I and other people didn't have to spam the text channel with minor corrections to spelling, grammar, and markdown formatting with further messages containing the edits — and those messages may themselves contain errors, necessitating further ex post facto editing with more new lines.
> that would describe IRC better than discourd IMO
The day I can log into any IRC client, web or otherwise, without having had to set up my own bouncer and leave it running at home exposed to the internet or pay for a server, and it negotiates my IRC capabilities, joins all my channels, re-opens my private messages, shows me my chat history, and gives me a scrollback of the messages I've missed since my last session, I might be inclined to agree.
Not to mention what happens if I typically connect to multiple servers.
Until I am no longer forced to use such ugly workarounds to what should be simple session management that practically every other chat service has figured out, even before Discord and Slack, I don't consider IRC to 'just work' except in the sense that, yes, a non-negligible number of people have managed to get their fragile IRC configurations working just-so, likely on only one machine — good for them, but I have higher standards.
You have totally missed the point of what I said. I know some people want them and it's nice to be able to correct your "there" to "their." That's fantastic, good for them.
My complaint is that these features are abused by nasty people who you end up having to work with. By not having them they can't be abused. When I can't trust software running on my own machines to accurately tell me what someone said yesterday that's unacceptable. I'd rather the thing not work at all than give me bad data.
And I don't think there's any bigger work around than having to screenshot an app every time certain people send you a message.
I mean, not being able to edit or remove messages, by one's own and those of others in the case of a moderator, can be just as susceptible to abuse.
Abusive messages not being able to be removed, potentially and needlessly staying in front of hundreds or thousands of users' eyes is one issue I can come up with off the top of my head. Especially true for IRC clients that provide image previews for posted spam links if those links contain disturbing content (and no, it's not a reasonable response to expect people to turn those off; people can enjoy media the way they want, not just the way you deem fit).
> When I can't trust software running on my own machines to accurately tell me what someone said yesterday that's unacceptable
Just as well Discord, Slack, and others put a little "(edited)" annotation next to edited messages. Plus, one can only edit one's own messages; moderators cannot edit other peoples' messages as they can on forums.
> I don't think there's any bigger work around than having to screenshot an app every time certain people send you a message
Bots can log messages, including message editing and deletion events. If your preferred Discord/Slack server provides a public log, that sorts that out; if it's your own Discord/Slack server, you can provide your own bot. These can be as simple as 20 lines of Python, maybe less. I'm sure services like Mattermost, which seems to be the top open Slack clone, would facilitate these features more easily.
I would imagine Mozilla would keep logs. Further, Discord also automatically provides a moderation log to keep a history of all those events.
It really sounds like you're inventing to do with software with which you've little experience.
Unless the official client doesn't support it of course. (showing edits as new messages is a great example of this.)
And I'm not saying they shouldn't be allowed to enjoy that, but everything has trade offs and automatically opening links from strangers certainly has a lot of those.
>Just as well Discord, Slack, and others put a little "(edited)" annotation next to edited messages. Plus, one can only edit one's own messages; moderators cannot edit other peoples' messages as they can on forums.
I'm well aware of that, it still doesn't help me when I need to see the original version of the message.
> Bots can log messages,
Having to run personal bots is one of the arguments you've made against IRC. Furthermore, it's often not allowed.
> If your preferred Discord/Slack server
If I could pick the server most of my problems would go away.
>It really sounds like you're inventing to do with software with which you've little experience.
I have less experience with it than IRC, when I used to use IRC it was voluntary because it was actually pleasant. I never use slack, discord, or lync/skype voluntarily, but I've been forced to use all three by various organizations.
You could equally have public logs in Discord and/or Slack. At least on Discord, this can be achieved through a bot — which, if logging is the aim, could be a very simple 20-line Python script.
That means you are asking for control over other people's computers and what information they are allowed to display, i.e. DRM. It is also a falsification of history.
> - the ability for all participants in the community to see messages in the same format, including code blocks with syntax highlighting, images, video links, and web embeds
That excludes people with text interfaces.
I've just used such a feature less than 2 hours ago, in Whatsapp. Published a secret in the wrong group, by mistake. That's the whole point of allowing editions or deletions of one's own contents: humans are fallible, and shit happens.
By this time, it's too late, anybody could have seen it, copied it, etc.
Deleting it after the fact is security theater.
Case in point, I just edited this message to change all "_" to "*" to make italics work. That's another use: fixing wrong assumptions about usage of technology itself.
No, my position is that if 5% of a problem (5 out of 100 people seeing it) is equally catastrophic as 100%, then it makes no sense to differentiate, which is a very true dichotomy.
The fact that just 1 person that's not supposed to see it seeing it can do damage, makes the problem a binary and not a spectrum.
Which one occurs more often than the other, that's another question, but I'd argue that the later is more common, and there is no doubt that people knew, in the event they wrote a very catastrophic secret, the limitations of the edition/deletion of messages (as long as most people nowadays seem to know about screenshots being a thing)
There's a difference between offering corrections and retractions that others may or may not accept and actually enforcing deletions. This is both socially and information-theoretically true.
Obviously on Discord, one is tied to the official client's behaviour since the ToS discourages third party clients. However, for Slack, Mattermost, Matrix etc. clients, the possibilities widen up.
(Same for tweets etc.)
This is a false sense of security.
How is it an infringement? The server saying 'so-and-so sent a message, here it is' is exactly no different to the server saying 'so-and-so deleted their message, get rid of it'.
You can always take logs
> On the other hand, the contents of a phpBB forum (or even HN) are stored on someone else's computer and nobody has the ability to arbitrarily delete stuff that I've downloaded
Yet, when you consult that forum, you're in the exact same position as you would be with Discord after someone has deleted a message — you cannot consult that content anymore unless you've explicitly backed it up (in the case of Discord, made your own log; in the case of a forum, downloaded or archived the relevant site elements).
straw-man argument. Nobody considers these things to be frivolous. I would consider slack's annoying gifs and discord's extensive emoji to be frivolous.
> the ability to modify one's own messages
Please, no. People editing their own messages later on is possibly the most annoying thing about slack and discord. Say something and move on, or append a message if you made a mistake.
> the ability for all participants in the community to see messages in the same format, including code blocks with syntax highlighting, images, video links, and web embeds
no thanks. what if I want to disable images, video links, and especially web embeds?
all -I- want from a client is a superset of markdown, like gfm, and code highlighting for most languages. and the ability to add syntax highlighting for other languages really easily.
all that IRC really needs is a few quality of life fixes like the history you mentioned. "collections of text channels" already exist... that's how IRC works. there's no reason for every single community to repeat similar sub channels.
> everything just working
I don't think I've ever had an issue with a web client not working.
Not at all a strawman argument. As I stated, there are a plethora of features in Slack, Discord, and its ilk that are most assuredly not "having fun while pretending to communicate". The whole point of my post is that one cannot so off-handedly dismiss an entire class of application.
If GP meant to be dismissive of GIFs and emoji, they can easily have said so. (That said, one can post standard Unicode emoji to IRC, and will anybody call that frivolous?)
> People editing their own messages later on is possibly the most annoying thing about slack and discord
I'm willing to imagine that some rather high percentage, perhaps in the 80s or 90s, is just people fixing spelling, incorrectly-entered Markdown formatting, or other kinds of minor reformatting.
I'll take this over people spamming the text channel with further edits (that may still contain other faults, necessitating more edits in further lines to come).
> what if I want to disable images, video links, and especially web embeds?
You can in Discord.
> "collections of text channels" already exist
No, they don't. Channels have no groupings with others within one IRC server. You can't guarantee that a given set of channels on a similar topic have the same owner, same rules, etc. Joining a channel also doesn't automatically join you to another set of channels within that channel's group.
The flexibility of channel groups is not replicated in IRC.
> I don't think I've ever had an issue with a web client not working
So you can use any web client and, with only entering your username and nickserv password, any web client (A) knows what channels to connect you to, (B) what to set as your nickname, (C) how to handle a nickname collision, (D) set up your IRC capabilities all without any further configuration on your part?
'cos that's what people expect, that's what "just working" means. No config every time I encounter a new machine, no having to run a bouncer or screen session on some server in some godforsaken data centre and thus limit myself to terminal-based clients just to keep my connection details consistent across sessions, etc.
OP confirms. But that's the tip of the iceberg. Yes, you can use Unicode in IRC, and yes, people will kick you out if you "misuse" it - but perhaps I've been on weird channels.
> incorrectly-entered Markdown formatting, or other kinds of minor reformatting.
I don't know what you are talking about. Markdown in IRC? IRC was (one of) the electronic ersatz for verbal dialogue before VoIP. Chat messages shouldn't be longer than a tweet.
If you need formatting then you're writing a document, not chatting. There we agree you need another service for that. Something like Pastebin would probably be more suited.
However if you are writing something that people should remember or use as a reference, I'd suggest to use a CMS rather than a chat or IM or even email, because sooner or later you'll be sorry otherwise. Especially if your chat platform of choice keeps everything on servers that are not under your control and doesn't offer full client-side backup. Good communication starts with choosing the appropriate tool.
Forums are a totally different medium and I'm not interested in them at all these days. In the Korean discord I'm in, I can ask a question and get a response very promptly because it's just a chat. Sometimes this leads to questions being repeated, but I'll take that over a traditional forum any day.
Slack gifs ARE annoying, I don't see how they're not. Discord emoji is fine. Anyway, my point was that the comment I replied to constructed a strawman. When IRC people criticize slack or discord (or call them "frivolous"), it's not because of quality of life improvements like chat history, ease of use, etc.
No, Markdown in Slack, Discord, etc.
> Chat messages shouldn't be longer than a tweet
Says who? You?
You're not the arbiter of how people should choose to communicate. Aside from that, there are good situations on Discord and Slack where messages tend to be longer, such as announcements, lists of rules, when posting code blocks, giving detailed explanations, etc.
> If you need formatting then you're writing a document, not chatting
Again, says who? People have had formatting in instant chat for years, in AIM, ICQ, Yahoo, MSN, etc. People can use formatting to provide emphasis, to separate code blocks, etc.
Even IRC supports basic bold text blocks.
> There we agree you need another service for that
No, we don't agree. Why should you need an external service for that? Why send people out of the discussion to an external website, a needless interruption of the flow?
There may be times when that's appropriate, but a chat service, something that's inherently about conversations and keeping things in context, no longer needs to mandate this. There are no technical restrictions to this as there were in the 80s and 90s. If people want to share a snippet in the conversation, they should, and now can, do so.
Same goes for images, videos, etc.
> Good communication starts with choosing the appropriate tool
People have found the appropriate tool, have flocked to it in droves, and are quite satisfied.
It's only old-fashioned IRC-clinging fuddy-duds who think there's still any question about this. Everybody else is getting on quite productively and happily.
Tell me exactly how use slack, directly (without bridges and stuff) without using the official client.
I know there are a few out there, but can't personally recommend one.
This is the false dichotomy.
Being able to apply slight styling to text is better than wrapping words in asterisks or underlines. Adding reactions and emojis is better than using punctuation to simulate it.
It's really common to confuse "what I'm used to" with "what's better" and I think that's especially happening here.
edit: sounded a bit impolite. I was trying to point out, that just covering all needed functionalities doesnt mean anyone will use your product. Frivolous eye candy, ie the appearance is a key aspect for quite a few people. The issue is not that its dismissed as eye candy, but that being eye candy is an important point to look out for.
People like to frame it as "if they can't even figure out IRC", but that's a straw man. Nearly everyone can "figure out IRC", the question is if they want to bother with it when there's alternative things they could do.
(and I say that as someone who by far prefers IRC over every other group chat system)
More than this, if mass-market OSS wants to be widely used, it needs a mass marketing budget. Not many deep-pocketed stakeholders in a community united around non-profit work.
TL;DR: being able to have posts & chats indexed by search engines and allowing users to read posts without signing in is a killer feature for open-source communities. Plus the product itself is open-source.
Discord is the one thing I dislike more than Slack, even if their backend tech is fucking stellar.
Overall I hate using Discord and wish it was more like Slack in some ways. Better yet, take me back to the days of TeamSpeak when my Voice Chats had a Text Chat implicitly alongside it.
Chat is an inherently transient medium. Being a participant in the conversation can be important and you can’t really reference a conversation you had on May 6th 2007 and expect to have people willing to continue it with you. On the other hand, you can resurrect an email or forum thread if you weren’t there in the first place and expect that it will continue to be replied to.
I've been using IRC for almost two decades now and I can't help but feel this is a good thing. A lot of big IRC channels have become very good at alienating members of their communities through excessive moderation - if you don't believe me spend some time on Freenode on any given day. Having to go through a few additional steps seems like it could benefit many communities.
Certainly I'd say discord is a poor fit for an organization allegedly dedicated to web freedoms, such as mozilla.
I'd suggest rocketchat or mattermost, personally. Well, to be honest I'd suggest IRC, but if that must be abandoned, rocketchat is pretty good.
That said, watching them migrate voice servers seamlessly between regions is fucking impressive, though. Kudos to them on that.
The GFW is also a concern here.
I sincerely hope it’s not Slack and some restricted search archive platform. Moving away from IRC to a newer system could provide long lived archives to users. But if privacy is very important, then a “no archive” option would be fine (similar to IRC). Anything in between, like “search the last 10000 messages”, would be a disaster for active channels with many members.
> It needs to be accessible to the greater Mozilla community.
We are evaluating products, not protocols.
I’m sure whichever the chosen product is, it’s going to be based on HTTP to allow “schools, colleges or corporate networks” to be able to connect. It seems weird that we’re dumping everything on to HTTPS, and one day in the future there would be a world where only port 443 would be open and all the mess, and the holiness, would flow through it, and it alone. In the name of securing networks, we seem to have gone to an illusion of security by moving to one port for almost all communications.
> We aren’t picking an outlier; whatever stack we choose needs to be a modern, proven service that seems to have a solid provenance and a good life ahead of it. We’re not moving from one idiosyncratic outlier stack to another idiosyncratic outlier stack.
I still hope it doesn’t come down to Slack or Hipchat or some commercial offering. Maybe host a Matrix instance? Or Mattermost? Or Rocket.chat?
TLS would have made sense as well but if you're already at that point you might as well bump up yet another abstraction layer because the programming ecosystem is bigger and it frees you from being tied to one security abstraction forever e.g. now you can use QUIC.
The fact that port 80 and 443 are less likely to be blocked is a distant, secondary factor. Frankly, I've never been on a network that blocked other outbound ports. And I've definitely never seen a network where hosted services could only ever receive traffic on port 80 or 443. Rather, I think it's more (if not entirely) a matter of people justifying the use of web stacks to implement services which cry out for simpler solutions.
That's just down to who you've worked for. I've worked for two companies, both well-known brands, both operating in the consumer space (nothing secret/shady), where most outbound ports were blocked.
In one case it certainly was possible to get them unblocked for access to specific hosts or endpoints but you'd have to go through an approval process that took about a week. I never had a request refused but it certainly could slow progress, although I got into the habit of trying to get all of us to anticipate what we might need and front-load such requests.
I have several (all government) clients who cannot access port 8080 from their office network. We now have a bunch of aELB rules that forward a specific path prefix to port 8080 internally. I have not yet been accused of intentionally circumventing their firewall. But I live in hope...
Mattermost costs $60/yr in hosting and only a few hours a month in admin work - same as our email group and our old Slack (or whichever solution)
The heyday has past. People moved on, had families and other responsibilities, with no time to sit idly chatting anymore. The newer generations are on various messenger apps, Slack, or Discord.
Though The Lounge looks pretty nice.
Funny, it's been my experience that IRC culture was always like this, especially in the late 90s when I started using it.
It's just never been that discoverable as a standalone medium, like connecting to a server and then finding a good channel. That just doesn't happen.
It depends a lot on the community. I started using IRC in ~2010 as a teenager and I don't remember ever seeing someone being told to RTFM (except ironically).
> play topic nazi to such an extreme level that apparently nothing is actually on topic,
I've seen some topic nazis, but in most channels, discussions can go very far away from the topic.
> or just generally berate people for having the gall to say something in the channel.
> Ops are extremely touchy and seem willing to immediately kick people rather than
On most channels I'm in (mostly tech channels, freenode/oftc/mozilla), I don't even know who the ops are.
Like you, I've been on IRC since the 90s. I find that support channels are great if your question to the group shows that you've actually exhausted your options and need help beyond what you can think to search. Often the documentation is perfect, and if there is something someone doesn't understand, asking specifically about that typically yields a positive response (at least in my experience.)
One issue I've always had with IRC is the Founder choosing bad ops for their channel -- often based more on time-spent in the channel than actual ability to resolve issues with troublesome users.
I've always op'd a few channels and have chosen some of these people -- the type that view the cinnamon bun / status as something special or powerful, rather than the janitorial job that it is. This really sets the tone for the channel and can destroy it in the long run. Bulk the on-topic nazis in here. It's toxic behavior and should be addressed by the ops.
Anyway, long story short -- IRC isn't like it was in the 90s-00s, but its still going strong. The support channels are not a good litmus test for IRC as a whole.
This is the same state of many subreddits on Reddit. Moderation should be limited to spam and blatant attacks on users. Let the voting system handle all the rest.
Despite scrapping the office "defaults" list, there is still clearly a rotation that get set up as default and they are by and large garbage.
I mod a good-sized sub all by myself, and I'm fairly militant about what gets through. The guidelines are clear and automod picks up a lot of the 'defaults' stuff -- but every so often something slips through and it gets so much karma.
A while ago I figured I'd just allow memes and stuff, assuming that this was what the community wanted, since these occasional posts were doing so well. I got mod mail asking if I was sick, noticed a bunch of comments saying 'this sub has gone to shit!' etc etc.
... so I went back to my militant ways, but about once every few weeks I let a meme or repost slip through if its decent quality.
Memes and all that have their place, but subs need to be heavily curated by the mods, or, like you said, they all become the same.
The occasional memey or off-topic post is a lot of fun and key to having a community with its own culture instead of an interest group with the personality of a dictionary entry. The problem is that people see that was fun and naturally try to do more of it, but it's only fun in the first place because of the contrast, and the off-topic stuff is usually easier to produce so it can easily drown out the on-topic posts, killing the forum.
The "delete most memes" policy is weird, but works well where I've seen it.
Does that bother you? Why? If "so many" people like something, why should you or any handful of mods prevent them from seeing it?
What keeps you from deleting stuff that only you don't like, regardless of whether or not it "belongs" on the sub?
Do we just want an echo chamber?
IRC isn't persistent (i.e. you can't read messages delivered while you were offline) unless you setup an IRC shell. This is technically difficult (much more so than dicking with nickservs and so, which is already a pain point). Hosting it is also not free. Count 5$/month on CloudOcean or some such.
https://www.irccloud.com/ is a great service that alleviates the pain, but now you're paying 5$/month and you just have IRC — you can't run other services on your server.
If you value 5$ or your time more than the idea of "fighting for freedom by using IRC", you just don't use IRC unless you're forced to. This is not unreasonable, so many people do that, and consequently, communities miss out on these people.
You want to save IRC? Make a free (as in free beer) clone of IRCCloud. Easy.
But seriously, I don’t understand why persistence is such a huge deal to people. Chat is for transient chat - it is meant to be non-persistent just like verbal communication.
There are so many mechanisms for persistent messaging (forums, text messages, emaills, and everything in between), I don’t understand how an entire industry spawned from a concept we already had?
The chat services enable responses, by making it low friction, by giving the feel of being informal and real-time in a way that email and forums don't. They also enable asynchronous responses by being persistent, that your message won't go lost and unseen by a moment without network connectivity, unlike IRC. They also enable responses by being cross-platform and device-independent, unlike SMS. They also enable responses by centralizing account control of who participates, so users can join a ready-made group organized by an administrator, unlike say Facebook messaging.
Users seek maximal interaction. The Slack/Discord model achieves this by supporting both synchronous and asynchronous responses. The former requires an informal real-time interface, the latter requires persistence. That's what came together on these services that hadn't before.
I used to routinely go back through the day's discussions in #general and #need-help whenever I got home from work, and yes, reply to questions that had been asked 8-10 hours earlier. But, Reactiflux has become too high-volume for me to be able to do that.
That said, I still will scroll back in some of the lower-volume channels to see what came up. So yeah, having chat persistence is an incredibly nice feature, and I can't imagine doing without it.
Chat channels give immediate and interactive feedback. When someone asks a question in Reactiflux, they frequently get an answer within minutes, if not seconds, and we can iterate on asking for details quickly if needed.
The downside is that multiple simultaneous conversations in the same channels quickly become hard to handle, questions can get missed if they're not answered right away, and we do see a lot of the same questions over and over.
I know the Spectrum folks have emphasized the searchability of their site as a major selling point, both from Google indexing pages and the ability to search for existing threads. I won't say they're completely wrong, but at the same time, my experience is that newbies in particular won't actually search for existing answers - they just want to ask and have someone answer directly.
I scroll back and check for reported bugs and any problems people had that weren't resolved by others.
"They should just ask on a forum/github/stackoverflow" you might say. Ok, but they won't, they'll just stop using my library instead.
Forums require too much risk. Spend 20 minutes crafting a question, never get a response. Github and Stackoverflow are far too complicated for the average user. What's an issue? What's a template? What's a minimal reproducible example? They just want to know what error code 501 means...
It's the same as just barging into a conversation a group of people are having. You don't want to just join and start talking about a completely different topic. So you join, and wait for a bit to get a feel for what they're talking about before piping in. But with IRC, sometimes it can take _days_ to get that amount of information, depending on how active the channel is. The same thing could easily be accomplished by being able to read the last 10 messages in the channel.
When I go online in Discord I don't read up the last few messages unless there's a particularly interesting discussion going on.
And remember that IRC has been around since 1995, when the idea of separate protocols to do different things was common place. IRC has been dying a very, very slow death.
(and despite nostalgia: IRC was never big. Even the largest of IRC servers only had around a hundred thousand users. That might sound like a lot, but we're talking globally: the most popular IRC server had a fraction of the users that CompuServe did, and CompuServe was decidedly worse at being a chat system, even though that was the main reason you'd use it)
Simply by being in an IRC channel you become part of that, which is radically different from any of the other media you mention, where one has to actively go through the records (as it were) to get an idea of what's going on, and what the shared culture and body of knowledge is.
They really are very different media with a very different experience, and today the only experience that has managed to recreate the value that set IRC apart from other communication tools is Slack/Discord.
Minor nitpick: 1988 to 1993, depending on what you consider 'irc'. (1988 for irc1, 1993 for the standardization of ircII that still defines irc today, 1992 if you consider the efnet/undernet fork to be the birth of true irc).
That's exactly Snapchat
(As a long time IRC user, I'd love a free irccloud with all the features of Slack and the freedom of IRC. However, setting that up scaled for "thousands of concurrent users" with normal, modern, administrator interfaces for all those tasks that the IRC RFC themselves left up to individual implementations is REALLY EFFING HARD, so no one has actually set up a service like that, to date)
Also, building and maintaining a free IRCCloud clone is worth much more of 5$/month of my time.
And seriously, it's not that hard. I know people who master the ins and out of much more complex server stacks as a hobby. A nice example is the implementation of World of Warcraft private servers. IRC is nowhere near as complex as that. I do concede that it's a long-term effort though. It's certainly not just a "weekend project".
Still as far as "saving things" go, this one is easy enough that a single person could build the tech on his free time and then you just need (a) patron(s) to pay for the infrastructure bill.
Need to make sure something important is captured from an IRC discussion? Put it on a wiki/mailing list. There's also things like meeting bots. Most communities I've seen, there's very little value in an IRC chat history for conversations other people had (eg, just stuff like 'help me with x').
It’s chat, not email.
That’s a natural feature of the medium.
In the age of Google, why on earth would you want to record everything?
1. storage is cheap
2. you never know when something could be useful later
Let's not pretend individual nerds in IRC chat recording history is anything remotely close to what google is doing.
Making persistent server-logs and putting them on the web, makes them Google-creepy by default.
Well, at least there is still Matrix to hope for.
I can probably name up to 10 chat-networks and products which is existed in the 90s. None remain.
IRC does though. Exactly because it wasn’t a product, but instead a protocol specification.
Whatever rationale Mozilla has for this, it’s going to be proven short sighted.
There are no XMPP frontends that can compete with the "shininess" of the modern, proprietary systems like Slack so that's out already.
As for Matrix/Riot ... maybe, but I don't think it's likely that they'll go with that.
But I agree with the post, "irc is not fine", and never was fine if you want to communicate with "regular" people.
It doesn't have spam filters, easy GUI or easy registration process. You could build all of those on top of IRC, and I'm sure that some people did, but there's no "standard" and most people just can't be bothered.
As the post said, often "IRC traffic isn’t allowed past institutional firewalls".
Besides, when was there a time in the history of the internet that irc was used to communicate with laypersons? If that's Mozilla's goal, they're right to switch.
That said, irc is fine, or even the best, for some communities. Especially communities of internet-savvy people.
It's decentralized, open, easy to access and inclusive. Such communities rarely meet the need for spam filters, and each of their members possess a well-distilled taste for personalized tools for irc.
That's why cryptocurrencies or hackerspaces channles are great on irc. That's why #rust channel is fantastic.
I still didn't find any modern substitution as good as irc for those communities. And yes Matrix, I'm looking at you! You're just not there yet.
I'm kind of convinced that this change is culturally, rather than technically, motivated.
That's cool. I don't want to communicate with regular people, I want to communicate with hackers. If I wanted to communicate with regular people I would use Twitter.
They are already working on botching it, since they've moved the Rust channel to a closed source alternative with no expectations of privacy: https://blog.rust-lang.org/2019/04/26/Mozilla-IRC-Sunset-and...
-- asking for a friend :-)
If you mean real-time chat, in my personal opinion, Discord is the best choice. Zulip is good, if you can deal with it being a bit weird. The other options are fine, but not great. You may have different opinions than me personally.
 This thread https://twitter.com/camlorn38/status/1121879891035602945
Due to a genetic condition I have that predisposes me to blindness I have preemptively installed NVDA on Windows and Orca on Linux, and the inability of either of these tools to deal with Discord the last time I tried is shameful.
>Don’t worry. They’ll totally fix Slack and Discord around the time everyone is using VRChat and VisualTeam. It’s always been this way. Accessibility is catchup work. The next big thing always destroys our gains.
The language at the end of the blog post "We are evaluating products, not protocols" and "We aren’t picking an outlier" almost guarantees we're looking at solutions as heavy as Slack and Discord which I would not have been able to run on my laptop back when I was involved in the switch to Firefox Quantum. It's challenging enough having to advocate for "niche" (my words) features and work out their implementations, but IRC was also necessary to keep track of which builds on what dates would introduce which breaking changes, since this information was published nowhere else, and also to minimally participate in decision meetings that ended up in video chats anyway. If they do move to a heavier, but closed, solution, I hope they also find ways to make contribution less reliant on chat.
For what it's worth, I thought Mozilla had a fairly decent wiki page for IRC. I always believed a streamlined quickstart section, suggesting one or two clients at most, walking through steps to registration and configuring authentication with ghost killing, and how to get activity from when you were offline either via bouncer or just logs would more than adequately address ease-of-use without rolling out a newer, modernized client. Even working from libraries wasn't an issue for me using web-based clients like Kiwi IRC.
Here's something worth paying for if they don't want to selfhost:
IRC has the same tools for banning users as Slack, if not more powerful as you can ban ranges etc. You can require people to register with an email in the same way slack does, although I'd argue being anonymous and being able to talk without an account is one of IRC's best features.
I can't say I ever went on Mozilla's IRC, but I have spent almost 20 years on other IRCd's. Seeing it be replaced, just to be able to use rich messaging breaks my heart.
As someone from the “old” and free internet I agree, but there seems to be a new generation of users who seem to have the ability to perform censorship as a core requirement (although they prefer to call it “governance”).
It’s sad to see the direction they are pulling the internet, one of the few truly free platforms which has ever been created.
If someone want to harass you online, they will find a way, regardless of what governance or censorship you put in place.
I'm sure it will always be possible to find a way to harass someone. But do you believe putting barriers in place has no effect on the amount of harassment that targets have to endure? What do you think of the computer security concept of "defense in depth"?
In most cases, unless the person connects from somewhere else, specifying a sufficiently wildcarded netmask for the host part also prevents the IRC nick change.
I think that provides a great meta-comment supporting my stance on not allowing too much central control and censorship.
Here is links to Matrix and Riot.
Please support open source projects! The Internet was built on open standards.
So private channel and closed platform.
Excellent discoverability and excellent UX, eh?
KYC combined with sms confirmation, CC details and a Google account. All "normal" people have and share that, what's wrong with you?! weirdo.
Welcome to the web of 2019:-)
IRC might be useful in some circumstances, but supporting team communication—especially for remote teams—is not one of those circumstances.
I've actually had this problem with most, if not all, IM/chat systems I've had to use for serious work. They have better UX design for indicating availability, but I can't think of one where it's consistently worked the way I expect it to. Some explicitly allow people to fake/hardcode their status; others have some mixture of caching/update issues and strange criteria for deciding whether a user is "active" or "present" such that the indicator isn't very reliable in practice.
That's not an issue with the tech, it's an issue with the people. I'm not shooting off messages with no idea of whether they'll arrive, I'm at least trusting the person's intended availability. If they're just being an ass and marking themselves as perpetually unavailable, that's an issue I'd take up with their manager.
In my experience, modern systems like slack and discord (and even hipchat) work well enough with their availability indicators. Chat apps five years ago I would not trust as much.
The other problem you describe is related to it being an open standard. If you had a custom slack client or server you also would not be able to make assumptions about how it works on the remote end.
I haven't seen much spam or harassment on IRC, but I haven't been to Mozilla's server.
As for newbie accessibility, doesn't a web gateway solve that? You could change the font family from monospace to Lato and it's instantly 20 years more modern :)
Until this week, Rust's Community page  linked to Mibbit, which allowed you to join IRC just by entering a username and pressing Enter.
Now there's only the Discord button, which works the same (besides an extra click to accept the ToU), and you get a popup and a red banner asking you to register.
I don't really get that for an org that runs their own IRC servers. Requiring external registration, rate limiting, content filtering, ... all are available options. Just because the majority(?) of IRC networks allows access freely doesn't mean you have to. I'm not sure what other systems would add in this regard an IRC server can't do.
Rather, I suspect Mozilla's increasingly sensitive SF bubble-immersed culture has created an environment in which ever more mundane disagreement and conversation is relabelled as "harassment" and what they want is a system that allows for much more controlled speech. Seems a part of the general zeitgeist of the Valley in which techies are concluding free speech is harmful and they should control what's said.
Personally I dislike this trend towards a plurality of chat "services" and "apps." Now each project I interact with has their own chat service. I have to maintain accounts on all of them and install several applications to interact with each. It's a pain to manage.
Not to mention that most of these services use Electron-based chat clients which exclude a bunch of people who cannot afford the kinds of machines required to use them or they have to suffer a poor experience on lower-end hardware. It also excludes people who use accessibility software or automation that doesn't integrate with web-based clients.
The user experience on IRC scales better. Anyone can write a rich, easy-to-use client or server. If you happen to be a programmer you can write your own tools to manage your own user experience. The drift from casual user to power user isn't stopped by a walled garden of a tightly-controlled user experience that doesn't integrate with anything.
I'm sure it will be easier to use, at least. IRCv3 was trying to solve some of this but I haven't heard a peep in years.
You have exactly as many ways to verify users as are implemented in your NickServ, and pretty much every snazzy web-y proprietary chat platform has a "distributed network architecture" as well.
IRC has plenty of real problems, but your particular list of arguments seems completely irrelevant.
Sure, people have written bots/services that have become part of some server packages' standing offering (chanserv, nickserv, opserv, etc.) but there's no spec for them, every server's implemention has (sometimes wildly) different command sets, and as effectively text-scroll CLI, they don't actually make things all that much easier. They're a chore to use. And I say that as an IRCop.
IRC as a platform is insufficient in today's world, so if you're going to spend a lot of time either finding -- or more likely, making -- services to take care of all the administrative tasks that IRC itself does not cover, you might as well just go one step further and go "you know what? IRC isn't sacred, if we're spending time and money on trying to make it usable in 2019, then how we instead spend that same time and money on finding a good solution to the problem we're having, rather than sticking with IRC for no good reason".
In what way are any of these technologies relevant for a chat platform?
Maybe there's some black magic in other services to do better anti-bot/spam than that?
Oh, a ghost session stopped you connecting as YourName and now you're YourName2 ? No problem, NickServ can kill your ghost session so you can get your registered nick back. Oh, you want to do that automatically? No problem, just download this script - a mere 10 lines of perl - and put it into your irssi autorun directory.
Easy, as you say. Anyone who disagrees has absolutely no idea :)
It's nice that you've never had a problem with it. Doesn't mean it's easy or perfect or that no one does.
It’s just another failed attempt at trying to find a technical solution to a social problem.
If you apply this to the OP blog post you can see that the desire to get away from IRC to "safer" products comes from the desire to deal with the social problem in a social way, but in a hidden way:
The technical solution will supposedely make it easier to apply the social solutions, i.e. the barrier of entry for undesired participants will be higher.
An undesired participant can be someone who questions Mozilla on a fundamental level (i.e. on the topic of meritocracy, privacy, inclusion, activism, etc.)
The proposed solution is reverting to a "safe space", i.e. something that promises to automatically protect against undesired participants, because Mozilla has long ago decided that it does not tolerate being questioned on a fundamental level.
This ultimately results in a reclusive filter bubble, where a significant part of the audience is no longer allowed to exist.
Since Mozilla does not seem to want to invest in moderating these spaces in a democratic and open way, which is very costly (but human relationships are always costly), the proposed solution is to build a fence between "us" und "them".
Technical solutions are placebos at best.
They they can raise their anti-spam bar arbitrarily high to block alt registrations and enforce bans. Sight of all PMs could be used for anti-harrassment too, but don't know if they'd do that.
If you make it much harder for anyone with unusual software to connect, you make it harder for spam (and also a lot more legitimate users than spammers, but those don't count because they don't cause issues for operators).
I'm relatively certain that wasn't considered a problem back when I got into IRC and there were more active networks and channels out there. You for whatever reason logged on and were often greeted by messages or even a bot that helped through the sign-up process. Even most GUI clients contained relatively straightforward ways to automate the authentication steps afterwards as well. Again realizing that I'm now in the "snarky old grump" position, discord and slack often feel like a step in the wrong direction. On the one hand it's nice that these platforms include rich media, message archiving/replay, and technically inept users (although the latter would have worked fine with bouncers/webapps back in the day), on the other hand it's just moving my personal communication to yet another corporate silo with weird monetisation.
Not trying to imply that IRC would represent something more convenient messaging wise but did we really have to move in the completely different direction there just to integrate a few solutions and add monetisation?
Discord uses themes that do not meet minimum contrast guidelines (#747F8D on #FFFFFF is 4.06:1, failing WCAG AA for normal text).
Discord says third-party clients and even client-side CSS modifications violate their ToS https://twitter.com/discordapp/status/983359562458849280
I guess the best thing for the current situatio would be a headless service that would connect to your IM identities, and buffer messages, from many different IM identities and protocols. You would then have intermittedly connected web or terminal or mobile apps as its clients. Does something like this exist?
It only support public channels at the moment, but we're planning to add user/user communication too.
If something 'modern' is required, Matrix protocol and its ecosystem is a contender. Also look into the world of ActivityPub federated applications, which cover everything from replacing Twitter to blogging.
My personal setup is to use bitlbee or libpurple to connect to every major chat network that exists today, bridged to my irc client via znc. This provides a consistent presence, status, and ui across desktop/mobile, push notifications, filtering, and behavior under my control, all with chat client that doesn't take up 1GB+ of memory with phone-home telemetry and useless emoji
(Unless the matrix IRC bridge connects to the IRC server with a server-to-server type connection and can thus address messages from/to virtual users on the IRC protocol level. But that would need a lot of coordination and authorizations from IRC server administrators, which brings in so much friction that it probably kills the idea.)
edit: it seems possible that the matrix irc bridge will make a new client irc connection per bridged user, which sounds like a better idea. hard to make out from the docs though.
I am sure other products/teams have channels there too, they just won't be official go-to place to chat.
Something federated and encrypted like Matrix/Riot would be fun. Having something that's federated would be lovely to see other members of the FOSS community start to come together over time.
but there is a lot of problems with those rich text/react/Electron thick apps can be "painful" tho
So not using the open internet protocols Mozilla claims to champion.
What a disappointment.
> Our mission is to ensure the Internet is a global public resource, open and accessible to all. An Internet that truly puts people first, where individuals can shape their own experience and are empowered, safe and independent.
Fuck it, spin up a Slack room.
It seems your priorities are not well aligned with those of the majority of users...
If they then choose out of pragmatism to behave in ways contrary to their stated principles, people will justifiably call them out for hypocrisy.
*Think XMPP GTalk etc. which were IMO superior in many ways to Slack or MS Teams
> We are evaluating products, not protocols.
Edit: Just checked, freenode has a #firefox, not sure how official or how maintained it is.
I currently have a NNTP server set up, but not IRC or any other kind of chat system (but if I do set one up, it will almost certainly be IRC).
Maybe worth checking out!
I don't know about healthy or productive, but I am fairly certain that IRC is safe.
What worries me is that 'safe' has become a bit of a euphemism to mean 'unchallenging,' and what this really means is that the organisation which booted Brendan Eich really wants to unperson anyone who blasphemes this week's orthodoxies.
I doubt the concerns are about people discussing Rust vs C++. And, this being Mozilla’s semi-internal technical discussions, even the most intellectual, data-backed hot takes on the culture wars de jour are probably out of place: getting DMs like “here are twenty proven statistics girls are bad at math” because you happen to use a female handle is still harassment, even if (hypothetically) true.
> Very soon, I’ll be setting up the evaluation process for a couple of candidate replacement stacks
They don't know yet.
It would be a real shame to lose it.
Chrome is definitely the dominant browser, FF is far from irrelevant.
I also echo the content of the sibling comment: on mobile u block origin is really a God send.
I will wait for Fennec...