TL;DR: Are there tools/platforms that can replace both Discourse (forums for end users) and Slack (chat for developers) at once for a small open source organization?

We're a small open source organization that started in 2009. Originally we had forums for end users (based on Drupal), a public mailing list for developers and Skype/Hangout for chats.

These last few years we've been using a combination of forums (Discourse) for end users and real time chat (Slack) for the development team.

When we introduced it to the community in December 2016, Slack had a transformative effect on our developers community and allowed the team to grow and organize in ways that, I believe, wouldn't have been possible with just forums, mailing lists and Skype.

Unfortunately Slack is way too expensive for us, and as a non-US organization we aren't eligible for a free standard plan. We're looking into what could replace Slack and are investigating Mattermost, Discord, Telegram and a few others. We've quickly discussed IRC but ruled it out due to the lack of features.

We're now wondering if we could also unify Discourse and Slack: The division between end users and developers has always felt a bit artificial and we often end up posting forums links to Slack to make sure developers are aware of our users' questions and feedback.

What we value in Slack:

  • Modern UI/UX, intuitive look-and-feel, good defaults
  • The instantaneous nature of conversations is very important to us
  • Organizing discussions in channels, spontaneously creating custom-tailored groups to discuss specific issues, etc.
  • Easily sharing files with other developers
  • Sharing code snippets with syntax highlighting...

What we find frustrating in Slack:

  • Conversations being readable by Slack members only
  • Users needing to be invited to join (although we worked around this with Slackin)
  • Hard to find old conversations or old files
  • Lack of members management (e.g. removing users that never logged in after joining, users that haven't logged in in years)

What we like in Discourse:

  • Modern UI/UX, intuitive look-and-feel, good defaults
  • Users don't need to setup an account to ask a quick question
  • Forums in general: clear topics, easier to follow, easier to search
  • Lots of tools to manage members

What we don't like in Discourse:

  • Doesn't allow real time conversations

Are there tools that combine the strengths of forums and team chats? Any advice on how we could organize ourselves on a budget (we can't afford to pay for Slack)?

  • 1
    As far as I know there is a chat plugin available for Discourse to enable instant conversation on Discourse. – Torsten Därr Jul 20 at 14:29
  • The Babble chat plugin for Discourse looks to be pretty solid and can take on the core needs of a real-time chat system. In addition Discourse integrates with Discord (I think?), Telegram, Mattermost, and more. There are some good discussions around this on Discourse's support site in the Community category. – Jerdog Sep 10 at 0:57

Discord seems to be tracking Slack’s development most closely in terms of modern and friendly UI. It’s free, which seems important to you, and if you use a bot I think you’ll get most of what you’re looking for except threaded conversations. I’ve seen some servers where they’ve been very creative about setting up categories of channels to facilitate tracks of discussions or info sharing. Like, here’s a category just for off-topic channels and trivia games, and here’s a category just for server info channels like join notices and FAQs.

Also, anyone can join easily and there’s a fairly good set of controls for grouping users.

I’m not aware of a Discord/Slack and forums hybrid, but I could imagine a scenario where you have discussion channels and then some kind of curation process - for example, you set up a channel only mods can post to, but everyone can see, where you post title/excerpts of important discussions and then link to the first post in whatever channel it occurred on. Then people can look back through there, just as they would on a forum, for relevant topics.

I have found the winning solution to be integrating the chat platform with the discussion platform using either the relevant plugin for the discussion for, e.g. the Discourse chat plugin or some of your own code.

Slack and Discourse win at different things - trying to combine their functions into a single service will likely result in several compromises which defeat the purpose. The key is to maintain clear guidelines on when to use which. Typically, this goes both ways:

  • A discussion originates as a chat within the the chat environment, people realise that it is too long, or of wider interest. The transcript then gets cross-posted as a topic to the forum.
  • A topic is created on the discussion forum - typically by someone outside of the chat platform - which then generates internal chatter.

The policy of the community should describe scenarios like this (obviously, in line with the actual behaviour of your community members - don't describe irrelevant scenarios), and the relevant tools to integrate the two should make it easy to do so.

I've found that including this in the FAQ of the discourse, and by having a slackbot that suggests cross-posting of vigorous chat as a topic really helps.

As the developers prefer Slack, you should go for a chat oriented solution. A sweet spot between a forums and chats is Zulip.

It have two levels of organization (topics inside channels) what resemble forums, a interface that resemble Slack and apps for many platforms.

It's open source, so you can host it yourself, as the cost is a concern.

There is a channel for testing in the community server.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.