中規模組織でのSlackの運用ルール（30人〜100人）


# 新規メンバーの参加について
中規模組織になってくるとSlackメンバーの出入りがそれなりに発生します。
出入りしても組織やチームが混乱しないよう、また既存、新規のメンバーがスムーズに馴染めるためのルールを列挙しています。

# プロフィールとユーザ名
10人ぐらいまでだとプロフィールも適当で良いのですが、30人を超える規模になるとプロフィールにも運用ルールが必要です。

![Screen Shot 2021-01-28 at 13.27.41 1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/020a882a-f0c6-57ed-5f50-4123f1792c89.png)


## FullName
本名を入力します。
色々ありますがオススメは「ローマ字表記＋漢字表記」です。
見栄えは悪くなりますがこうすることで

1. ローマ字で読み方がわかる
2. 漢字表記があることで文面中の言及が自然になる 「オカダさんはどうですか？」的なことがなくなります
3. 英語圏の人にも優しい

というメリットがあります。

## Display name（表示名）
表示名にはSlackでメンションを飛ばしてもらうための名前です。
ここに漢字を入れると **圧倒的にメンションが面倒** になるため、アルファベットとしてください。[^1]

[^1]: 漢字表記だと@（アットマーク）を入力した後に漢字入力に切り替える必要があるのでかなり面倒です。漢字という文化は誇りに思っていますし、名前の漢字表記はユニークになるのですごく重要だと思っていますが、Slackについてはローマ字のほうが便利です。 ~~今後「漢字」や「ローマ字」という別カラムが登場すると良いですね。~~ Full Nameに漢字を入れると便利です。

GitHubやGoogle（Gmail）など、他のサービスで使っている名前にするととても便利です。
招待するときやチーム内での認識、通知系チャンネルとの相性が良いです。

## Display name のルール
この「表示名」ですが、いくつかのルールをおすすめしています。

1. 音読可能であること
2. 英数小文字であること
3. グローバルユニークであること
4. 他のサービスと同じアカウント名であること

「音読可能であること」について
ほとんどの人は文章（や文字列リテラル）を読むとき、脳内で音読しています。
例えば「kpljkpzk」といった英字子音が続いたりする名前だと脳内音読できないので混乱します。

「英数小文字であること」について
GitHubで使えないなど、サービスごとの名前規則があるため、英数のみの名前がおすすめです。
特にアンダーバー、ハイフン、ドットは使わないほうが良いです。
（その昔、RFCの解釈を巡って[メールアドレスでアットマークの直前のドットを認めてしまう](https://www.asobou.co.jp/blog/web/mail-rfc)ということがありまして…）

「グローバルユニークであること」について
グローバルでユニークな名前が良いです。
具体的には「その名前でググって（エゴサ）も出てこないこと」です。
「GitHubでアカウント名を取ろうとしたけど取れなかった」というこを防ぐことが出来ます。

「他のサービスと同じアカウントであること」について
招待や他のサービスで同一人物と認識しやすいので同じアカウント名推奨です。
SlackとGitHub、RedmineやJillaなど、連携したときのキーになります。Issueなどのコメント文などで@付きで呼んだ時、Slackにも良い感じに通知が来るようになります。

名前についていくつかの規約を挙げましたが、上記の例を使っていい感じにアカウント名を作ってくれたのが「 @say3no 」君です。
特にアカウント名の途中に数字を入れたのは効果的だったと思っています。

## What I do
得意な分野、興味のある分野を入れています。
「〇〇さんってこういうことできるんだ』ということにつながるのでチームでお声がけしてもらえるようになります。
とはいえ、単なる自己紹介でも良いです。会話のきっかけになりますし、覚えやすくなります。
ただその場合には[カーディナリティが高い](https://qiita.com/soyanchu/items/034be19a2e3cb87b2efb)ほうが良いですね。

## Phone Number
~~電話番号はできるだけ入れてもらっています。~~

無償版にもHuddleが来たので伝えたい人にのみ電話番号を入れてもらっています。

## 写真
個人を認識しやすい写真を入れています。
30人ぐらいのチームでリモート作業も増えてくるとオンラインとオフラインの同一視ができなくなることが増えるので、できれば本人の写真が良いです。
写真が嫌なメンバーもいますので、そういう場合には似顔絵などにしてもらっています。
「猫😺」や「アニメキャラ」はアイコンとして人気なのですが、被ったり認識できないことがあるので避けたほうが良いです。
デフォルトアイコンもある程度区別できるのですが、人数が増えると似たような色合い、模様が増えるため変更をおすすめします。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/47327/a467dcea-fce4-fae6-1f9a-fc69d3dbc942.png)


# チャンネル
## Slack公式からの情報
Slackの公式でチャンネル作成のガイドラインが発表されています。
[チャンネル名のガイドラインを作成する ](https://get.slack.help/hc/ja/articles/217626408-%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B#%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B-)

公式の情報でとても有用なので一通り目を通しておくとよいです。
上記のページと重複することもありますが、30人を超える辺りから個人的に良いなと思っている運用方法やTipsについて列挙していきます。

## チャンネル名の長さ制約
Slackのチャンネル名の長さは21文字です。[^2]

[^2]: https://get.slack.help/hc/ja/articles/217626408-%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B#%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B-

それほど長くないので注意が必要です。

## 案件チャンネル
プロジェクトや案件[^3]のチャンネル名には `年月`+`案件スラッグ（固有ID）`を付けています。
例えば「2018年12月23日に始まった、SlackのHuBotを使ったプロジェクト」の場合には `#201812-slack-hubot` としています。
（2020年10月9日追記 以前は年月日だったのですが長すぎるため、最近は年月に揃えています）

[^3]: 受託システムやよしこれを作ろう、という場合です

案件チャンネルに日付を付けるメリットについてです。

1. 日付＋スラッグであれば**ユニークになり被らない**
2. GitリポジトリやRedmineのプロジェクトなど、**他のシステムと連動して同じ名称**を使える
3. 案件チャンネルが順に並ぶため、**古い案件がすぐに分かる** (=> 探しやすい）

逆にデメリットとしては

1. 日付降順で並ぶため、**上に古い案件が来る**
2. チャンネル名が長くなるため、**長さ制限に引っかかる**
2. Notifyや関連チャンネルを並べるときに長くなる

ことです。
Slackだと日付降順固定なので少し辛いですが、Gitのリポジトリ名と同じにしておくと手元のリポジトリが「コレなんだっけ？」となったときに日付があると認識率がかなりよくなります。

関連チャンネルを作ろうとすると長さ制限に引っかかる場合には略称も使います。

また重要なことですが、**接頭語は並び順を決定する**ので注意が必要です。安易に**01_全般** **02_連絡用** といったチャンネル名を付けて後から後悔しました😪

## セクションに分ける
Slackではセクションという機能があります。（課金版のみ）[^section]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/9855e574-6779-91b9-3e92-843230dc58d4.png)


セクションを使うと同じ案件、類似の案件ごとにチャンネルをまとめることができるため、積極的にまとめてると良いです。
ただセクションは個々人での設定でありチームで管理することができません。
後述のプリフィクスと併せて、同じプリフィクスで統一しておけばそれぞれ個人でも同じようにセクションでまとめることができるため便利です。

[^section]: https://slack.com/intl/ja-jp/help/articles/360043207674-%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%BB%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%82%B5%E3%82%A4%E3%83%89%E3%83%90%E3%83%BC%E3%82%92%E6%95%B4%E7%90%86%E3%81%99%E3%82%8B

## プリフィックスを付ける
[Slack公式](https://get.slack.help/hc/ja/articles/217626408-%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B#%E3%83%81%E3%83%A3%E3%83%B3%E3%83%8D%E3%83%AB%E5%90%8D%E3%81%AE%E3%82%AC%E3%82%A4%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B-)にもありますが、プリフィックス（接頭語）は良いです。

| プリフィクス | 使い方 |
|---|---|
| help_ | 〇〇について聞きたい |
| times_〇〇 | 一時期話題になった分報です[^4]。便利！ |
| study_〇〇 | 勉強系チャンネル |

## サフィックスを付ける
チャンネル名の後ろにサフィックス（接尾語）も使っています。
案件チャンネルで利用するGitHubやCIサービスの通知系チャンネルや、定期実行で来る通知チャンネルを作っています。

先ほどの`#201812-slack-hubot`のを例にとってみます。
日付プリフィクスがついているため、そのまま`-notify`、`-logs`などといったサフィックスを付けると21文字のチャンネル名の長さ制限にかかってしまいます。
長さ制限を回避するために`slack-hubot`を省略化して`sh`とします。
その上でサフィックスを付けていきます。

| 例 | |
|----|----|
| #201812-sh-notify | GitHubのコミットやコメント、CIの結果などを投げるチャンネル。 |
| #201812-sh-logs | 定期実行された結果を出力するチャンネル。|

`日付`＋`省略形`+`サフィックス`であれば関連チャンネルであることが一目瞭然です。
（もし１日に大量のチャンネルを作るぐらいの大規模組織であれば別かも知れないですが :rolling_eyes: )

## 通知系チャンネルはミュートで
通知(Notify)系のチャンネルはひたすら流れて行くので、ずっと見ていると大変です。
そこで基本は通知系チャンネルをミュート（非通知）にしておき、自分の名前にだけ反応するようにしています。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/47327/02eb0a04-8679-82d7-a207-6788853026c5.png)

こうすることで流れすぎを防ぎつつ、GitHubやSlackで自分宛てにメンションが飛んできたときには気づけるようになります。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/47327/fcc3a138-f4f1-e7fa-1f95-956f5e7e38ae.png)

先の[Slackのユーザ名はGitHubなどに揃える](https://qiita.com/yousan/items/ab2b190f2dec034277e0#display-name%E8%A1%A8%E7%A4%BA%E5%90%8D)と相性が良いです。


参考 [GitHubとSlackを連動させて通知を受け取る@2018年版 - Qiita](https://qiita.com/yousan/items/05b7c61ecca02bc3eceb "GitHubとSlackを連動させて通知を受け取る@2018年版 - Qiita")


[^4]: http://c16e.com/1511101558/

## 一時的なチャンネルを使う
最近知ったTipsなのですが、一時的チャンネル良いなと思いました。

> - Slackの2要素認証設定のお願い
> - セキュリティ研修を受講してください
>
> Slack のチャンネルを使うと、
> それ用のチャンネルを用意する
> チャンネルの説明欄やトピック、ピン留め発言などの目立つところに「これを済ませたら抜けてね」と書いておく
> 全員をそのチャンネルに招待する
> 期日まで、毎日の適当な時間に「@channel やってね！」と発言する
> こんな感じになります。未完の人リストはチャンネルのメンバーそのものになるのでリスト作成の手間がゼロになるのと、未完の人だけを対象にリマインドするのが簡単になる点がよいです。

> ほいで、無事に全員が完遂できたら「ご協力ありがとうございました〜」と言ってそのチャンネルはアーカイブするなり捨てるなりするだけです。

https://june29.jp/2018/12/21/slack-instant-channel/

最近ですと年末調整の申告書の提出ですとか、期日のあるタスクに対しての運用は良いなと。チャンネルに呼び出して閉じ込める感ありますが… :smile: 

## スレッドを積極的に利用する

> スレッド遣いは心遣い。
> [-- Slack](https://get.slack.help/hc/ja/articles/115000769927)

人数が増えてくるとチャンネルの見通しが悪くなるため、スレッドを使いましょう。

スレッドを使うメリット

1. メッセージの通知の範囲をスレッドをフォローしている人（スレッド内で発言した人、スレッド内でメンションされた人）に限定できるため、関係ない人のチャンネル通知を減らすことができます
2. チャンネル全体での表示を減らし、見通しが良くなります。


スレッドを使わない場合
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/50888dc5-0605-b55a-a0fd-59bf2f865ad8.png)

スレッドを使う場合

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/0c06e15e-c0e5-664d-df80-1882b73416da.png)

[スレッドを使用して会話を整理する
](https://get.slack.help/hc/ja/articles/115000769927)

## DMよりもチャンネルを

[SlackでDMを使わない方がいい理由をGIFにして説明してみた - Qiita](https://qiita.com/walkers/items/8c1b63694de4f5617cee)

[SlackのDM比率が高くなる理由
](https://qiita.com/satoshiyoshinaga/items/7a6f6f4fcea7fbee3a28)

# リマインダー
## 定例リマインダー

定例ミーティングなどを設定しておくと参加率が上がります。
またデイリーや各種ミーティングでの事前の議論、議論中の会話、議事録等も自然とスレッドに集約できるため便利です。
15分のデイリーミーティングで話をしたことのフォローアップが自然とスレッドで行われるので重宝しています。


Zoom、アジェンダの項目はリンクにできるので、ミーティングのリンクなどにしておくと良いです。

## Google Calendar for Team Events との連携

Slackアプリの [Google Calendar for Team Events](https://slack.com/intl/ja-jp/help/articles/360047938054-Slack-%E5%90%91%E3%81%91-Google-Calendar-for-Team-Events) を使うとGoogleカレンダーの内容をチャンネルに通知することができます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/a45c50f8-08ac-447c-0b40-a113715b0fa8.png)

Googleカレンダーと連携させた後、

- 通知元カレンダー
- 通知先Slackチャンネル

を選択します。

![スクリーンショット 2021-09-16 10.14.23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/89ab19cc-d244-0d6e-30b8-a3d93762c9d7.png)


どのタイミングで通知するかを選べばチャンネルに通知がきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/b36b44d2-7fdb-f4e8-131c-2649b9792905.png)

通知の中にMTGのURLやメンションを付ける方法について、予定の「場所」の項目に入れておくと通知が来るようになります。[^gcte1]

![スクリーンショット 2021-09-16 10.23.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/d646d1b3-53ec-4394-c0dd-6074d70c3b80.png)

また設定の際、通知の直前で場所などの変更を行っても正しく通知されませんでした。恐らくSlackアプリ側で予定を読み込むタイミングが、実際に通知を行う時間ではなく少し前に読み込んでおくためではないかと思われます。

[^gcte1]: 予定本文に入れたのですが通知されませんでした。サポートに連絡したところメンションやURL等を出す機能は無いとのことでしたが、試していると場所を使うことで解決できました。

## Slackリマインダー

下記のようにリマインドを書くと、標準のリマインド機能を使ってチャンネルにリマインドを飛ばすことができます。

```
/remind #project_channel "@yousan 
9:00 ~ 10:00 スプリント計画ミーティングです
Zoom アジェンダ"  every Monday 11:55 AM
```

Google Calendar for Team Eventsと違ってリンクなども自由に貼れますし改行を行うこともできるため便利です。

# その他

## リンク
URLリンクを埋め込むことができます。URLを直接貼ることも良いですが、メッセージ自体が長くなってしまうので、リンクとの使い分けを行うと良いです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/47327/3999f8f3-2286-bb25-30b9-5b4111d878a5.png)

リンクを設定する際にはURLをコピーしておき、対象の文字列を選択して貼り付け（MacであればCmd+v）するとすぐに貼れるので便利です。