1352
Please don't use Discord for FOSS projects
(drewdevault.com)
All about open source! Feel free to ask questions, and share news, and interesting stuff!
Community icon from opensource.org, but we are not affiliated with them.
I don't mind Discord being a centralized platform for open source project discussion, if and only if the only roles it serves specifically play to its one strength, which is real time discussion. Asking for live support (from the dev if they are there, or the community if they are not) and doing live bug triage are the two big use cases.
Should contact for these things be real time? Maybe, maybe not. Async discussion like you get on forums or via email can do the job. But if you value real-time chat, Discord does it well.
Everything else? Do it elsewhere. Do not make Discord your only bug tracker. Do not make it your only wiki. Do not make it your only source of documentation. Do not make it the only place you broadcast updates or announcements. Do not make it your only distribution platform for critical downloads. And for the love of god please do not make it the only way to contact you. I don't care if you allow Discord to additionally do these things using integrations, that's fine, just stop trying to contort Discord into your only way of doing these.
Is Discord the only capable option for real time chat? No. But it has several things going in its favor, namely how one can reasonably expect a good sum of their target user base is already using it independently for other purposes, in addition to its numerous QoL features.
It can also better integrate into the dev's personal routine if they already use it independently. Like, do I have an email address? Yeah. Do I read my email on any reasonable interval? Hell no. My email inbox is little more than a dustbin for registration confirmations and online order receipts. I've had email for decades and I think I can count the number of non-work, non-business conversations I've held over it in that whole span of time on one hand. Meanwhile, I'm terminally online on Discord. So if I'm gonna be a small independent FOSS project developer, am I gonna want to interface with everyone over email? No. I'll still make it an option, because being only contactable on Discord is cringe, but it will not be fast. Discord will be my preferred channel.
Should I put more effort into being contactable on other platforms, because it's the right thing to do? Meh. I have no duty of stewardship to be available on platforms available to anyone in particular. I maintain this hypothetical project for free, on my own time, of my own volition, and I provide it to you entirely warranty-free. I have the courtesy to make all static resources available in sensible public places, and I provide email as a slow, async way to reach me. But if you want to converse with me directly in real time, you can come to me where I'm hanging out.
Using discord as your only store/distribution point for information is obnoxious.
How would you even use discord for that stuff? It sounds way harder than just using the proper tools.
You'd certainly think so. But never underestimate a user's ability to jury-rig a piece of software into doing something it wasn't designed to do, ignoring any and all obviously better solutions as they do so.
I don't think I've ever actually seen documentation published on Discord and nowhere else. But I do very often see no documentation whatsoever except a "just ask around on the Discord" link serving the role.
Discord probably isn't used as a robust ticketing system either; usually if anything it's a bot that will push all tickets to an actual GitWhatever issue, which is fine. But again, what I do see often is projects with no ticketing system whatsoever, and a Discord link to just dump your problems at. If the issue tracker on the repo isn't outright disabled, it's a ghost town of open issues falling on deaf ears.
Announcements can be pretty bad. Devs can get into a habit of thinking the only people who care about periodic updates are already in the Discord server, so they don't update READMEs, wikis, or docs on the repo as often as they should, allowing them to go out of date.
Fwiw I've also seen several projects that have Discord servers with none of these problems, because they handle all those other parts properly.
Yes, but its important that there is information available to maintainers about the pros/cons of mechanisms available, so that they are able to make informed choices about the platforms that they use and influence others to use. Hence the article.
Indeed, it is my choice. And as of now, even in light of all of this article's information, I have chosen Discord. For now.
Deal breaking flaws to others are not necessarily deal breaking flaws to me. If their differences in principles prevent them from reaching me on my preferred platform, tough noogies for them.
🤮