2008-09-26

Unixとライフハックの共通点は、自分で仕組み化できること

Unix とライフハックの共通点って? を読んで思ったこと。

Unixはライフハックしやすい道具だと思う。 その理由はこんなところだろうか。

  1. 仕組み化しやすい
  2. 自分好みにセットできる
  3. フルスクラッチから自作する環境がある

仕組み化しやすいのは、基本的に操作のログが残るからだ。 スクリプトを書けば、スクリプトが残る。 横着にワンライナーで書いていても、しばらくの間ならhistoryが使える。 grep ~/.history hogehogeで探すも良し。 そして、シェル依存か知らないが、コマンドの置換"^hoge^foo"も結構使える。 最後の"^"は省略しても怒られない。 自分が使ったのはtcshだけだけだから、それ以外は良く知らない。

自分好みに設定できるのは、ドットファイルだろう。 これはあまりにも自由だ。 これは財産だ。 そして、次回のログイン時からその設定は活かされる。 まさに仕組み化。

いざとなれば、基本的なツールを自作することもできる。 そのような材料がついているのだから。 cでもfortranでもperlでもrubyでもpythonでも。 もちろんelispでも。

更に「価値観を提供しない」という哲学を豪語するGTDのように、 Unixは「テキストファイル万歳」というちょっとした思想を持っている。 これの良いところは、

  1. 基本的に、保存ファイルに何が書いてあるのか分かる(20年後もこのデータを読めるでしょう。たぶん。)
  2. stdin, stdoutの基本入出力が使える
  3. パイプが強い(xargsでもいいよ)

「特定ソフトウェアでしか使えない」という制約がないことだ。 専用データ形式での囲い込みが無いことだ。 これは、GTDが「どんなツールをつかってもOK。最終的にタスクとパースペクティブを自分がコントロールできていれば」というのと似ている。 だから一つの結果を得るのにも、幾通りものやりかたがある。

---

まぁ、そういうことなんだが。 話は結構前に戻って。

そして、自作のスクリプトを書き溜めることができる。 小さいコマンドがそこらじゅうに散らばっているが、それを良く見てみたら、それらは部品だった。 それを利用して、組み合わせて、自分好みのツールを作ろう。 一度作ったら、保存して、再利用しよう。 それも一つの仕組み化に違いない。

どこかの既製品を押し付けられることなく自分でカスタマイズする。 そうやって、自分の環境を改善していく。 その改善をお手軽に次回以降の環境に反映できるシステムを作った人達は本当に頭が良いと思う。

2008-09-25

手持ちのカード

困った懸案をあれこれなんとか動かそうともがき続けたところ、少し動いた模様です。ちょっと自分のもがき方に自信が持てた、かな?

  • タスクを書き直す
  • 頭の中をリセットする
    • 汗をかく
      • 熱い風呂に入る
      • 激しく運動する

という方法を駆使して、居座り続けるタスクを少し動かしました。悪くないかんじです。

こういったアプローチ方法のレパートリーをメモしておくのも悪くないです。困ったら、

自分の持ち札は何だっけ?

と自分の状況を把握できますから。自分で行動できるモノを見る(=把握する)ことができますから。

というわけで、今回は朝のマニュアルに乗っていない執筆をしてみました。一日の回転が狂いませんように。

2008-09-19

違いを再認識

僕は、朝起きてから寝るまでの各ルーチンワークのマニュアルをカバンの中に持ち歩いています。 通常、それを見ながら各作業をこなします。 例えば、以下の項目について書いています。

  • 朝起きてから家を出るまで
  • 研究室に入室してから作業開始まで
  • メールチェックの時間(09:30, 13:30, 16:30の3回)
  • データ計測、解析のルーチンワーク
  • 帰宅準備
  • 寝る前のルーチンワーク
  • Weekly Review

で、それを後輩に見せたところ、猛反撃を受けました。

朝起きて、トイレ行って、ご飯食べて…を決められるのはやってられない

らしいです。 そんなことまで決められていたらロボットだ、と。 人間としての自由がない、と。 話をしていて、「ふむ、そうかもしれない」と思い、「そうかもしれない」と返答しました。

しかし、帰宅してから考えていたのですが、どうも違うのです。 僕がなぜそのようなマニュアルを必要としたのか、それを十分にそれを自覚できなかったため、そして説明できてなかったようです。

僕は特に必要ではないことに、その度に判断するという必要以上のリソースを投入しないためにマニュアルを利用するのです。 その度に頭の中で現状にランダムアクセスしないといけないのは、僕にとっては苦痛だからです。 「学校の制服を着るのは楽だ。服を選ばなくていいから。」という論法に似ています。 レバレッジ時間術の「仕組み化」に似ています。

そしてもう一つ、大事なことを言い忘れていたのです。 「自分で作成したマニュアルは、自分で改良することができる」ということです。 自分がのマニュアルの管理者だ、ということです。 それを説明していなかったのが、今回のマニュアルに対する誤解を招いたのではないか、と思うのです。

マニュアルに沿って行動していても、頭は違うことを考えることができます。 「この順番をいれかえたらどうだろうか」とか「これとこれは同時に作業できるな」とか。 そうしながら、ルーティーンAをしながら、別のことを考えたりもできるわけです。 また、ルーティーンは最終的に全部行なわれていれば良いのです。そのチェックリストにもなります。 そのチェックには自分の注意力というリソースを投入しないで、他の考え事に注力することが、仕組み化のメリットだと考えています。

そんなわけで、やはり自分はマニュアルに任せられるところはマニュアルを利用したい、という結論に達しました。 きっと後輩からは「こりゃダメだ」という反応をもらえることでしょう。 しかし、それもまた、僕の判断なのです。

Related Posts: