先日、


キーロガーを使って集中力を「監視」する … 集中力アップのためのツール案(記録編)
http://blog.lilyx.net/2007/10/21/concentration-by-keylogger/

という記事で書いたとおり、キーロガーを使って自分の仕事状況を記録すると
集中力アップのための監視ツールとして使えるのではないか、という話の続きです。

前回の記事をまとめるとこんな感じ:

- キーロガーを使って、キーボードの打鍵状況+マウスのクリック数状況を全て記録
- キー&マウスイベントのキャプチャにはChucKを使う
- 打鍵数+クリック数の「分速」をリアルタイムで監視
- 「分速」がある閾値を下回ったら、「サボってる」と判断して警告音を鳴らす
- 実際やってみたところ効率が大幅にアップ

という結果でした。

正直なところ、記録さえできればそこからは自分の好みに応じた解析もしくは可視化ツールを作るだけなのでプログラムできる人には問題にならないですし、そこからは各人のニーズによりけりなんですが、今回は、こんな風にして解析してみたらどうですか、というお話です。

ということで、以下のようなツールを作ってみました。

- キーロガーのログを読んで、各時間帯ごとの作業量を計算する
- 作業量は、暫定的に、打鍵数+クリック数x3を分速にたものを「1モッポル」とする。自分の場合、Webブラウズが20〜30モッポルぐらい、パワポ作成が80モッポルぐらい、ガリガリコーディングしてる時が250モッポルぐらいでした。名前はなんでもいいのだけれどもw
- 1日の各時間帯のモッポル具合をグラフにして表示

その結果、こんな具合になりました。

moppolmonitor.png

1日の各時間帯(10分間隔)における平均モッポルに応じて色がつけてあります。出力はHTMLで、実装はRuby+ERB、補助としてcolor-toolsを使っていい具合に色を変えてみました。

こうやってみると、自分の1週間の活動具合がおもしろいように丸見えですね。色が薄いところは明らかにWebブラウジングしてますし、今週はミーティングなどが多くて「本当に」集中してコーディングしている時間帯があんまりないこともわかります(反省。

ということでかなり面白い感じで解析できたので、これからもぼちぼち使っていきたいと思います。前にも書いたけど、こんな感じで記録から解析までまとめてやってくれるようなコンパクトなフリーウェアでもあったらいいなぁ。自分でRubyCocoaでも勉強して作るしかないか(どなたか興味ある方いませんか。。。?