[[📒Productivityを上げるために大切な100のこと]] No5. 🥉 ---- [[ステートレス]]とはIT用語であり、以下の意味合いをもつ。 > ステートレスとは、システムが現在の状態を表すデータなどを保持せず、入力の内容によってのみ出力が決定される方式。同じ入力に対する出力は常に同じになる。 この延長でここでは、**ステートレスな操作**は『ある前提において、ある操作をすると、状態によらず同じ結果になること』と定義している。**できる限りステートレス**とはその前提が緩い状態を指す。 一例としてお気に入りのサイトを開く操作を考えてみる。これらの方法にはそれぞれ前提がある。 | 操作 | 前提 | | ---------------------------------- | ------------------------------------ | | [[ランチャー]]から検索する | [[ランチャー]]が起動している | | お気に入りバーからクリックする | ブラウザがアクティブ | | ブラウザ初期ページからクリックする | ブラウザで空タブがアクティブ | | Slack botを使う | Slackがアクティブで対応channelが表示 | 上にいくほど**できる限りステートレス**な操作だ。 `ランチャーから検索する`が一番ステートレスな理由は、どのような画面であってもショートカットキー1発で[[ランチャー]][^1]を起動できるからだ。今の状態を考えずに毎回同じ操作をすれば必ず目的を果たせる。 [^1]: [[Windows]]なら[[Keypirinha]]、[[macOS]]なら[[Alfred]]がオススメ 一方、`Slack botを使う`場合はクリアしなければいけない前提条件が多い。運良く該当のchannelを表示していれば容易いが、数多くのWindowが開かれている状態だとそこに辿り着くのは大変だろう。頑張れば操作はステートレスにできるかもしれないが、`ランチャーから検索する`と比較して手数は増えるだろう。 **できる限りステートレス**な操作にすることで考えるよりも速く操作ができるようになる。参考までに[[TeamSpirit]]を開くまでに私が行っている操作を比較してみた。ステートレスでない操作や判断には💀マークをつけている。 - [[ランチャー]]から検索する 1. `Ctrl + q` 2. `team`と入力して`Enter` - お気に入りバーからクリックする 1. 💀ブラウザがアクティブでない場合 - 💀`Alt + Tab`を **何回か** 押してブラウザをアクティブにする (ない場合は起動) 2. お気に入りバーから`TeamSpirit`を探してクリック - ブラウザ初期ページからクリックする 1. 💀ブラウザがアクティブでない場合 - 💀`Alt + Tab`を **何回か** 押してブラウザをアクティブにする (ない場合は起動) 2. 新しいタブを開く 3. `TeamSpirit`を探してクリック - Slack botを使う 1. 💀[[Slack]]がアクティブでない場合 - 💀`Alt + Tab`を **何回か** 押して[[Slack]]をアクティブにする (ない場合は起動) - `; -> Shift + S`で[[Slack]]をアクティブにすることもできる (要カスタマイズ) 2. 💀該当のchannelが表示されていなければ - `Ctrl + k`でchannel検索画面を開く - 該当のchannelを入力して`Enter` 3. `/bookmark teamspirit`のようにSlack botコマンドを打つ 4. botが返却したリンクをクリック ここでは紹介しなかったが、最もステートレスな操作はグローバルショートカットキーの割り当てだろう。`Ctrl + Shift + S`を押したらどの画面からでも[[TeamSpirit]]が開けば最高だ。 ## 2025/11/16 追記 現在は[[macOS]]なので、ランチャーは[[Raycast]]を使用している。 <div class="link-card-v2"> <div class="link-card-v2-site"> <img class="link-card-v2-site-icon" src="https://www.raycast.com/favicon-production.png" /> <span class="link-card-v2-site-name">www.raycast.com</span> </div> <div class="link-card-v2-title"> Raycast - Your shortcut to everything </div> <div class="link-card-v2-content"> A collection of powerful productivity tools all within an extendable launcher. </div> <img class="link-card-v2-image" src="https://www.raycast.com/opengraph-image-pwu6ef.png?7385e23163a01717" /> <a href="https://www.raycast.com/"></a> </div>