The best feature of Slack is its search functionality.

This turns it from the ephemeral chat of yesteryear to powerful source of institutional knowledge.

But only if your organization is embracing that.

Personal anecdote time:

Some background:

Our company is an agglomeration of multiple start-ups. We’re located across multiple (7+) offices. Like Conway’s Law, a company’s Slack can come to resemble its organizational structure:

  • Division A has a series of #$A-* channels
  • Team 5 has a series of #$5-* channels
  • some activity happens in shared #$COMPANY-* channels

A common feature of these sub-groups was that each division/team would form its own series of private channels. Sometimes, these would be the default for new channels – to preserve group identity and a sense of place. Sometimes, they would be incepted with some private info (DB credentials). But usually, this privation would be some sort of auto-pilot. As if each group should be inherently silo-ed from the others.

I feel these private channels to largely be an anti-pattern.

Sure, there are valid use cases for private channels — performance reviews and managerial discussions about how to deal with employees are certainly examples of discussions that should be private.


If a conversation stands to benefit others in the company — people on other teams, future employees (who won’t know about #foo-private-channel), etc — default to public channels.

In this way, other teams & other people can potentially gain in this knowledge.

Here’s a transition plan for migrating away from private channels:

  1. Rename private channel #foo to #foo-private
  2. Create new channel #foo as public
  3. Stop using #foo-private

Good candidates for such private channels that you may have:

  • team channels
  • divisional channels
  • channels about X new initiative
  • channels that don’t have distinctly private information

This increase in transparency reduces the friction between groups within your company.