「自分がなりたいのは画家なのでは?」
と、最近自分の本当の気持ちに気づくことができました。今生では絵画能力が壊死しているので、来来来世あたりで頑張りたいと思います。まかり間違ってバックエンドエンジニアまさくにです。
さて、先日、個人で使っている「 Slack 」のアカウントを Standard へ有料化しました。もう RSS とかメールとか呟きとかが溢れてる乱雑な日常に嫌になっちゃって、なんとか整理したかったのがその理由ですが、今のところとても快適で、来世の展望が少し明るくなりました。
ということで、僭越ながら自分がどのように Slack を運用しているかを書いていきたいと思います。
▼目次
- 孤独のSlackレシピ
- 前提と方針
- チャンネル作成は注意する
- 誰かが途中参入する可能性を考える
- 他サービスと連携する
- 実際の運用
- メモに使おう
- リマインドしよう
- IFTTTで必要な情報を集めよう
- メールをSlackで見る
- そして必要な開発をしよう
- まとめ
孤独のSlackレシピ
まず前提として、本企画は 人と話すのはあまり好きじゃないけど Slack が便利なので独り用のアカウント取っちゃうくらい好き という壊れかけの方を対象としています。エンジニアは、えてしてそういう状態に陥りやすいと思いますので、本稿の続きよりも人と話すことを意識してください。
▼本稿で話すもの
- 個人的に便利だと思っている Slack の方針と運用
▼ 本稿で話さないもの
- Slack の基本的な使い方や付随する概念
- Slack 有料化の方法やプランの比較やサービス
- 開発に伴う CI ツールや監視情報と連携する方法
- 他人との関係を円滑にするためのアイコン作成やジョーク通知
- 無限に猫の画像を集めるチャンネルを作る方法
前提と方針
まず Slack をどのように個人で運用するかを決めました。文字どおり Slack は「ゆるく」使える万能ツールですが、Twitter や Facebook のタイムラインのようによく分からん情報が増えすぎて、必要な用途で使えなくなるのは本望ではありません。必要なものを慎重に選択して情報を流していきます。
チャンネル作成は注意する
Slack はチャンネルを無尽蔵に作れますが、「情報をフィルタリングしたい」という目的があるので、無駄なチャンルを作らないように気をつけます。自分独りだけのチームだとしても「余計な情報は入れない」ということに気をつけています。
また、現状 Slack は プライベートチャンネルをなぜか削除することができないため、チャンネルのネーミングにも多少気をつけています。
また、チャンネルをアーカイブするときは名前衝突が起きないように、日付のプレフィックスでリネームしてからアーカイブを行っています。
現状のところ、自分で作成して残っているチャンネルは以下です。
news | 十分にフィルタリングされた受動的な情報。不要な情報が溢れないように注意する。 |
---|---|
task | スケジュールやタスクなどの通知や登録用チャンネル。 |
後述。メールが転送されてくるチャンネル。 | |
time_killer | 時間泥棒。富士山付近で撮られた絶景の写メや、猫の画像が無限に投稿されている。ちなみに通知は完全に切ってあって、暇なときに見るチャンネル。 |
誰かが途中参入する可能性を考える
もしかしたらこの先、奇跡的にソウルメイトと出会うことができて、複数人で管理する Slack になる可能性があります。記事の内容やセキュリティ上の情報は一考し、チャンネルのパブリック、プライベートの選択も適宜考えてから設定するようにしましょう。
また、Slack はフリーにせよ有料にせよ、ログがすべて保持されています(有料版になると、すべて検索できるようになります)。あまりにもクリティカルな情報や恥ずかしい情報についても載せておくのは避けるようにしています。
でも、今のところ誰も入れる気はありません。
他サービスと連携する
Slack の利便性を最大化するのが、この外部サービス連携ではないでしょうか。多くの情報を効率的に集めるために、積極的に外部サービスと連携を行っています。ただし、管理できないほどの連携は無意味なので、ここでも「必要なものを慎重に」の精神で、現状、下記のサービスと連携しています。
▼ Apps
- Email(大事)
- IFTTT(大事)
- Twitter(大事)
- Google Drive
- Google Calendar
- Trello Alerts
- Zapier
▼ Custom Integrations
- Bot(大事:hubot に使用しています)
実際の運用
ここから先は、自分がどのように Slack を使用しているか、の解説です。
メモに使おう
Slack は多くのデバイスで情報の入出力、閲覧に優れた UI を提供しています。自宅の PC で Web を見ていて、「明日覚えてたら会社に伝えたいな、覚えてたらでいいけど」という重要度の低い情報に出会うようなことはありませんか?
そういうときは、Direct Message の自分のチャンネル( you と書かれている)ところにメモ書きを残しておくようにしています。自分はこのチャンネルを自分用のメモとして使っていて、アイディアや覚書、乱雑な殴り書きなどを残すようにしています。
まぁ DM じゃなくても全チャンネル自分しか見れないんですけど。
また、ショートカットでこのチャンネルの Web ページが開くようになっていて、即座に一言を書けるようにしています。意外とこの運用が最も役に立つ。
リマインドしよう
例えば朝出社したときに、習慣的に Web サイトをいくつか開くのではないでしょうか。リマインドは基本的に予定を忘れないために使いますが、そういった定時リンク集として使うのも便利です。
/remind me 'check: https://www.facebook.com/' every weekday at 10:00
上記のように入力すれば平日 10 時に Facebook のリンクが Slack に通知されるようになります。このような通知をいくつも準備しておけば、上から順番にクリックしていくだけで必要なページの情報が集められます。
例えばその日のタスク一覧ページの URL を出社前の時間にリマインド設定しておくと、たいへん便利です。それよりもタスク管理は一元化したい気持ちがありますが、それは別の話です。いろいろあるんですよね。
IFTTTで必要な情報を集めよう
IFTTT を使うことによって、さまざまな便利な情報を Slack へ集めることができます。ただし、ここでも不要な情報に埋もれないように節度を持つようにしています。
はてブ数上位のページを捕まえる
まず IFTT と Slack を連携して下記のようなトリガを設定します。
▼ RSS から Slack へ
New feed item
http://b.hatena.ne.jp/entrylist/it?sort=hot&threshold=200&mode=rss
このような設定を行うことによって、200 以上はてブ数を獲得したページを Slack の指定したチャンネルに流すようにできました。自分は基本的に「十分にフィルタリングされた受動的な情報」をすべて「 news 」チャンネルへ流しています。
200 という数が正しいかはまだ決め兼ねていますが、知っていると次の日会社で仲間外れにされないレベルの情報はちょうど流れてくるようになりました。また Slack は URL を展開してくれるのでたいへん便利です(でも RSS の更新が比較的遅い気はするのでご注意ください)。
- 2018/09/28 追記
- 残念ながらこのthresholdによる絞り込みは、はてなブックマークの改修によって廃止されてしまったようです。
Like数上位の呟きを捕まえる
最近では誰かの何気ない呟きによって、自分の笑顔というものを思い出す日も多くなりました。ありがたいことです。また、かなり有意義な情報も Twitter だけで流れるような時代です。IFTTT で下記のように設定すると、一定の Like 数を獲得した呟きが Slack に流れてくるようになります。これも自分は「 news 」チャンネルへ流しています。
▼ Twitter( New tweet from search )から Slack へ
Search for
min_faves:30000 lang:ja
30,000 という Like 数は結構厳し目のようです。都度、ご調整ください。また、IFTTT の「 New tweet from search 」は検索実行が 15 分に一度という IFTTT の制限があるものの、検索文字列に何を入れるかによって、かなり汎用性があるものです。
検索文字列は Twitterの高度な検索 +α が使用できるので、ご自身に合った情報を蒐集してください。
特定の誰かの呟きを捕まえる
Slack へ誰かの呟きを流せるようになります。「単純に Twitter でフォローすれば?」という話ですが、そういう話ではないのです。
例えば 地震速報さん の呟きを Slack へ流します。地震速報さんは地震が起きてから情報がとても早く、必要十分な情報が取得できるので重宝しています。これを Twitter タイムラインに埋めたくないので、Slack の「 news 」へ流すようにしています。同じく IFTTT の Twitter を使用して、下記のように設定します。
▼ Twitter( New tweet by a specific user )から Slack へ
Username to watch
earthquake_jp
メールをSlackで見る
有料化した最大の要因がこれだと言っても過言ではありません。
LINE が世界を席巻しても、Slack が世を蹂躙しても、メールはまるで石の下のダンゴムシのように生き残っています。しかもほとんどが一瞥すればいいだけのものなのに、重要な情報ほどメールで届くという風習は今後もずっと変わらないでしょう。
かねてよりメールを Slack で受信する方法が他にないか悩んでいました。このメールアプリは Slack を有料化しないと使えないのです。いろいろ考えた結果、シンプルさを損なわずに html メールなども Slack 上で確認できる方法はひとつだけでした。素直に課金です。
メールアプリは Slack で設定すると、チャンネル用のメールアドレスがひとつ払い出されます。受け取ったメールを Gmail のフィルタを使用するなどして、そのチャンネル用のメールアドレスに転送すると Slack 上でメールを確認することができるようになります!
転送したメールは Gmail 上で既読にし、アーカイブまで行うようにして、読みたいけど読むだけで満足するメルマガなどを Slack 上で流し読みすることができるようになりました。これがディ・モールト(非常に)良い! ぜひお試しください。お金かかりますが。
メールアプリの 詳細な設定はここで書かれています 。
そして必要な開発をしよう
Slack はその連携部分の開発が容易であることも知られています。エンジニアの端くれなので「なければ作る」精神で自分の Slack を磨くことも忘れていません。ただし、これから先は開発が必要になりますし、サーバーも必要になります。
例えばRTMと連携する
個人で remember the milk を数年愛用しています。Todo 管理ツールはいろいろ試しましたが、中でも RTM はシンプルさ、タスクの追加のしやすさ、遊び心を持っていて最高に気に入っているサービスのひとつです。
ただ、惜しむらくは古参ツールの宿命でしょうか、RTM は外部サービス連携が柔軟にできるというわけではありません。そこで Slack 上の bot を通じてタスク追加をできるように、hubot 用のスクリプトを書きました 。詳細は省きますが、下記のように Slack 上で RTM へのタスク登録ができるようになりました。
いろいろあってアイコンにモザイクがかかっていますが、signpost というのが自分の bot の名前です。このように「なければ作る」というスタンスでいられれば、Slack はさらに多くの可能性を提供してくれます。他には好きな番組の次回予告を通知するものや、好きな画像を集めるようなものも書きました。
しかし開発コストがかかるので、積極的にはおすすめしません。IFTTT や Zapier で同様のことができるなら、そちらで実現ができないか、まず検討するべきです。RTM も Zapier を使えば同じようなことができるのですが、フリープランだと制限が結構きつかったり、柔軟にできなかったりしたのでムシャクシャしてやりました。
▼ 関連情報は下記あたり
- HUBOT
- メールでRTMにタスク追加する方法
- なぜ「 @rtm 」がハイライトされるのか
独りだけの UserGroup を作っているから(有料版のみ) - 参考にしたメール送信スクリプト
- 注意
- この方法で送るメールは信頼性が低いため、普通に使おうとすると到達しない可能性は高いです。
まとめ
今さら Slack の話かと思われたかもしれませんが、この運用になって通知に対して気持ちよさを感じることができるようになりました。重要度の低い情報は、一瞥して完了というストレスレスになったからだと思います。
ただ、餅は餅屋というところがどうしても出てきます。メールの返信まで Slack でやろうとすると非合理的であったり、RSS のすべてを Slack 上に流そうとすると設定しにくく、読みにくく、情報が過多になってしまったりします。そこは Gmail や feedly などで行うべきかと考えています。
自分がさばく必要があるもの、さばく必要がないものを意図的に選択して、効率の良い情報のやり取りを心がけたいと思っています。ご紹介した中でご参考になるものがあればご採用ください。また他にも便利な使い方があればぜひご指南待っています!
おまけ:無限に猫の画像を集める
Search for
#猫 filter:images -rt -via
IFTTT で上記のように設定して好きなチャンネルへ流してください。これで Twitter に投稿された画像を持つ #猫 ハッシュタグの呟きを Slack に集めてきます。
それでは!