Mattermost – IRC for the 21st century?

IRC is probably one of the oldest instant messaging protocols, which is still being widely used, especially among the IT and FOSS communities. One of the most known services out there is freenode which has more then 80K users at the moment.

IRC is great, but it has limitations and challenges, which make its usage not very convenient comparing to other more recent tools, especially if you are not an engineer 🙂

Some of the challenges of IRC:

  • multiple sessions on multiple devices

    most of the recent instant messaging apps (Slack, Skype, Google Hangouts ….) store the communication on the server and you can access the same data and communication history on any device (cellphone, tablet, multiple desktop / laptop computers)

  • access to messages while you were away

    common feature of the more recent solutions out there, you can workaround that by having your “main machine” always online and your IRC client always on not to miss a thing, but not really convenient, nor eco-friendly

  • searching the message history

    unless you are used to working with regular expressions and tools like grep, it is hard to find the desired part of a historic conversation in tons of text files, especially when users often change their user names like jfolta / jfolta_ / jfolta|lunch / jfolta|meeting / jfolta|afk … so you do not even know which file to search..

  • client applications not really user friendly

    there are a lot of alternative IRC clients, I have mostly been using xchat, which is not very straightforward for non-technical people

We were looking for an alternative which would enable us to have a more up-to-date tool and would integrate with IRC in order to be able to talk to our colleagues, who are still using it. Mattermost looked like an ideal solution, because it is an open source, self-hosted Slack-alternative, which integrates with IRC and other protocols and applications.

Proof of concept

I will be pretty brief with the details, you can learn more when you click the links. As the server for deployment I used my vpsFree with Debian 8 “Jessie” and Docker, which was first not very straightforward, but thanks to a great knowledge base article I managed to do it. You can use any other machine/platform compatible with Docker based on your preference.

Now, you can do a one-line Docker Install of Mattermost

docker run –name mattermost-dev -d –publish 8065:80 mattermost/platform

Once Docker is done fetching the image, open http://serverIP:8065/ in your browser and you should have Mattermost up and running

Screenshot 2015-11-26 at 20.25.30

 

now you can create your team, invite other users and start collaborating already. To integrate the IRC protocol I used Matterbridge.

For the purpose of the proof of concept I used freenode IRC and I was able to chat with myself using both the freenode web interface and my Mattermost instance, which was a little schizophrenic, but served the purpose of testing the functionality 🙂

Screenshot 2015-11-26 at 20.43.45

I have been playing around with Mattermost for the past couple of days and here are some of things, which I really like:

  • super-easy and fast to deploy, great documentation
  • open source, active community, you can easily get help and get involved in the project
  • integrates with IRC and other protocols
  • self-hosted, you are not sending any data externally
  • stand-alone clients for major desktop platforms

So what is next?

I would like to deploy Mattermost internally, hook it up with our internal IRC server, pilot it for our local team and enjoy the benefits of both worlds – the user base of IRC and the features of Mattermost

Special thanks

TylerMattermost, vpsFree, DockerMatterbridgefreenode

BFS/BaaS – basic loaf recipe

Based on my workshop during this year’s https://openalt.cz conference, here is the basic loaf recipe.

  • 3 cups of flour (rye / wheat, wholemeal / regular) – try different mixtures for different results. Regular white flour (wheat) will give you the basic white loaf, 60:40 mixture of wheat:rye will give you a standard Czech loaf “Sumava”
  • 1 cup of water
  • 1 teaspoon of salt
  • 1 teaspoon of caraway seeds (mixture of whole and crushed)
  • (optional) 1/2 cup of seeds (sunflower / hemp / chia / flax / pumpkin / ……)
  • 1/2 cup of sourdough starter

Mix all the ingredients and knead the dough, put in a rising basket, cover with a plastic bag. wait until the dough doubles in size, the time is very dependent on a lot of factors, usually takes between 3-8 hours.

IMG_2261

Preheat the oven, transfer the risen dough on a preheated baking tray. Start baking on high (250 degrees)

IMG_2223

spray a little bit of water inside the oven at the beginning – it will create vapor and will help the bread raise even more

IMG_2194

turn to lower temperature (180 degrees) after 15 minutes.

IMG_2227

Bake for another approx. 25 minutes (check the color). As soon as the loaf cools down a little bit it is ready to go!

IMG_2301