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.