そもそも、いまをさかのぼること数年前(2005年ごろか?)、某プロジェクトの失敗により多大なるダメージを被った私は、そうした失敗を繰り返さないために毎日日記めいたものを書きなぐっておこうかなどと考えた(ぴよコラムのことだ)。プロジェクト漬けになっていると、外部とのやりとりが皆無になって孤立しがちだ。この孤立無援状態がひじょうによろしくないので、直接なり間接にでも外部と常時コミュニケーションするためのチャンネルがあるべきだと考えた次第。
始めた当初、Diary ++なる日記ソフトを愛用していた。
なぜDiary ++を選んだかといえば、1にも2にもAppleScript対応機能が充実していたためであり、数ある日記ソフトの中でも日記のための機能が豊富だったわけではない。
Diary++に対しては「ファイル名をつけて保存する必要のないテキストエディタ」という程度の認識(それだけでも有り難かった)。Scriptに対応しているために、指定時刻に指定の記事をWebブラウザ経由でmixiに投稿するとかいった操作は朝飯前。
ただしDiary++は、1日に書けるのが1記事までという仕様になっており、1日にいくつも思いついたことを書きなぐっていくようなハードな記述スタイルにはいまひとつ合っていなかったので、そのうち使用をやめてしまった。
それから数年。コンピュータの世界では無限ともいえるような年月が過ぎたのちに、CarbonアプリケーションだったDiary++がUniversal Binaryの「Diary++X」になって帰ってきた(そういえば、自分も公開したっきり数年放置しているアプリが数本……)。
レジストしてあったため、お知らせのメールを受け取り……実際に評価してみてなかなか驚いた。
何度かβ版のDiary++をさわったことがあったのだが、まだ未完成な状態だったので意味のある評価はできなかった。
正式リリース版では、AppleScript対応機能がひじょうに充実しており、完成度がひじょうに上がっていることが伺われた。その完成度の向上は驚くべきポイントではあるのだが、一番驚くべきことは……Diary++が文章としての日記を保存する日記ソフトというよりも、日々さまざまな活動を行ったその内容を溜め込んでおくストレージとしての性格を強めたということだ。
MacJouralの方向性と非常に近いものになってきた。Diary++Xは日記、メモ、ブックマークなどを時系列で管理できるとともにキーワードをつけて、あるいは全文検索で検索できるようになったのだ。
ただ、Webページの内容を文字どおりそのままコピペしてスクラップブックのように活用できるMacJournalと一緒には比較できないような気がする。
日記やメモの階層的なフォルダ構造をまだ(AppleScriptからは)うまく扱えていないようなので、使い勝手がいまひとつなのと、GUIから使ったときに表示が崩れるように感じられる(→)。まだこなれていない印象を強く受けてしまう。
日記ソフトというよりも、日々のライフログを保存したり検索するソフト……という方向転換に伴い、Diary++Xはどういった方向に育っていくべきなのか?
既存のソフトと同じ方向を目指すべきではないと考える。MacJournalと正面から勝負を挑むといっても、数年分のアドバンテージがあるため、これに勝つことは容易ではない。
であれば、まったく異なる方向性を目指してみるのが上策ではないだろうか。たとえば、FileSystem Eventを拾って、さまざまな作業を行っている最中に作成したファイルにはどのようなものがあるとか、ユーザーが定義する「作業」(それはメモや日記などを書くことで示される時間軸上の範囲)の最中にどのようなファイルを作成したのか、それを示してくれたりすると……なかなかよさそうだ。
具体的にいえば、システムの情報を拾って機械的にワークログを作成するような方向への進化もアリではないか、ということだ。
ユーザーが何らかの日記を書いたとする。それは、前回書いた日記からその時点までの行動内容やその間に考えた内容である可能性が高い。
そこで、その一定の時間内にどのようなアプリケーションが使われ、ファイルが作成・変更されたかをトラッキングできれば、その一定の種類の仕事なり考えをまとめる際に必要な作業をなぞることができたり、さらにどういう書類を作成ないし修正したかを検出できれば(その途中でどのようなメールを読んだかも含む)、何か意味のある傾向やら情報を抽出できるのではないか
……という話だ。ライフログというよりも、コンピュータを用いて行った作業の生ログに近いものが、UNIXのsyslogレベルの話ではなく、もっと人間の意識に近いデスクトップ・アプリケーションのレベルで取れて、それって意味があるんじゃないの? という話なのだが……まー、メールはGmailを使ってWebブラウザで読んでますとか、Webブラウザだけあれば仕事が済みますとかいうレベルの作業しか行っていない種類のユーザーには不要かもしれない。
Web上のBlogとかSNS上の日記に書くよりも、ローカルに書いておいたほうが「便利」だということを、さらに強力に訴求していく必要があるんじゃなかろうかと考えるものだが、どんなものだろうか。
Diary++でひとこと言わせていただきたいのは、AppleScriptの命令が不可解なこと。辞書を読んだだけでは機能を把握できない。幸い、Scripting系のドキュメントが添付されているのを見つけたが、これがなければScriptingは不可能である。日記やメモの本文テキストにアクセスするのに先立って、「open text contents」という命令を実行する必要があり、操作が終わった後には「close text contents」という命令を実行する必要がある。GUI側から操作できないようにロックしたりする排他制御に見えるのだが、これはアプリケーション側で管理すべきではなかろうか? ASからの命令を受け付けている時には画面のリドローも停止して、ASが終了したらGUI側からの制御を受け付けるといったような……Scripterが明示的に排他制御を宣言するソフトなんて聞いたことがない。