Skip to content

Instantly share code, notes, and snippets.

@flurdy
Last active January 14, 2017 14:53
Show Gist options
  • Save flurdy/d4257dc3bab67f9ccbb549ae297eeb4e to your computer and use it in GitHub Desktop.
Save flurdy/d4257dc3bab67f9ccbb549ae297eeb4e to your computer and use it in GitHub Desktop.
A slack policy:
For companies which size is beyond one office.
Slack channel naming convention:
Rename General to Announcement
(makes it more obvious it is not for stupid questions or replies.
And discourage most announcement)
Random is still Random
All teams have a team-xxxx public channel
(for the team's and project announcements and people to ask brief intro questions / directions.
Monitoring alerts was recommended to be in this channel for visibility to external and internal.
Team name in xxxx is not a choice, must be standard name, not team-monkey nor team-1337, nor project or system name,
and perhaps match a org structure/team directory in the wiki for example.)
Teams have private team-xxxx-yyyy channels for normal conversations
(E.g team-xxxx-general for whole team chat ,
team-xxxx-dev for dev chat, github, CI integrations, etc,
team-xxxx-qa for qa to gossip)
com-xxxx for company wide community/topic based conversations.
(e.g. com-tech, com-java, com-testing,
com-scrummasters, com-yoga-paris, community-cooking)
event-xxxx for specific one off or recurring events
(E.g event-issues-prod, event-issues-staging for prod and staging issues,
event-2019blackfriday for some multi team peak period)
loc-xxxx for location specific chats if distributed office location
(E.g. loc-newyork or loc-london-soho-floor6 for talks about coffee status on that floor,
All other public channels names are frowned upon.
You can have manual or scheduled bots that scan for non compliant channel names to avoid proliferation of vagrants.
Close and merge duplicate channels. Archive non active channels.
Slack profile convention:
The profile is not for your team members, but for people in other teams or offices
that don't know you that well, so be clear and not clever, so they know who you are.
Real photo
(Recent and recognisable face profile, no avatar, no clever effects, only one person.
Remember some only remember your face but not your name.)
Real name.
(Nicknames etc can be mentioned elsewhere)
Location and team in case there may be several people with your first name so people be sure it is the correct Steve.
Slack mention convention:
Disable @all and @here in Announcement and Random.
Discourage @all and @here in any public group of more than 20 people.
Mention people by @ if response is for them only in a larger group,
don't @people in larger group if response can be by anyone.
Cross posting convention:
Post only in appropriate channel where response discussions are welcome.
Use share post if cross posting to avoid duplication,
and encourage replies in original channel.
Response convention:
Respect asynchronous nature of chat.
Respect knowledge staff (most staff) need period of no interruptions so do not expect instant reply.
Treat slack as first class citizen, especially if teams include distributed / remote members. Chat is not email.
Treat @mentions, private chats and team chats differently than wider general chat channels.
Respect co-workers by responding in timely manner.
Team channels, @mentions, important event-xxxx channels should be responded to every time "you look up",
i.e. when you could have talked to your desk neighbour etc. E.g. every 5 or 10 minutes.
Public channels, topic, location etc, avoid looking at too often, perhaps only when you need a break. E.g 0.5 or 1 hour.
Never start a channel or direct message with only a "Hi".
Get straight to the point, chats are asynchronous.
Notifications suggestions:
Random and public channels
mute @channel and @here
desktop @mention only
mobile nothing.
mute totally noisy public channels.
Announcement, Team public, key public channels (prod issues etc)
desktop @mentions
mobile nothing
never mute
Team private and direct messages
desktop all
mobile @mentions
never mute
Use channel stars to group useful channels at the top.
Use "All unreads" optional slack feature to quick scan messages.
Bots
Slackbot responses can be useful and funny.
But use sparingly as can be annoying.
Maybe have one for "slack guide" that link to a wiki page for channel, profile, conventions etc.
For friendly response for people e.g. newbies who might accidentially stray outside convetions.
Could write slack channel police bot
that check for adherence to naming convention, and politely suggest renaming if inviolation.
Could write slack profile police bot
Github integration for public and private repos
Useful in private team channels
remember to disable comments as too noisy.
Build integration
Useful in private team channels
Monitoring integration
Useful in public team channels
If noisy fix problem not channel.
Avoid creating notifications only channels. They are easily ignored.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment