[Lifehack Begin] 第3の習慣:繰り返しを最適化する
後輩に Fortran のプログラミングを教えていたときのことです。データを単純に時間方向に読み込み、すべての緯度・経度について演算をするという、私の専門では日常的に行うプログラムを書いてもらっていたら、一人だけ実行してもなかなか計算が終わらない人がいました。
エラーになるわけではありませんし、計算結果が違うわけでもありません。ただ遅いのです。彼のプログラムをみて理由は一目でわかりました。本来、「時間・緯度・経度」の順で内側にループをするはずのプログラムが、逆になっていたのです。プログラマーでないみなさんのために分かりやすくいうなら、これは家の隣りにあるポストに10回郵便を出すのに、1回ごとにわざわざ市役所と県庁に寄ってから投函しているようなものでした。プログラミングでも、ループを最適化するのは作業効率を大幅に向上させるポイントであることは常識になっています。
繰り返しはとても大切です。それは習慣を形作るベースですし、眠りや歯磨きのように外せない日常のピースであることも多いのです。
一方で、繰り返しは無駄が多いと一気に持ち時間を減らす要因にもなります。私がいつも家内にからかわれるのが、「毎日財布や鍵やSUICAを探している」という日常の無駄です。これは部屋の入口に小さなかごを用意して一日の終わりにポケットの中身をすべてここに入れるようにしないかぎりどうしようもないものでした。
そこで時間を最適化しようと考えている人はいろいろな時間スケールにおける繰り返しを探すとともに、明日紹介します第4の習慣で理想の24時間のなかにそれをフィットさせてゆくのがよいでしょう。
日常のなかのループ
たとえば「ライフハックをやるひとはショートカットばかり気にしている」と時々揶揄されますが、これも日常の作業でもっとも繰り返しの多いものに集中して覚えるようにすると実際的です。
短いタイムスケールのこうした繰り返しにはショートカットだけでなく、なんども入力する文字列、メールの定型文、いつもメールを送る相手のメールアドレス、つまらないファイル整理などが含まれます。
たとえば「よろしくお願いします」「ご査収のほど、よろしくお願いいたします」といった程度の文章なら TextExpander や ATOK の辞書登録で展開してしまう手がありますし、3日過ぎてもダウンロードフォルダに放置されているファイルは Hazel で自動整理することも可能です。
もっと長い時間スケールの繰り返しになると、毎日の出勤準備、食事や睡眠といった生活のパターンなどについて見直すこともできるでしょう。
ここでも、効率化の名のもとに無理をしたり、機械のように最適化することが目的ではないことに注意してください。ATOK で辞書登録した文字列を変換するときに、「これから変換するぞ」と身構えることはないはずです。
呼吸をするように自然に繰り返せるようになっていること、それが無理のないループの姿なのです。
それでは次回まで、Happy Lifehacking!