How I Slack (2022)

Each Slack team I’m on has a different set of humans building their own unique communication culture. I’m actively on six teams: Work, Leadership, Destiny, two private nerd Slacks, and a private family Slack.

Three out of my six teams have 100+ active humans, 100+ channels, and are high traffic with hundreds to thousands of messages per day. The majority of my interaction centers on these teams. If I’m away from the keyboard for a few hours, my sidebar can be ominously full of unread channels and conversations. Looks like this:

In this piece, I’ll explain how I use the desktop version of Slack to sift quickly through these channels and conversations. If you’re on a Slack team with one channel and ten humans, much of the following will feel like overkill, but there are helpful optimization nuggets below. Important to note upfront that I am the former VP of Engineering at Slack. The following is full of my opinions, quirks, and neuroses and not those of Slack.

A Game of Microseconds

The rule has always been: if my hands leave the keyboard, I’ll screw it up. For years, I’ve written about the maddening imprecision of the mouse. With due respect to illustrators and other deft operators of the mouse, I am presented with too much optionality when I am required to use one. It is the intrinsic power of a mouse that its default workspace is my entire desktop – each and every pixel is available to click, whether it’s the suitable pixel or not.

I understand and appreciate that the mouse’s broad optionality is perfect for novice users. It allows for curious unhindered exploration, but once a mouse teaches us the virtual landscape, a mouse’s utility fades once we understand how to work, and I need a clearly defined path to move faster. There is no more important area where I need to move quickly and efficiently than how I communicate.

Keyboard support has always been quite good in Slack. This is good news because my ability to quickly and efficiently find, triage, and respond to information within Slack is not a mouse task; it’s a perfect keyboard job. There are a handful of well-defined actions that literally instantly need to be at my fingertips. Let’s start with two related essentials:

Switch to my unread things ( CMD-K / Ctrl-K (Mac / Windows) ) If there is only one keyboard tip I want you to remember, it’s Cmd-K. The Quick Switcher is inspired by LaunchBar, QuickSilver, and other handy context switching tools, and it’s dead simple: hit Cmd-K and start typing the name of a person or a channel, and when you see what you need, you can instantly jump to any context by hitting ENTER. If I’ve been away from Slack for a bit, I hit Cmd-K and glance at the list in Quick Switcher. It’s a prioritized list of direct messages and unread messages.

Show me a recent conversation ( CMD-SHIFT-K / Ctrl-SHIFT-T ) Throw a SHIFT into the Quick Switcher keyboard combination; CMD-SHIFT-K (or Ctrl-SHIFT-T on Windows) brings up Direct Message Quick Switcher. What I’m looking at here is a history of all of my single and multi-human conversations sorted by time. The more I work with an existing team, the more I find this conversation history useful daily. As single or multi-human conversations tend to be higher signal since they’re directed at me, this history is full of conversations between individuals and groups that I need at the ready for the next week.

Don’t Read Everything

Aggressively Join Channels : I don’t join every channel available, but the bar to get me interested in a channel is incredibly low. Any interest at all and I’ll join. With the current default Slack configuration, this can lead to channel sidebar proliferation, but here are my sidebar set-up moves:

Remove Sidebar Detritus: The sidebar can have a lot of different categories, many of which you don’t need. I fire up preferences, select Sidebar, and only check All DMs, Mentions & reactions, and Slack Connect (these are Slack channels across workspaces). Underneath that, I select Show… Custom, depending on the section. More on this choice in a moment.

Create Channel Sections: Slack allows you to group conversations into different sections. I have a different strategy for each high volume Slack, but over at the Rands Leadership Slack, I created an Admin section and a Project section. Along with the default star section, I use these sections to either categorize different channels or, in the case of Projects, flag a channel where I have a non-trivial project in flight.

Set Section Preferences: For sections with more than a few channels, I select the section menu and set the defaults only to show unread messages and sort by priority. This used to be a global setting in preferences but is now a per section preference, and it’s the number one thing you can do to decrease channel noise. Only show me channels where there is recent activity.

This Sidebar nip’n’tuck is magical. Here’s the before and after:

You will note that all of your custom sections are collapsible, which means if a section is bumming me out, I can collapse it and deal with it later.

With this set-up and after a few hours of activity, my unread count builds. So, I merrily Quick Switch my way through this unread activity. If I need to respond or don’t have time to answer, I will either Star or Project a channel depending on the amount and type of work. This makes my sidebar a draft of my to-do list relative to this Slack. This strategy has kept my sidebar tidy and easily under control, even the highest traffic Slacks.

Two other points:

My attention is a precious thing, and if the reason I joined the channel in the first place is gone, I want to spend my valuable seconds glancing elsewhere. So, I type /leave.

Yes, when I get behind, and when I end up in this state, the keyboard command I use is Ctrl-Esc. This marks everything read. The FOMO inbox zero zealots in the audience just freaked out a bit. What if there is something important in those channels? How do I know what’s essential without reading every single message? Wait for it.

My Sidebar is not my Inbox

For a large group of humans in a company using email, we believe that we’re doing each other a favor by making sure the TO: line of this critical email is populated with the correct humans and mailing lists. Also, protocol dictates the proper construction of the CC: line for the humans who are slightly less essential than the humans on the TO: line. We believe we’re doing the right thing because we believe this is the only way they’ll find this essential information.

This is incorrect. We’re lazy.

It’s not deliberate laziness; it’s tool-induced laziness where we feel the need to blast every possible human with this essential piece of data because we believe that email is the only source of truth. This makes our inbox a sacred place because it is our connection to our fellow workers. Conversely, we feel that if the information is in our inbox, we have a deep compulsion to read it.

Three questions: How much time have you spent constructing mail filters for mails sent TO YOU that YOU REQUESTED that end up in folders that you NEVER EVER READ? For all of those emails actually in your inbox, how many did you read? Finally, how many days of your life have you lost worrying about your inbox?

My working and perhaps incorrect assumption in a Slack team are that if a piece of information needs to get to me, a qualified human will make sure I get it by either using the @name convention, sending me a direct message, or creating a channel for us to have a long-running discussion of this essential information. Ctrl-Esc doesn’t delete a thing; it just marks it read.

Three More Keyboard Essentials

Further means by which I avoid the mouse:

Edit ( Up Arrow ) Anyone who follows me on Twitter knows that I excel at making typos even with the fixed availability of the 78 keys on my keyboard. All the time. I altogether drop entire words during caffeinated keyboard fury, and Slack messages are no exception. Hitting the UP ARROW in Slack allows me to select a message, and hitting E will enable me to edit the message. Strangely, this feature gives me so much joy.

Forward and Back ( CMD-[, CMD-] / Alt-[, Alt-] ) The defining characteristic of the keyboard is that it allows me to move fast. Often I’ll blast right past a channel with an essential piece of information that won’t be relevant until I’ve visited a few more channels. What was that channel again? Like a web browser, CMD-[ and CMD-] allow me to page through my channel viewing history. Handy for that piece of information that just zipped by but suddenly becomes important five seconds later.

Emoji reaction ( CMD-SHIFT-\ / Ctrl-SHIFT-\ ) I’d resisted emoji for years. My opinion was the same as my opinion of all messaging abbreviations. If you want to say something, take the time to write the words. Slack changed my opinion about emojis, and the reason is, again, efficiency. There is a type of communication where all I need from you is the smallest of acknowledgments. I don’t need commentary or an opinion. I need to know from you: yes, I received this. Emoji reactions are the perfect low-friction way to deliver this acknowledgment. Here are my current top three Emojis and my internal mental translations.

👍 – Got it.

🙏 – Thank you.

– This… is awesome.

Emoji usage can quickly lead to emoji madness, but when I think about the cumbersome alternative: reading mail, hitting respond to generate another mail, typing “Got it!” and hitting send, well, I’m ok with dancing penguins.

The Right Tool for the Right Job

When did I send my first email? Wow, I think it was during the 80s. It was a pre-Internet email on a forgotten Silicon Valley BBS, which means I’ve been using email as a means of communication for around three decades. Sometime during the 90s, it became my primary means of written digital communication. Like other message platforms, Twitter and FaceBook have certainly provided new forms of connective tissue; email has remained an essential part of my communication life.

Slack allows me to rethink a means of communication that hasn’t fundamentally changed in decades. Slack provides me with a valuable set of communication primitives that continues to have me experimenting. I’m trying new approaches to communication paths I thought were forever fixed, which deserves a…