Slack vs HipChat vs Mattermost: What are the differences?
Slack is the undisputed champion of the workplace group chat world. But HipChat and Mattermost have their own fans, as well. HipChat is frequently called “developer-friendly” and “IRC-like.” Mattermost is open source and deployed on-premise, differentiating it from its competitors.
What is HipChat?
What is Mattermost?
Want advice about which of these to choose?Ask the StackShare community!
Why do developers choose Slack vs HipChat vs Mattermost?
- Slack users love that it’s easy to integrate with; it’s fun and easy to use, so even non-developers love using it. Fans also cite its cross-platform interface as a pro.
- HipChat fans stress that the tool is developer-friendly and integrates well with a lot of developer tools. Its IRC-like interface is familiar to many programmers.
- Mattermost is the only open source tool on this list. It’s also deployed on-premise, behind your firewall. Fans call it fast, easy to use, and professional.
I use Zulip instead of Slack, Mattermost, or RocketChat because of its first class threading. One week after switching to Gmail (in 2004) I realized I was never (willingly) going to use an unthreaded email product again. I had that same experience the first time I saw Zulip.
Zulip is also fully open-source, with a well-maintained (e.g. 90+% test coverage, fully static python), easily extensible code-base. In many companies, your communication platform (chat or email) is the center of the workplace -- no one asks for a chat integration into their calendar, they ask for a calendar integration into their chat. A fully open-source codebase means you can customize Zulip to your needs, and are never at the whim of a corporate maintainer who can't or won't fix simple bugs, or who will charge you tens of thousands of dollars for making minor customizations.
Slack is the industry standard for managed instant messaging (IM). A good alternative would be to self (or cloud) host an open source IM such as Mattermost but as always it would be a good idea to do a cost benefit analysis between the solutions.
Some of the main things to consider:
- Having a good SDK for plugin creation
- Having good integrations with existing tools ( JIRA , GitHub , OpsGenie , etc.)
- Maintenance and administration
- Covers all your businesses use cases
I use Slack because it offers the best experience, even on the free tier (which we're still using). As a comparison, I have had in depth experience with HipChat, Stride, Skype, Google Chat (the new service), Google Hangouts (the old service). For self hosted, Mattermost is open source and claims to support most Slack integrations, but I have not extensively investigated this claim.
Today the impossible happened, our beloved Slack crashed sending chaos into offices around the globe. “Wow, how am I now going to vote for the flavour of our new office candy???”, I thought. But even though it might not have felt like it, everything else around us was still working: the world was still spinning, South Korea was winning over Germany at the World Cup, and today’s quotas and goals had to be met. In these situations, people most often turn towards traditional messaging tools like messenger, WhatsApp or email and hope for the best — that Slack will be back up soon. However, these temporary remedies are not without their complications: undelivered messages that you thought were read, lost documents, mental breakdowns, wasted time, etc.… In general, for us it creates a problematic gap in our office chat history.
But what if I told you that these crashes could potentially never occur again?
Yes, this is real life, and it’s exactly what mesh technology is about so we are going to explain it. In this scenario, if Slack ran with mesh networks, its users would not have been affected by its current technology’s single point of failure, which in this case was the crash of the server.
Lol okay, how is this possible bc this is real life???
Mesh networks might not sound familiar to everyone so let’s compare it with other well-known networking topologies. Consider a Local Area Network (LAN), where devices are connected to a central access point (imagine it like a star with the central access point in the middle and the devices located at the ends). Be it LAN or wifi, the idea is the same, so when I send a message on Slack, it first arrives at the Slack server (the central access point) and from there it is sent to the recipient.
In mesh networks, devices are directly connected to each other. They form a local network using existing connectivity technologies such as Bluetooth or Wi-Fi as “connectors”. Devices can act as “routers” and forward messages and files to others, enabling the content to hop between them until it reaches a destination. This eliminates the need for a central entity.
Let’s apply this concept to today’s crisis. If slack ran on top of mesh networks, their consumers would still be able to communicate and send files even though they were not connected to the crashed server. Once it was up and running again, all their group conversations which would have taken place during the outrage would be uploaded back to Slack’s server once they were back online.
Honestly, it’s that simple. To Slack, it would not only be convenient for its customers in situations like these (because we would never have Slack crashes), it would also considerably reduce their own infrastructure costs and prevent them from having moments that they might find embarrassing.
So slack, if you see that mesh networks could potentially help you, come talk to us.
Slack is gorgeous and runs on multiple platforms - that's benefit #1. You can easily talk on your iMac then switch to your Android device on the fly.
The one thing I don't really like about it is how it handles multiple organization accounts.
I am a software consultant so I typically work with multiple teams over the months and it's odd to 'log into the right account'. It's not intuitive at all.
I would like there to be a way for users to easily pick a 'Persona' and not accidentally post to the wrong company.
Here are the main issues hard to solve with Skype but easily handled with HipChat.
Pickle #1. Group chatting Pickle #2. Offline mode Pickle #3. Sending pictures Pickle #4. Code snippets Pickle #5. Link search
And of course integrations.
We've gathered all our thoughts in an article - http://weavora.com/blog/2014/02/04/why-we-love-hipchat/
Slack filled a very complicated role and did it elegantly.
Its very well designed and easy to use. Adding integrations can be complicated but their documentation with images makes it very easy.
Also I contacted support and get a relevant answer quickly!
All this on the free plan, you better bet we will be upgrading soon.
I really like HipChat, not only because it's available on whatever "machine/device" you use but it has a ton of add-ons that you can integrate in you chat room that keep you and your team constantly aware of what's happening with your business.
Internal Communications made easy
I first heard about Slack from my friend Matt (shout out to Final!). He was helping me out with some Rails issues so we started using Slack and I liked it. Specifically, the chat interaction. But also all the integrations. I wasn’t thinking of it as a tool to end all tools at first, just a chat tool with some cool integrations. Then I created a Slack account for StackShare, and that’s when things got real.
Sentry got easier to stay on top of, Heroku was easier to see activity from, discussions were more fluid, and the mobile app was killer. Most of the tools I use either don’t have a mobile app or have shitty ones. Slack is like a replacement for all the mobile apps my tools should have.
I don’t find Slack particularly useful for focused discussions, so I doubt it will replace email anytime soon for us. Things like product discussions/debates are best via email. It forces you to think before you type and have a clear back and forth with someone.
Small gripe: I wish Slack would disable email notifications by default, I still haven’t figured out how to turn those off.
It is no secret that we use Mattermost at Faelix — after all, it is a product we already support to be able to offer it to our customers. And like many network operators we use Oxidized to track and log changes to our routers and switches, even when those changes are made by automation tools.
As part of our move to using more ChatOps within the business I wanted to get visibility of network changes within our network operations channel in Mattermost. A quick and dirty script achieved this.
Slack is an instant messaging and collaboration system It unifies your entire team communications, making your workflow, well, flow a lot better. It is a cloud-based set of proprietary team collaboration tools and services. Slack teams allow communities, groups, or teams to join through a specific URL or invitation sent by a team admin or owner.
Hipchat provides a comprehensive and searchable chat system for development and customer relations. It is integrated with GitHub and JIRA so our developers can have specific rooms for each project, and we also have rooms for each customer tied into their Twitter feeds so we know what is relevant and can track issues via Nagios alerts.
Slack is our go-to communication tool and it's slowly replacing emails across all departments of the company. We built our own Slack Bot to help us with simple DevOps stuff; Honeybadger notifies us in real time of errors happening on production in our monitoring channel; CircleCI reports builds status and deployment info as well.
Everyone in our company uses HipChat. From our help center to our engineering department, we do most of our internal conversations in hipchat rooms. Also as a remote engineering team, it is super useful to have a service like this so that conversations are logged and in the open.
Team comms is essential. The R&D team is distributed over two offices, as well as the chance that people are working from home. Slack provides lots of options of keeping individuals and groups up to date. We also use it to integrate into services such as Github and Sentry.
Slack is a lifesaver, not only for our day to day team communications and it's direct links into our other tools, but for Beta testing as well, with our custom Slack bot in our beta group being an invaluable asset to avoid giving our testers direct JIRA access.
Part of our team are spread over cities and they are connected by chats or conference, sharing insights, alerts and tech discussions.
I use HipChat to communicate with group members. I like that I can hop on and catch up on any conversations that I missed.