本日は、タイトルの通りですがSlackで初歩的な質問ができるチャンネルを作ったのでその話をします。内容としてははじめた経緯はじめるために準備したもの匿名の質問をSlackに投稿するGoogleフォーム質問に対して匿名で回答するGoogleフォーム過去の質問・回答をスプレッドシートに集めるGASやってみてどうだったか?というものになります。初歩的な質問を誰かにしようとした時に誰に聞けばいいのか少し悩んでしまったことから始まります。「初歩的な質問をして煽られないかな?」と、当時の私が思ってしまったのです。分からないことがあった時、質問をするのに多少のハードルがあるかと思います。それが初歩的な質問ならなおハードルが高くなると思います。初歩的な質問ウェルカム!ウェルカム!という雰囲気があれば心理的安全性も生まれ、誰に聞いても問題ない環境になると考えました。して、まずは場所作りだな!となり、「今さら聞けない質問チャンネル」というチャンネルを作成しました。初歩的な質問ウェルカム!ウェルカム!という雰囲気があったとしても、「本当はどう思ってるんだろう」と考えてしまう人も少なからずいると思います。して、匿名で質問できた方がいいのではないかと思い、匿名で質問ができるフォームを作りました。いうのがチャンネルや周辺のツール・スクリプト群を作成した経緯です。はじめるために準備したもの業務内容的にスプレッドシートの管理をすることがよくあり、周辺のツール群は勉強も兼ねてGASで作ることにしました。Token」が出てきますので、事前に取得しておきます。(上記の方法は割愛させて頂きます)匿名の質問をSlackに投稿するGoogleフォームまずは、Googleフォームを作成します。「質問」という項目を作り、段落にしておきます。段落としておくと、質問内で改行ができるので便利です。メニューからスクリプトエディタを開くとGASの編集ページに移動しますのでそれを編集します。"#ここに送信するチャンネルを名前を指定");}保存したらトリガーを設定します。このようにすると、フォームがサブミットされたときにGASが実行されます。一度質問を送ってみます。このように、指定したチャンネル宛てに質問が投稿されます。フォームを作成します。「質問のリンク」を作り、記述式にしておくどの質問に回答するかをリンクの貼り付けで選択します。「匿名での回答」を作り、段落式にしておく質問へのリプライとして匿名でメッセージが投稿されます。両方の項目とも入力必須にしておきます。こちらも同じく、スクリプトエディタを開き編集していきます。SlackのAPIを使いやすくしたライブラリを使わせて頂きます。事前にライブラリに追加しておきましょう。オプションで、「thread_ts(スレッドのタイムスタンプ)」を指定してPostすると、スレッドのリプライとして認識されるので、その方法でリプライしています。こちらも同じく、フォームがサブミットされたときのトリガーを設定しましょう。一度、質問へ回答してみます。質問のリンクを取得します。Link」でメッセージのリンクが取得できます。ここで取得できるURLは、https://チームid.slack.com/archives/チャンネルID/タイムスタンプとなっています。フォームから送信されると、と、匿名で回答できていることがわかります。過去の質問・回答をスプレッドシートに集めるGAS過去の質問・回答をスプレッドシートに書き込むGASを作ります。作成後に定期実行し、自動でスプレッドシートがアップデートされるようにします。スプレッドシートを作成します。スプレッドシートのIDを取得します。「https://docs.google.com/spreadsheets/d/ここの部分がIDになります/edit#gid=0」スプレッドシートの一行目にカラム名を入れます。thread_ts」としました。GASを新規で作成します。シート名はこの例では「sheet1」としています。(日本語だとデフォルトで「シート1」になっていると思います。APIにGETするため、最初のレコードの登録は手動で行う必要があります。そのため、firstTimeRecord関数を作成しています。最初のレコードの2つまえのタイムスタンプを取得して、getSlackMessage関数の第2引数に入れ、実行するとレコードが追加されます。addRecord関数を定期実行するように設定すれば、自動でメッセージを取得してくれるようになります。時間主導のトリガーをセットしましょう。自動で更新されるのを待ってみましょう。3つの質問があります一つ目の質問に回答してみましょう二つの回答を投稿してみますこれが自動実行によってこうなります。あとはこのデータを自由に使うだけですね。フィルタを使ってソートや絞り込みをするだけでも見やすくなると思います。やってみてどうだったかタイトルにもある通り、思っていたより反響がありました!口コミでチャンネルの存在が広がり、チャンネル作成1週間後にはエンジニア・デザイナーグループの2/3の人が参加しているほどになりました。当初想定していた、技術的な質問だけでなく、会社のルールや取り組みについての質問まで投稿されるようになりました。良い回答には、チャンネルの参加者が「グッドボタン」のリアクションを押し、グッドボタンの多かった回答には「ベストアンサー」のリアクションがつくという流れが自然に出来上がっていました。匿名で質問・回答を受け付けている分、たまに過激とも捉えれる投稿がされることがあります。いった質問・回答には、チャンネルの参加者が「お茶」のリアクションをつけるようにしています。場が乱れそうだなと思ったら言及することも必要かもしれません。「匿名で質問できるチャンネル」であり「今さら聞けない質問チャンネル」でもある。現在はこのような状態となっています。聞くか迷ってる、誰に聞くか迷っている時間が一番もったいないと考えています。基礎的な知識」と考えると、多くの人が共通の基礎的な知識を目にすることになります。このチャンネルによって、組織のスキル底上げに繋がることを期待しています。最後までご覧頂きありがとうございました。