back to index

I love WeeChat

Filed under:

Instant chat is, for me, one of most annoying things. Right after cat videos and mobile phones.

Instant chat gives promise of instant attention to others and makes sure your day is going to be interrupted at least few times a day. We've all heard from our friends: "Why are you not picking up your phone?" or "Why are you not replying to my Skype messages?". And when you do reply, you hear: "How are you?". Nothing sets me off like this does. Not even videos of running lamas.

Instant chat gives promise of instant attention.

While non of the programs, yet, can really solve the above mention problems, I would at least expect, to be able to adjust how I'm interrupted and for what and to integrate with my working environment, not the other way around.


WeeChat is primarily an IRC client. I got introduced to it while diving into open source development years ago. IRC is de facto standard of communication for most of the open source projects. And many companies, that care about open source, also adopted it as their primary tool of communication. There is no real direct correlation between IRC and companies providing nice working environment, but from my personal experience, you can expect a lot more nicer-to-developers management, from a company that uses IRC. This is not a rule, but merely my observation.

You can expect a lot more nicer-to-developers management, when a company uses IRC.

But WeeChat, for me is more then just an IRC client. It is possible (via bitlbee and other extensions) to connect to any communication protocol out there (Gtalk, Skype, Jabber, Slack, ...). Further more, it is possible to use it on almost any device (Android, Emacs, Web).

WeeChat for me is more then just an IRC client.

It is very well documented and with simple tweaking of the options you can get that custom notification system I was talking in the beginning. I am not saying WeeChat will properly manage notifications out-of-the-box, I'm saying it will able you to configure notifications that result in less work interruptions.

While IRC is an old protocol and most IRC clients stopped or slowed down development, WeeChat development is still under active development, giving us few releases every year and has a vision how to move forward.

I will not dive deep into my setup of WeeChat, but in an overview it looks like:

  • Always running WeeChat instance on my server with relay option enabled. WeeChat relay is a small internal protocol which uses (web)socket to communicate between 2 instances of WeeChat, one acting as master and other as client.
  • Running WeeChat on my leptop on my leptop which connects to my server instance via socket.
  • When away from my leptop, I can still access all my communication channels, via Android WeeChat client on my Android phone.
  • you can look the rest of the WeeChat setup here.

In future I'm hoping to bring this setup further with web client, but until now there was no real need for this.

Slack, really!?

Do we really need yet another instant messaging protocol? Would you really trust a private company (especially U.S. company) to handle all of your communications? Haven't we learned anything in the past years? Do we really need Slack?

Please point me (via Twitter) to the feature which is innovative in Slack. I just don't see it. Am I the only one that does not see anything innovative Slack?

Please don't tell me about better user interface? There are many IRC clients which do at least as good job at what Slack does, if not better. Search on Google for me then 3 minutes and you will find many.

And if you still want to give all your data to strangers and like to use a service, go with irccloud. Just don't let Slack lock you into their proprietary chat solution solution. Be smart and look a bit further into the future.

Why I'm even mentioning Slack?

At my current company, RhodeCode Inc., our primary tool of communication is Slack. I guess our decision makers were sucked into their marketing. And I think their marketing really is awesome (no sarcasm here), because, if you can sell a proprietary messaging solution in 2015, you must be a marketing genius.

Still, we are a young company and, we make mistakes all the time. The thing that make me very happy working here is that we learn, fix and change if need to. I rather see us doing mistakes like this, choosing proprietary messaging platform, then failing at more business crucial decisions. I know that many decisions were made in a hurry, in the end we are still a startup, and that when time comes, those decisions will be properly re-evaluated.

WeeChat + Slack

Anyway, if you're in a similar situation like me, then look no further then WeeChat. Recently a WeeChat plugin, called wee-slack, was developed which lets you connect to Slack directly via their HTTP API.

There is also an option in Slack to connect via their IRC gateway, but needs to be enabled by your company administrator. They would sometimes refuse to enable it, because there is no way to enforce SSL connection from IRC clients.

After painful half a year of using developer unfriendly Slack client, I can finally relax, knowing that WeeChat handles all of the instant messaging for me. One tool to rule them all. :)

For comments or corrections please send me a tweet or better write a blog post in response and then send me a tweet :)