Slack - How Developers Communicate

Published on Friday, June 5, 2015

By Michael

The developer chat room

For many years the dev team has used chat rooms to communicate with each other. The ability to ask questions to a group of your peers, and get answers right away, is extremely useful for getting things done as a developer. But how do you get people to pay attention to the incoming questions?

Answer: Mix fun and humor with questions.

flask

That's where slack comes in.

Slack, so hot right now

slack

For years the developer chat room was hosted on an IRC server. IRC is a text based chat interface that has been around for over 25 years. While it had served the company well for a long time, we couldn't ignore how much better the next generation of chat software had become. So we recently upgraded to Slack. Slack's beautiful web interface makes it more comfortable for members of the rest of our team to communicate with our developers. people

Developers gonna Dev

Just chatting in a chat room is not enough for a developer. Developers love playing with software. So of course a "bot", software that talks in the channel but only responds to certain commands, has long been a member of our chat rooms. And over time, it has become an important part of how we communicate here.

Looking up word definitions

dictionary

Saving hilarious things that people have said in chat for later retrieval

quote

Making a haiku out of a website's text

haiku

Making an anagram out of someones name

anagram

Finding ridiculous stock photos

stockphoto

Finding ridiculous animated gifs

getgif drevil

Run some python and print the result

python

And, one of the more interesting uses, allowing us to record whether we we love or hate any given thing in the entire world

fruit

Thank you has lost its meaning

Of course when someone helps you out, you automatically say thanks. But we hear this so often, and say it so instinctually, it almost doesn't even register anymore.

Karma allows us to take anything we can type into chat, and express our opinion about it by increasing or decreasing its score. At any time we can check the total score of that thing.

So for example, if I type "docker++" in chat, I'm changing the score of "docker" to be 1 more than previously. Sort of like upvotes and downvotes on some modern social sites (reddit, stackoverflow). karma

Most importantly, we use this to show appreciation for when someone helps us, or approval for what someone did or said. To be clear, this score is meaningless. There is no way to cash out for prizes, and no one judges anyone based on their score. Some people never upvote or downvote anything, and this is fine. But there are very good reasons that it has caught on. Many of us use it to communicate with the group.

We use it to complain about processes or software that are giving us trouble: java

It helps us show the magnitude of our gratitude when someone helps us out on a tough problem: jp

We also use it to show that a joke has hit its mark with us: electrician

Coming soon - Part 2: Data Analysis

Part 2 will visualize 5 years of karma data, with over 100 000 upvotes/downvote entries, showing some very compelling insights. Come back soon to read this article.