Ok, I know Discord is probably well-loved, so hear me out before you grab your pitchforks . 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 .
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.
Also important to note that group chat, because the expectation is instant creates other problems:
- Often questions get ignored if they are too hard or the right people arenāt online
- 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)
- Discord
- Forum
- 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
Tell me what you think
Iām just a random guy with a random idea. Please give feedback!