Jordan Hawker

#DontPaySlack: That Annoying Hashtag Might Be Right October 19, 2015

You might have recently seen this Twitter campaign run by upstart team communications platform Ryver; I’m sure their marketing team thinks any press is great press, but they largely annoyed their target market into discounting them entirely. However, it turns out they might actually be right. While this certainly isn’t the #slackVsRyver showdown that Ryver CEO Pat Sullivan is hoping for (as you’ll see by the end of this article), the time has come to take a hard look at whether Slack is actually the right fit for your team.

Why Leave Slack?

Warning bells started to ring back in June with freeCodeCamp’s article about their move from Gitter to Slack and back to Gitter again. You can read their article in full, but the gist is this: Slack doesn’t support large teams. Despite all of their marketing assuring users that there is no limit to team size, their APIs have a hidden limit that will prevent you from inviting new users after a certain point. For small teams, this isn’t a problem, but if you’re running a large code camp or OSS community with thousands of members, you’re heading for a world of hurt. More recently, other communities such as Reactiflux have begun hitting this limit as well. Ultimately, Slack’s servers can’t handle the load of communities this large, and building support for this into their infrastructure flies against their overall product goals of focusing on small teams. As such, Slack has decided not to allocate resources toward improving this problem.

Additionally, Slack is one of the only team chat platforms that does not preserve all history for the free tier of their product. Once you hit 10,000 messages, Slack will no longer show you the earliest messages in your history, even through search. Sure, you can pay them to remove this limitation, but their per-user-per-month pricing strategy makes this cost-prohibitive for large teams. Even more, why pay for a feature that every other major collaboration platform gives you for free?

Slack has a lot of great things going for it: appealing design, great integrations, slick, performant apps on just about any platform, not to mention fun features such as custom emojis and reactions (a feature that no other platform has yet!). As it turns out, however, there are a number of great team collaboration alternatives available, all of which are free (or have free tiers) and can compete with Slack’s dominance of the market.

Comparing Team Chat Platforms

Given the premise that many, if not most, OSS communities are going to need to search for a new home away from Slack in the near future, I set about to research alternatives that could hopefully provide a sustainable new home for thriving communities. The Reactiflux community was instrumental in assisting my research. In my comparison, I only considered the free tiers of the various platforms; many of them had paid tiers that provide additional features, which should certainly be taken into consideration if that is in the cards for your team. However, it is important that a true alternative be sustainable for a community that does not have extensive funding of its own to pay for a service like this. I compared about a dozen different team collaboration platforms (including Slack itself), and though I will only go into detail on about 6 or 7 of them today, here’s the full list, in alphabetical order:

In order to perform my comparison, I identified a number of features that were prevalent in these platforms and deemed a value-add for team chat. Check out my Feature Comparison article for an in-depth look at each feature and which platforms supported them. For now, though, let’s focus on a high-level look at some of my favorites. I’ll give a brief overview of the platform’s background, a few pros and cons as well as a unique, cool feature that differentiates it from other platforms. I’d also like to credit the folks at Reactiflux for a great discussion I was able to be part of in identifying a lot of these points.

Slack

Slack is the reigning king of team collaboration, with a valuation of almost $3 billion as of their April 2015 financing round. It has certainly been the darling of Silicon Valley, and not just in VC funding, either. The platform passed 1 million daily active users back in June and shows no signs of stopping.

Pros:

  • Amazing product, people love it!
  • Since many teams use Slack, a lot of your team members may already have it open by default, making it a natural choice with good org-switching capabilities.

Cons:

  • History is limited to 10,000 messages
  • Teams do not actually have unlimited users, making it impossible for large teams to scale well.

Unique Feature: Reactions

Reactions are Slack’s way of killing the +1 phenomenon; that is the endlessly useless replies of people who simply want to show agreement to someone else’s message. With reactions, users can attach any emoji to a message, allowing them to react to another user’s content without stretching out the chat log with messages that otherwise lack content.

Gitter

Gitter is a chat platform geared specifically around its GitHub integration. Initially the platform focused around creating one channel for each repository, to provide a place for OSS teams to discuss their project. Now, organizations can have channels and custom channels can be created for a team as well.

Pros:

  • Proven Scalability (they have at least one community with over 50,000 users)
  • Simple login through GitHub, which is great for OSS communities where nearly everyone already has an account

Cons:

  • Apps are subpar and buggy, especially on mobile
  • Channel Organization isn’t entirely clear, especially as they related to different orgs. No explicit org-switching exists; all channels you have joined are added to a combined list

Unique Feature: GitHub Integration

Gitter is tightly integrated with GitHub and other services, allowing a powerful cross-over between chat and project activity such as pull requests, CI builds, etc.

Discord

Discord, a recent entrant to this space, launched with a focus on the gaming community. The apps all have an incredibly polished design on the level of what we’ve come to expect from Slack. In spite of their focus on games like League of Legends, Dota 2, CS: GO, and Minecraft, the team has been very receptive to other communities using their service. In fact, they recently added code blocks to their latest release specifically to support the Reactiflux community switching to Discord (and their product is built with React!).

Pros: 

  • High quality voice chat in separate rooms (users can opt-in)
  • Granular role & permission management with far more depth than other platforms

Cons:

  • Search hasn’t been implemented yet, but it’s on the roadmap
  • Some percentage of users may have trouble accessing it from work, since WebSense and other corporate filters classify it as a gaming application

Unique Feature: Instant Invites

Discord is the easiest platform to join out of all the products I evaluated. Their “Instant Invites” feature allows you to generate invites to a specific channel that bring users into the chat without even having to fully register an account (just provide a name!). Users can then “claim” their account at any point before disconnecting in order to be able to regularly login to the chat. This is a critically useful feature for OSS communities, as it allows new users to easily jump into chat and ask questions without having to register. Even more, these invites can be set to expire after a certain period of time, and they can even be set such that people who accept them cannot register, which is great if you have a private chat that you want to add someone to temporarily without allowing them to register to your server permanently.

Rocket.Chat

This fully open-source platform is the ultimate answer to self-hosted chat. Rocket.Chat has an incredible breadth of features, including voice and video chat, and an active team supports continued development of the product.

Pros:

  • Open-Source means that if your team is technically inclined, you can implement features you need and contribute them back to the project
  • Voice and Video conferencing

Cons:

  • Self-hosted, meaning each team is responsible for their own platform stability and troubleshooting (with the OSS community as a resource)
  • The apps look nice, but not as polished as Slack, Discord, or Gitter

Unique Feature: Social Login

Rocket.Chat has a wide variety of login options through third-party social auth, in addition to the normal username/password. That makes it very easy to onboard users, though not as easy as Discord.

PureCloud

Interactive Intelligence provides PureCloud Collaborate as part of their freemium solution within a larger enterprise suite. This relatively new app is built with modern technologies including EmberJS, and the team is very dedicated to building a great product. They’ve been very responsive to feedback, and while they rank in the middle of the pack (which isn’t necessarily bad) as of this writing, the list of features I’ve heard about for their upcoming release is sure to launch them into contention with the best of the best.

Pros:

  • Strong focus on a larger enterprise-focused platform that will include other related products
  • The most advanced user profiles of any platform in this list, enabling a lot of powerful features 

Cons:

  • “Feels” like an enterprise application; that is, not as “fun” as Slack or Discord, but still very polished
  • Still missing some important features such as Org-Switching, Search, and Message Editing, but those are all coming soon in their release cycle

Unique Feature: Dance Party!

Type “/dance” in chat and be treated to an epic dance party featuring a long-time chat friend, Kirby! (>’.’)>

Conclusion

My weighted scoring system only played a small part in giving me a good overview of the capabilities of each platform. For those of you who are interested, however, here’s how they stacked up:

RankProductScore (Max 50)
1Discord39.75
2Slack39.5
3Gitter38
4Rocket.Chat37
5ChatGrape37
6HipChat35.5
7PureCloud32.25
8IRCCloud28.375
9Ryver28
10IRC24.5
11Let’s Chat13

Take those “results” with a grain of salt, as your preferences may vary widely from mine. Ultimately, though, after much testing I did in fact decide that Discord was my favorite product of the bunch. It’s an incredibly well-built product, and though it’s missing one or two important features, the team has been quick to address any requests from their users. Instant Invites is really the game-changer here; for an OSS community, the ease of onboarding users to this app is unrivaled by the other competitors. Their voice chat is extremely high quality, and the permissions granularity will be very useful for moderating a community.

Just to prove what I’m talking about with the instant invites, here are a few invite links:

  • Reactiflux’s official chat can be found on Discord!
  • I created an EmberJS Discord for evaluating the platform
  • Here’s an instant invite to the #help channel so you can get instant assistance rather than being dumped into #general

Keep in mind that the landscape of this industry is constantly changing. These teams are all innovating and developing new features every week; I may try to keep my comparisons up-to-date, but ultimately each platform will (hopefully) fix the holes in their offerings. You should evaluate them yourself before making a decision; if you notice something new (even an entirely new platform) come back and let me know in the comments!

Wait! What About Ryver?

I teased you with them in the beginning and then never gave you my thoughts, right? Well, frankly, it’s because they aren’t even in the running. You can see from the weighted scores that they rank below everything but IRC and Let’s Chat, making them a marginal solution at best. Ryver’s setup is so backwards that they think each team only needs one channel; you have to make a new "team” and add individual members to that team every time you want another channel. Ultimately, they lack a lot of the features that make these other products great, and their marketing team has launched them into the spotlight far before they were ready to be a competitive player. Ryver needs time to go back to the drawing board and re-assess their features before making a strong push into this industry again. They did get one thing right, though. #DontPaySlack (with much love and utmost respect to the Slack team, <3!)

A Note About IRC:

I included IRC in my comparison even though it’s not a “platform”, per-se, because it often gets mentioned as an option in these discussions. However, scoring it proved difficult due to client fragmentation; many of these features are more client sugar than anything else, so while an individual user could customize their experience to get these features, I tried to consider the cross-section of what an average user would have access to by picking one of the many available IRC clients. IRCCloud, on the other hand, is a specific platform that merited a separate consideration given its more modern feature set.