この記事を読むのに必要な時間:およそ 1 分
『8pagememo』の制約のある自由
『8pagememo』は,毎朝1枚,予定は『Googleカレンダー』から,ToDoは『Remember The Milk』から,天気や今日の言葉や地図や今日の日づけもマッシュアップした状態で紙に印刷して使用する,インターネットマッシュアップソフトです。
図1 8pagememo
![図1 8pagememo 図1 8pagememo]()
けっこう使い込んでいます。
紙のよさは,一覧性が高く,自由なレイアウトで自由に書き込みができることで,その紙のよさを最大限活用できます。
毎日が終わると,その日のメモをスキャンし,スキャンしたときにページ単位でつけたタグにしたがって,自動的にインターネット上にバックアップをとることができます。
紙のデメリットはデジタルで活用しにくいことですが,それをサポートするために,自動的にどうするかをあらかじめ紙にタグづけしておくことができます。
これをしばらく使ったところで,テレビ東京の『ワールドビジネスサテライト』で取材を受け,使っているところをデモしたところ,その取材の担当のディレクターの方も,メモ帳として『abrAsus』を使っているとのことで,『8pagememo』もおもしろいと感想をいただきました。
そこでそのディレクターの方がひとつつぶやかれたのが,「毎日夜にスキャンするのは疲れていてたいへんなので,溜めちゃうんです。溜めちゃうと,『EVERNOTE』に転送したときに,スキャンした日づけになってしまって,その日にならないのです」。
毎日スキャンはむずかしい
なるほど。たしかに毎日スキャンするのはめんどうくさいものです。酔って帰ってきたときには,まず無理でしょう。
では,どうしたらよいか。
ずっと考えてきたのは,印刷するときに日付を(人間が読める状態ではなく)コンピュータが読めるようにして印刷しておき,それを使って日付タグとして付与することです。
手書きでつけたタグを読むことができるのだから,あらかじめ定型で印刷したタグを読むことで,はるかに楽になるはずです。
方針は次のように考えました。
- 日付を特定日から計算して8桁の2進数に置き換える。
- 2進数を白黒でバーコード化する。
- 印刷時にそれを書き込む。できるだけデザインを疎外しないようにする。
- スキャン時には,そのバーコードを読み,ファイル名やタグとして日付を取り出し活用する。
日付を表示する仕様を考える
8桁の2進数で扱える数字はどのくらいあるんでしょう。そのあたりがぴっと出てこないところが素人なんですけど,8ビットってことは256種類ですか。えっ,じゃあ1年溜めると,もう使えないんだ…。
意外と8桁は小さいですね。もうちょっと桁を増やすと,新規に処理を書く必要が出てくるので避けたい。このあたりがアンビバレンツなところで,新規に処理を書いて20ビットくらい用意しておけば,一生をマッピングするのに充分足りると思うのですけど,いや,16ビットでも足りるのか。
すでに書いてある処理を使い回すほうがプログラムとしては楽で,そうするとユーザーに制約を課すことになります。つまり,256日以上溜めると,おなじ日が重複して出てくることになります。
うむむ。
と悩んだら,8ビットを2回処理して,16ビットにすればいいと考えつきました。それでいくことにします。
基準日を設定します。きりのいいところで,2010/01/01とします。だいたいこういうのは,えいやで決めます。すると,2010/04/26は何日になるんでしょうね。31+28+30+26=115日目です。
115を2進数にします。Google先生に訊いたところ,0b1110011らしいです。8桁あるので,01110011ということですね。
図2 日付をコード化して入れ込んだ『8pagememo』
![図2 日付をコード化して入れ込んだ『8pagememo』 図2 日付をコード化して入れ込んだ『8pagememo』]()
いちおうこんな感じで,日付をコード化して入れてみました。まだどう動くかとか,こまかいデザインの部分は調整が必要です。
以下次回。