Mattermost vs Slack

Open source, on-premises, Slack-alternative. Like Slack, you can send messages and files across channels, get notifications on unreads and mentions, and search history–all from your PC or smartphone.
Slack brings all your communication together in one place. It's real-time messaging, archiving and search for modern teams. Create open channels for the projects, groups and topics that the whole team shares. Slack searches whole conversations, not just individual messages, so you can find what you’re looking for no matter who said what or when they said it. Slack free open-source (self-hosted) alternatives are: Mattermost, Rocket.Chat, Zulip
Face to face in the news:

2016 - Slack launched "Sign in with Slack" feature to stand out over Mattermost

Slack unveiled a new feature called “Sign in with Slack”, which will let Slack users sign into and use other apps using their Slack identities. So, it will compete with Facebook and Google that share this market. “Sign in with Slack” could turn Slack into the identity provider for the enterprise. Rather than having to remember a login and password for every different workplace app, you’ll be able to just use your Slack login. The move takes advantage of the fact that everybody in a company needs chat. While other workplace apps might only be necessary for certain departments, messaging is the thread that ties a business together. The launch-partners, supporting Slack-identity include the cloud-based word processing and collaboration app Quip, Figma, Kifi, Officevibe, Smooz and Slackline.

2015 - Mattermost - open-source, on-premise Slack-alternative

GitLab, the git repository management provider, and YC alums SpinPunch have launched Mattermost, an open source, on-premises messaging app (like Slack). Many larger organisations run all software on-premises, often because of security, scale and control, but Slack doesn’t offer an on-premises version. Developed as a team communication service Mattermost allows users to send messages and files across various channels, receive notifications and/or alerts and search history on PC and smartphone. You can implement hashtags to organize messages and threads, create team-specific color theme and archive important communication for future reference. In short, a much easier and more efficient way for remote teams to work together and exchange messages when compared to email (starting to sound like a dinosaur at this point).