I fear that Discord (group chat) harms the community 🙈


Ok, I know Discord is probably well-loved, so hear me out before you grab your pitchforks :grimacing:. But I read this article by Dgraph (linked below) how they noticed that Slack was harming their community and I see a lot of the same things happening in this community.

And I don’t think it’s specific to Discord, but rather Group Chat in general.

So here are my thoughts…

Group chat creates closed, unsearchable information that most beginners don’t know exists

Most people who want to check out ReasonML they probably go to the official website first. They go through the tutorial and then… get stuck :sob:.

It might be a syntax error, might be a piece of missing documentation, one way or another they do what they normally would do, google it.

The problem is, nothing from Discord is indexed by Google, which is sad because Discord (currently) is probably the most reliable way to find up to date information in my experience. This is probably because of how low the friction to ask a question in Discord is compared to the forum or stack overflow. You might think that the low barrier to entry is important to maintain for beginners however I feel like there’s another big problem with this…

Group chat creates an expectation of an immediate response questions… which they rarely get it.

From Dgraph

Slack can provide an “instant” user experience. Slack sets an expectation of quick replies. If you have to wait a couple of hours for a reply, that’s not an incredible UX. However, to do this consistently, a lot of engineering resources are needed. Moreover, it’s hard to know what has been replied and what has not, resulting in a disproportionate effort to achieve [consistently incredible user experience].

Providing a [consistently incredible user experience] in Discourse, on the other hand, is a lot easier. The expectation is that the replies would come in at least a few hours. A complex conversation may last for days, without moving into a private one-on-one. The search and recommendations when creating topics, allows the community to find similar topics.

:point_up_2: Also important to note that group chat, because the expectation is instant creates other problems:

  1. Often questions get ignored if they are too hard or the right people aren’t online
  2. The most devoted community experts answer the same questions over and over and slowly burn themselves out.

Group Chat works if the community is HUGE (like JS/React) but we aren’t there yet

The above problem, the expectation of an immediate response, could be a reality if there’s a huge army of programmers ready and willing to help, however, the ReasonML community isn’t that big which means that it’s unlikely that the few people we have will be able to help within the minutes people expect a response which makes us different than the React & Javascript community.

Group chat discourages deep discussion

Discord (all group chat) usually discourages people from posting anything big because of the large amount of vertical space that each post would take up. And even if a few people did redid all it would take is for one other person wants to talk about somebody in the same channel that the previous stuff and get buried. This is especially bad when somebody asks a complex and hard question and then somebody follows it up with an easy question that quickly gets an answer.

It hides the hype of new libraries

Most people post the cool stuff they make in Discord

However as you can see, maybe seven people see the announcement? However if you posted it in the forum then you would probably get way more engagement AND it’s far clearer how many people have viewed and are interested in your announcement.

Group Chat is timezone un-friendly

From the signal v. noise blog:

Chat is often hailed as the essential tool for working remotely. And it is an important tool in the remote workers’ toolbox, but it’s a particularly bad one when you’re trying to work with people across time zones. Since chat is perpetually pointed towards now, and everyone’s now is different (your 9am is my 11am is her 3pm is his 8pm), real-time is the wrong time. Asynchronous communication is far better when working with teams spread across the world or even just a few time zones apart.

I think this is especially important in our community because the OCamel community is generally in France and there’s also many other parts of the community like in Austria which is almost on the other side of the world. This means that some of the most devoted and knowledgeable people get excluded from discussions that happened while they were asleep.

Why not both? We are pretty fragmented, and small

I think it’s tempting to try to just d emphasize discord however I I think this creates a pit of despair rather than a pit of success when it comes to making sure that everyone’s questions thoughts and announcements get considered with the most amount of attention possible.

We are currently a small community split across 5 different channels (I know they aren’t all the same)

  1. Discord
  2. Forum
  3. Twitter
  4. Reddit
  5. Stack Overflow

If we had fewer places for people to talk then it would actually make the community feel larger and more vibrant.

But what if I don’t know where to post stuff?

I think to have a “introduce yourself”, “beginner questions”, etc… topics that are pinned help lower the barrier of people contributing :man_shrugging:

Tell me what you think

I’m just a random guy with a random idea. Please give feedback!



Chats are the worst. Every time I try Slack or Discord, I quickly get overwhelmed and go away. This is why I’m only here or on Reddit. Not that I contribute much to the community. Anyway, I totally agree with all your points.

Also, GitHub issues and PRs are a nice async way to have meaningful conversations. So maybe make it 6 channels :slight_smile:

Edit: grammar.


Awesome to know that I’m not the only one! Yeah you’re right, totally 6 channels, it even more perhaps if you take into account that there’s a ton of different repos. But I guess at least 6 different platforms.


I should add that I posted my thing on Discord intentionally as I don’t consider it a big announcement (yet) :slight_smile: when I get to (or near) 1.0.0 I’ll do a proper announcement here and on the OCaml forum.

Other than that, I agree that questions can get lost on Discord but to be honest at least in my experience that doesn’t happen too often. Our Discord has a reputation (for years now) of answering questions quickly :slight_smile:

That said, something concrete we can do right now is to set expectations of what the different channels are like, so maybe a short blurb here: https://reasonml.github.io/docs/en/community … can describe the Discord as ‘real-time conversation’ and the Forum as ‘when you don’t want your questions to get lost in the scrollback’, something like that.


I don’t have anything considered to add, but I agree. For my own benefit, I wish more activity happened here in the forum rather than in chats.


While I think that generally questions don’t get un-answered I think it would be far more likely to be 100% of questions get answered if they were in a more organized place such as Stack Overflow or this forum. Also, I think Discord is good for simple, “syntax error” type questions but bad for more complex ones that require real research & thought put into their responses. This means there’s an un-even experience for people where one of their questions will get answered immedately while another will never get answered :man_shrugging:.

Another problem I have with discord is that it’s where most of the community lives yet it’s a “private club” in the fact you have to sign-up for it before you can see any of the content which means you don’t get any traffic from search engines or casual observers. Most people who are just starting out just want to find the answer to their question through googling to determine if ReasonML is a viable alternative to TypeScript for instance and don’t want to have to join a community if they don’t have to (handing over your email and meeting a bunch of strangers can be intimidating for some).

But for what it’s worth I do think chat is good for creating a social bond with other people. I think at the very least it should be taken down to just that, a social chatroom to not feel so alone :hugs:.

I don’t know if others felt this way either but I did find Discord a bit weird at first because it’s obviously made for hardcore gamers which I didn’t feel like I fit into that mold and did feel a bit embarrassed to have on my work laptop :see_no_evil:.


Tip: use light mode appearance in Discord. That makes it less ‘hard-core gamer’-y :wink:


I agree. I think having questions indexable by search engines will lower the barrier for new users as well as reduce the likelihood of duplicate questions.


I also like the idea of searchable knowledge, searching through discord history can be messy IMHO.


For what it’s worth, I do want to maintain a culture of, “It’s OK to ask a duplicate question”, some Stack Overflow culture would attack “n00bs” for not searching first or making mistakes which drive away a lot of people. We should welcome people who are new and give them gentle guidance which often means just answering their basic question in an individualized way.

At the same time, I want to also support people being able to find an answer to their question by googling things if that’s the way they like to work (more of an independent, “get things done” type person who doesn’t want to engage with the community right away). Also, I think being able to link beginners to well vetted and well-phrased answers to their question just lowers the “support team” (volunteers) burden.

I feel like these two things are not mutually exclusive although often they have been done that way in the past.

Tell me if any of that doesn’t make sense :thinking:.


Maybe if they’re presented with an internal search at the time of posting a question? am a noob myself but I’ve tried to build this discipline of research and lookup first before asking and it’s worked wonders for me as I usually come a bit more informed and can asked more specific questions.


Discourse does suggest possibly related questions when you start typing a new topic.

Stack Overflow has an expectation that questions should be as focused as possible, with effort put into them, and suitable for being curated into a knowledge base. Discourse is more free-form and we try to help no matter what the question is. Sometimes that just means pointing to an earlier answer. I would encourage people to look to Discourse as the first point of contact for questions, instead of Stack Overflow.


I left the discord server over a month ago but I think it still has a place in the community. It does perhaps need to be de-emphasised in the list of community contact options, to encourage more traffic to here and reddit.


Yeah I really like this suggestion. The heart system still works as a sort of upvote system as well, plus it just limits the fragmentation if there community which I really appreciate.


to help with the discussions on this forum, could the reply by email feature be enabled/fixed?


Maybe it’s because I’m used to hang out on IRC since the 90s, but I love the atmosphere on Reason Discord, and it’s one of the reasons I like this community so much. And I also love that it’s not as crowded as Reactiflux. I rather wait a few hours for a an answer, than to have high traffic channels. I think the points by @justgage are all somehow valid, but also a bit over-engineered and make assumtion that don’t fully match reality. I know what I have to expect from instant messaging, and I think most developers do. And it is searchable (although not by search engines). And in the end, even when it’s a small community, people are still all different, and have different communication preferences. To “force” the whole community to use one blessed forum would do more harm than benefit, I believe. That said, I think it’s totally fine to emphasize this forum over the other options at the central information hubs.


I also love the discord server, this forum is great for Q&A and public oriented communication, but I’ve never learnt as much in programming than I have in Reason discord thanks to this amazing community!


Used to do the same but I feel like discord just doesn’t hold up as well as IRC. Maybe it’s the fact that it’s a ‘rich text experience’ which absolutely destroys information density. Keeping up with 100 irc messages an hour is a lot easier than doing the same in discord


Yeah, many people feel like you. But for me it’s the opposite. I nowadays prefer Slack-like platforms over IRC and even hate Email, for me it’s more digestible. But that is getting OT now. :slight_smile: