Mattermost does open source the right way.
Open source software that is to succeed in this new world is going to have to be better than anything else. You can’t sell just openness anymore; it is added value, not a unique selling point. Open source software now has to sell user experience. In a way it is a simpler metric, and probably one that is going to change open source forever—for the better.
An exemplar of this new way is Mattermost, the open source messaging platform. Sure, they weren’t first to the game, because Slack blazed the trail. Who would have thought a sexier, easier, version of IRC would become the killer app? The smart people at Slack did, and their model has caught on fire. Rather than mourning the loss of open source developer chit chat to the closed source Slack, Mattermost just made a better product, which happens to have all the additional benefits of being open source.
Coko’s distributed team
We are a small team at the Collaborative Knowledge Foundation (Coko) and we are distributed with people in North and South America, New Zealand, and a host of European countries. We also have collaborators from almost every continent. We need to work fluidly over great distances, and for this reason we rely heavily on Mattermost.
Our Mattermost installation has just one team and three channels. The Townsquare is where everyone gathers for general chit chat, and it is used all day everyday. Many of us use the iOS or Android clients, which are very good and extremely useful for keeping in touch as we are roaming around. For a while I integrated the Giphy extension (for animated GIFs), which was fun, but it got annoying so we turned it off. Plain vanilla works for us best. We have an “Intro Yourself” channel where newcomers are welcome to post short personal bios. I like this channel a lot; it is an opt-in of course, and no one is required to post a personal outline, but thankfully it is catching on and it helps everyone get to know each other. And lastly we have a channel which is fed by GitLab hooks, so any interesting push is notified in the channel with a nice summary.
That plus the email notifications and private messaging is all we need. We love it; it is snappy and fun to use and there is no learning curve. We think it is better than Slack because there is at least a parity on experience for our users, it has some cool features Slack doesn‘t have, and the openness is added value. The openness translates to a better user experience in some cases; for example, we didn’t like the emojis at first, as they seemed a little evil. So I posted to the Mattermost forum that I didn’t like them, and someone saw that comment and changed them. That made us all very happy and we really felt the love of openness at that point.
Better features than Slack
As for features that beat out Slack, we really like the easy support for syntax highlighting of code snippets. Simply preceed a snippet with three backticks (“`) in the channel and paste your code. It will come out looking nicely formatted and prettified.
We can include shortcuts in our channel headers using the Mattermost markdown syntax, eg:
[PubSweet Core](https://gitlab.coko.foundation/pubsweet/core) & [INK Core](https://gitlab.coko.foundation/INK/ink)
This creates live links to the repos from the channel header:
You could also use that to include a build status notice for each project.
Lastly, our foundation is building collaboration tools for knowledge production, and we are working on several publishing platforms. I tried some simple experiments with Mattermost integrations and our platforms using webhooks. Essentially, the idea was to set up a kind of command line for exploring our content store (PouchDB) using Mattermost keyword webhooks. It works perfectly and was easy to do. It was a very inspiring proof of concept, and we are very likely to explore integrations of this kind in the future.
Mattermost is doing it the right way: designing and building a beautiful user experience, and backing it up with the awesomeness of open source. Now you can make your users happy, and benefit from the four freedoms… that’s the way to do it.