
Mattermost: Open-source, on-premises, Slack alternative - aviv
http://www.mattermost.org/
======
javiercr
> _We’re a YC-backed indie video game company releasing an open source
> alternative to Slack._

Don't want to troll you guys here, but if you're a video game company why are
you spending so much time building a Slack clone?

I was expecting some short of explanation in your blog post like "we did this
because this serves as a core piece of our company for X reason and Slack
didn't fit our use case for Y reason".

~~~
pornel
It may be a perfect match, given that _Slack_ has been created by a game dev
team too:

[https://en.wikipedia.org/wiki/Slack_Technologies#Initial_fun...](https://en.wikipedia.org/wiki/Slack_Technologies#Initial_funding_and_Glitch)

~~~
atombender
It's rather funny how Stewart Butterfield keeps trying to build games, and
ending up with social apps.

His first company, Ludicorp, tried to build an MMORPG called Game Neverending,
which never launched, and they pivoted to create Flickr, apparently based on
the same platform (which is why ".gne" URLs proliferated Flickr originally).

With Tiny Speck, he created Glitch, another MMORPG, which closed a little more
than a year after launch. Tiny Speck then pivoted to launch Slack, based on a
chat app they had built internally while developing their game.

~~~
misterbwong
It makes sense, in a weird way. MMO's are such huge projects that developers
are forced to create supporting subsystems to complete it (e.g. Image/asset
processing and storage system - Flickr, in-game chat and collaboration system
- Slack).

I'm impressed that Stewart Butterfield is able to look at these systems and
recognize which ones could be a viable (and successful!) stand-alone product.

------
volent
I don't really get why there is so many Slack alternatives coming up these
days.

On every post like this there is tons of comment linking to other Slack
alternatives, it's not like this is gonna be _the_ Slack-alternative.

Here is a non exhaustive list :

RocketChat :
[https://news.ycombinator.com/item?id=9624737](https://news.ycombinator.com/item?id=9624737)

Let's Chat :
[https://news.ycombinator.com/item?id=9040841](https://news.ycombinator.com/item?id=9040841)

Friends :
[https://news.ycombinator.com/item?id=9461504](https://news.ycombinator.com/item?id=9461504)

Gitter :
[https://news.ycombinator.com/item?id=6739074](https://news.ycombinator.com/item?id=6739074)

~~~
StavrosK
Has anyone used a self-hosted one they were satisfied with? Which one?

~~~
mrmondo
Let's chat looked great but we were a little put off by mongodb and something
else that escapes my mind right now so we ended up sticking with OpenFire for
our XMPP server / chat rooms for the time being although it certainly has it's
share of bugs.

~~~
StavrosK
Ah, an XMPP server is a good choice for IM for us, although I can't get the
team to stick around in the channels for very long. Maybe that's a culture
problem, though.

~~~
mrmondo
I'd say it likely is a culture problem, the first thing all our developers,
project managers and engineers do when they get to work is login to the chat
server. Everyone has their clients (mostly Adium with a few running Pidgin /
Empathy) set to auto-join a couple of rooms, we have one called #devops that
most people join and then one per major product that people may be working on.

~~~
StavrosK
The thing is that we prefer to communicate one to one on IM. Everyone logs
into the chat server, but they don't use rooms as much. That's probably
because everyone is in separate teams, and each team prefers different ways of
communication.

------
jsmthrowaway
> Teams who can’t use SaaS rely on cryptic, decades-old technologies. As an
> example, the US Army uses myIRC to order missile strikes

"myIRC" doesn't exist. The name of the protocol is IRC. The name of a popular
Windows client is mIRC. WikiLeaks called their leak "mIRC logs," which is
where this trope came from.

The United States military (not just the Army) uses Internet Relay Chat for a
whole lot of C2. It runs on a network, both IRC and IP, dedicated to the
purpose. Given how long IRC has been in existence, that they've been doing it
since the early 90s, that the use case is _the perfect ideal_ for IRC, and
that the average modern Web app is less reliable than my last Datsun, I have a
hard time finding incredulity at sticking with something that works.

Even beyond that, IRC is text-based. It is not cryptic. An IRC client is a
common first software project. About twenty lines of Go gets you a bot. You
can make IRC look exactly like Mattermost with a week of hacking in your
favorite framework of choice, and then you're not reinventing fanout. Entire
products have been built atop IRC.

Even beyond _that_ , guess how many protocols are decades old in just the
software development workflow for this product. Pretty tired of "that's old,
let's do it better," even though I hate finding myself on this side of
_defending_ IRC.

~~~
Dowwie
How many open source slack alternatives before someone writes one that
actually utilizes the IRC protocol?

Is there a defensible argument against using IRC?

~~~
lorenzhs
There already are a number of IRC client web frontends. The one I'm working on
is Glowing Bear -- [https://github.com/glowing-bear/glowing-
bear](https://github.com/glowing-bear/glowing-bear) . It uses a proper IRC
client running on a server (WeeChat in a terminal multiplexer) and connects to
that via WebSockets. Minimal reinvention of the wheel, and you can continue
using all those nice scripts, triggers, and filters that WeeChat offers. The
frontend (Glowing Bear) is completely static and runs 100% in your browser,
connecting to _your_ server directly.

I really don't get those projects that consist of a designer frontend and a
terrible half-baked IRC client in nodejs.

~~~
mratzloff
Designer front ends matter. You have no screenshots, which is going to
severely limit adoption. If the design is average or subpar, it will limit
adoption.

Also, integrations with third party services matter. Everyone seems to ignore
this, but it's critical.

~~~
lorenzhs
Uhm, there is a screenshot in the README, both for mobile and a desktop
browser. Maybe we could move it up a bit more. As for the design, sure, you're
right that it matters. We try to keep it as clean and intuitive as possible,
but none of the core devs is a designer, so we just do it as best as we can.
Ideas for improvement (or even pull requests) are always greatly appreciated!

For third party services, Glowing Bear has a number of plugins that embed
various content right in the conversation (images, youtube, spotify, etc). Not
sure if that's what you're referring to.

~~~
mratzloff
The uhm is unnecessary; I don't see any screenshots on the GitHub page, linked
or otherwise. The page linked from the website is
[https://github.com/mattermost/platform](https://github.com/mattermost/platform).

For third-party services, I'm talking about things that matter for getting
work done. For example, issue trackers like JIRA.

------
timdorr
Here's the code:
[https://github.com/mattermost/platform](https://github.com/mattermost/platform)

From the look of the screenshots (
[http://www.mattermost.org/70-2/](http://www.mattermost.org/70-2/) ), I'd say
there are some copyright concerns with the styles. This isn't a Slack
alternative, it's a Slack clone. That's very problematic from a copyright
stance. Why not create your own design style?

Gogs had (has?) this same issue:
[https://github.com/gogits/gogs/issues/1069](https://github.com/gogits/gogs/issues/1069)

~~~
chii
> That's very problematic from a copyright stance

why? they didn't copy slack (i assume) - it just looks similar. Slack doesn't
(and shouldn't be allowed) own a look and feel, as long as the implementation
of it is cleanroom.

~~~
nieve
[https://en.wikipedia.org/wiki/Trade_dress#United_States](https://en.wikipedia.org/wiki/Trade_dress#United_States)

I have no idea if Slack could actually win a case, but in the US (where both
companies appear to be headquartered) they do have some rights to look and
feel as part of trademark law.

~~~
chii
Interesting. There's potential for that as a basis for a civil suit, but i
really doubt that the open source alternative could really be argued as trying
to misrepresent or cause confusion as to the origin of the product. It'd be a
hard case.

------
it33
Mattermost team here,

There's been a number of questions of what's coming from Mattermost, and how
we design things. I wanted to share some raw, unpolished work we have of
what's coming up.

It's a feature called "App Center" that we're working on to support 3rd party
applications.

It's just a Google Doc of our early design that we're sharing on Hacker News
to get feedback: [https://docs.google.com/document/d/1s6vrticxgz9PsxePQ-
dFrsKp...](https://docs.google.com/document/d/1s6vrticxgz9PsxePQ-
dFrsKpwImAjn7KdL4uaioEEns/edit)

Would you find this interface interesting for building 3rd party apps?

What do you like about the design?

What do you wish we changed?

There's a couple 1st party Apps we'd start with, like an Admin Console and a
Custom Web App. We're thinking there could be a marketplace for 3rd party
workflow apps.

Example: create an "Expense Report" app where a user can upload the photo of a
receipt from lunch from their phone and type "#expense #meals" and have a 3rd
party app create a labeled expense report that would be viewable in App
Center.

Would love to hear thoughts from the community. This is an early idea, it's
just a Google Doc right now. Your input would help shape it.

~~~
bitsweet
this is how you earn revenue as an OSS platform company (once you get it in
the hands of everyone aka build a network)

------
tracker1
One thing I really like and appreciate is that there's a dockerfile right in
the root of the project, which makes spinning up a container a relatively nice
experience... haven't run it or looked into the code though... that just
struck out at me...

Looking at the dockerfile, it seems pretty big, and it also strikes me
slightly that they have dependencies on node, ruby and go, along with mysql
and redis. The UI appears to be react based.. not sure what's running in ruby.

~~~
sciurus
I think it's nice that they support Docker, but I was disappointed that their
entire installation instructions were "install docker then run our image". I
had to read the dockerfile and the "start" script to find out what the actual
dependencies and setup steps are.

[https://github.com/mattermost/platform/blob/master/Dockerfil...](https://github.com/mattermost/platform/blob/master/Dockerfile)

[https://github.com/mattermost/platform/blob/master/docker/do...](https://github.com/mattermost/platform/blob/master/docker/docker-
entry.sh)

Surely even docker users don't want to run this app, mysql, postfix, redis,
react, and compass all in the same container?

~~~
ptman
I agree that a dockerfile isn't perfect, but it's not that bad either as a
machine readable install guide that doesn't fall out of date as easily as
documentation written for human consumption.

------
synchrone
Also, there is [http://getkaiwa.com/](http://getkaiwa.com/), with roughly the
same features, open protocol and a built-in LDAP. Hubot integration is also
possible.

------
DoubleMalt
Nice project but the documentation is a bit terse (yet). We like
[https://github.com/sdelements/lets-chat](https://github.com/sdelements/lets-
chat) atm.

Things that would be essential for me to use it in a company are

\- LDAP or OAUTH integration \- Hubot integration

I'm not sure Zapier integration cuts it for use cases where I want a self
hosted solution.

------
ryanSrich
What a horribly uncreative rip off. That may sound harsh but I'm a bit floored
that this is getting so much attention...but YC right?

Reproducing functionality and growing an idea is fine. It's the blatant
disregard to UX and UI where this company has literally pixel for pixel ripped
off slack.

~~~
tadfisher
> It's the blatant disregard to UX and UI where this company has literally
> pixel for pixel ripped off slack.

I'm finding it hard to parse this sentence. Are you saying ripping off Slack
is the blatant disregard, or are you saying Slack pioneered a blatant
disregard for UX and UI?

~~~
ryanSrich
Sorry about that.

What I meant was that Mattermost is blatantly disregarding their UI/UX by just
ripping off Slack. If design was that easy we'd all have the same
looking/feeling/functioning product.

------
it33
Mattermost team here. Thank you!! This feedback is awesome. Working on some
replies...

~~~
flyosity
Why don't you work on an interface that isn't a nearly exact copy of Slack's
before you work on some replies. Copying their functionality is one thing but
copying their look and feel is not only pathetic, but against U.S.
intellectual property laws. You guys made the equivalent of a Chinese knock-
off product. And why not focus on your startup instead of working on cloning
other team's hard work?

------
andmarios
Once a month an “insert something tech-related here” company releases an open
source slack clone.

While I am grateful to all you guys, how much free time do you have to work on
these clones instead of your main product?

I've tried so far let's chat and rocketchat and I liked them. I will give a
spin to mattermost and I am sure I will like it too. I think the one that
matures first, will be a big hit because we need a slack clone —as evidently
shown. But also as with any other open source / free software project it will
need commitment.

~~~
solve
Before you disparagingly call it a "clone" and "not their main project",
consider that free products often go on to crush their expensive first-to-
market predecessors.

The strategy of first seeking to monopolize the user-base, and then afterward
heavily monetizing it is a very well proven long term strategy by now. The
overnight success of Slack and some other SAAS companies may give some people
the impression that this strategy is suddenly irrelevant. It may not be.

------
uniclaude
That's all good, but the differentiating factor of Slack over Hipchat & the
like is how well it integrates with everything your team is likely to use. It
works seamlessly with Github, Trello and IRC.

I don't mean to devalue this product at all, but This is not a viable Slack
alternative, it's a generic (and good looking) communication tool. This said,
I commend the open source approach, it could probably help the product evolve
towards something much better and integrated.

------
pluc
You know what else is a great open-source on-premises Slack alternative? Most
IRCds.

~~~
coldtea
You know what is nothing like Slack in functionality and you'd knew if you
have used Slack? Most IRCds.

~~~
pluc
I use Slack everyday, and I disagree.

------
ywecur
There are many slack alternatives out already, as volent has pointed out. What
I'd like to see is one that is based on Tox technology.

Having a decentralised network would be much better as it would remove all
costs of self-hosting.

~~~
mempko
It is more oriented towards real time and spontaneous conversations, but my
Firestr project is a p2p chat/app platform. I am working on the idea of more
persistent conversations. Check it out, it is still alpha but works well. I am
always open for help to make it more awesome too.

[http://firestr.com](http://firestr.com)
[https://github.com/mempko/firestr](https://github.com/mempko/firestr)

~~~
ywecur
Hos does your network work? Is it compleatly distributed, like Tox or does it
rely on nodes?

------
AnonJ
Such self-hosted services might help us a lot, as Slack is currently blocked
in China already. I think the two main reasons are that the Chinese government
is unable to inspect the data at will, and also they fear sensitive data being
leaked to the US government easily, which is actually quite legit. No interest
in politics nonsense and having full control over your own sensitive data is
probably the best possible thing to do.

------
tyrion
I tried to spin up the docker container locally and it worked until it had to
send me a mail for registration.

Looking at the README it says that it does not work if my ISP is blocking port
25, which I don't think it is.

But anyway I created a droplet on digitalocean and ran the container there,
but "MySQL init process failed."

I would love to try this project, or at least try a demo deployment somewhere
:)

~~~
aargh_aargh
Me too, mail didn't arrive. Not possible to continue.

------
mosselman
Cool :). It would have been nice to see some more screenshots or product
videos in order to get a feel for it.

------
pbreit
Help: anyone able to get it going on Mac with Kitematic?

Does it set up mail server that can get email to my Gmail account? I signed up
but didn't get an email. Are emails dumped somewhere or possible to lookup
whatever I need to get started?

------
richmarr

      Unlike Slack, Mattermost is open source...
    
      Teams suffer when SaaS companies lose focus. Since it’s open source,
      Mattermost can endure through its community. If quality declines, 
      anyone can fork the code and take stewardship.
    
    

Open source and focus are the wrong arguments here.

(a) Mattermost is built by a video game company, so there _is_ no focus to
start with.

(b) Moving from a SaaS product to a self-hosted open source component runs
against the process of commoditisation so is ultimately only ever going to be
of niche value. After all, why spend scarce and expensive engineering time
setting up, maintaining, and potentially having to fork a product, when you
could just pay $however-much/month and not have to worry about it.

~~~
amandine
The problem of SaaS is having your company data stored by someone you have to
trust... So I reckon it depends on your use case: if I'm a small company who
doesn't want to bother running/maintaining the service then I'm more than
happy to hand it over to someone else and trust them. If I don't want to trust
anyone with my data I'd rather have something simple to deploy and run myself.

The same way that having a closed client prevents you from customising it to
fit your needs but can be helpful if you had no intention to do so in the
first place.

~~~
richmarr
Yeah, there'll always be companies like that but as more and more large orgs,
government departments, etc. migrate all their email over to Gmail, I'm
starting to consider that as a niche. Those orgs are also disproportionately
likely to want to build their own thing because they have a hope of making the
economics of scale add up.

~~~
orkoden
There are standards for E-Mail though. So you can move your mail around
different providers.

With your chat system it's a lot harder. You can't move your yammer content
into slack easily.

~~~
JupiterMoon
Is XMPP a standard? I know that everyone just ignores it.

~~~
richmarr
Yep, and Slack supports it, along with IRC.

~~~
JupiterMoon
Cool I guess that one can just transfer easily between vendors then?

~~~
richmarr
Not sure if XMPP covers that, I'm guessing not, but you _can_ export your
message history as a dump of JSON files.

------
vishaldpatel
Will there be plugin support so teams can share their add-ons?

~~~
mijoharas
Agreed, without a list of the features, or something to show what useability
is like (does it support markdown? code highlighting? e.t.c.) it's tough to
evaluate it.

Kudos to them for open sourcing it. It does look nice in the small pictures
they have of it.

------
eltondegeneres
Does it have email notifications? That's a killer feature missing from most
Slack replacements.

------
ocdtrekkie
Awesome to see more companies questioning Slack, and developing their own
solutions!

------
shmerl
So, can it be used as an improvement over XMPP? A new IETF standard may be?

------
ChicagoDave
Why is there no package? I have to use docker? Why? Why? Why?

------
vijayrawatsan
Are you planning to open source you android client as well?

------
brazzledazzle
Some of the comments here are... aggressive.

------
soasme
Better to have slack-compatible APIs.

------
hitlin37
can i run it on Linux?

~~~
icebraining
It's available as a Docker container, so yes, it can run on Linux (with or
without Docker).

------
UserRights
no ldap?

------
caustic


