I'm shocked at many of the responses here, when people will also complain about hostility towards remote workers.

Slack is a vital part of my working, PARTICULARLY when one of the parties is remote. Sure, as this article is saying, having some space to not be interrupted is a good thing - but that's hardly the same as saying USUALLY having no synchronous option is good, much less EVER having a synchronous option.

1) Email was great...until too much crap showed up in email and people stopped reading it. Remove the synchronous option and you'll just have another form of email. The Mythical Man Month talks about communication overhead -

2) The vast bulk of my slack communication is quick questions/answers. Sure, an interruption is annoying, but usually well worth it if it unblocks someone. (and when that someone is me, I value it much more). The value here tends to vary in proportion to someone's quick response time. I have a few coworkers that wont' check Slack more than once or twice a day. I hate having to work with them on anything, and we tend to have more scheduled meetings that are far less efficient. Others can be counted on to respond within 10 mins, and usually within a min - working with them is a breeze.

There is definitely a number of tricks to adopt and etiquette to follow...just like any form of communication. It can be used poorly and have more costs than benefits, or well and have the reverse.

My tricks:

* I replaced the default notification sound with something less jarring. Basically a gentle sound that clues me in to glance at the notification. If it's not something I need to respond to, I'm usually not pulled out of flow. This is a huge difference.

* When that notification is still too much, and/or someone starts a detailed chat about something I don't care about, `/dnd 10min` tells slack to shut up for a bit, without me having to tinker with settings and worry about remembering to UN-tinker those settings.

* If using a Pomodoro technique, add in a scan of Slack between sessions. That's fast enough that most people are happy and not blocked long, but doesn't break up your work efforts. This advice is only partially tested, as I'm still struggling to adopt a routine.

* Many people will tell you to turn off notifications - I recommend AGAINST this unless you're using a technique like the last to make sure you don't miss things. Instead, make sure you're only in channels that are relevant to you - if you're getting pinged and aren't interested, the problem is not the tool. In particular, you want to manage the expectations about reaching you - if people think you aren't responding, they'll just get more annoying, not patient. I have coworkers that will often join into channels for related teams, get their answers, then leave...a process they repeat possibly multiple times that day, while I hang out in many, many channels. Both ways do the job well.

* I gave a presentation where I worked on effective ways to communicate with text. One of the best is to not ask A or B questions - instead ask yes/no questions.

Not: "Is the API key for foobar still in file.env? Or is it from the new service call?" (You will be told "Yes" or "no" and have no idea what the actual answer is)

Instead: "The API key for foobar is still in file.env? And not yet from the new service call?" ("yes" or "no" will have a clear meaning)

This technique alone has taken a big bite out of my frustrations in using slack (and any other communication) and reduced unnecessary traffic, though it takes some practice.

I responded to Slack pings in the course of writing this :)