日記
新幹線でLANが使えると幸せですね。2009年の予定ですけど。
人力検索はてな - ライセンスの問題です。CPL(Common Public License)で配布されているソフトウェアのソースコードを参考にして自分のLGPLで配布しているソフトウェアに機能を追加したいので..によれば、CPLのコードをプラグインという形でLGPLのプログラムに組み込むことは問題なさそうです。つまり、graphvizのコードをプラグインという形でGRINEditから使えるようにすることには法的な問題はないということです。
サーベイ能力弱いなぁ、僕。GraphvizのJavaによるラッパーがありますね、Grappaっていうのが。no longer activeですけど。これもCPLならこっちのコードを使う方がいいかもしれませんね。no longer activeだからこっちでいじっている最中に向こうがガシガシ書き換わることもないでしょうし、向こうにとってももうメンテナンスする気がないのですからこっちが引き継いでも損にはならないですし。
昨日のカレーみたいなポトフは、冷蔵庫から出してみるとゼリーみたないなものに変わっていました。骨のついている鶏肉をぐつぐつやったからかな?まだ2食分くらいあるので今日はこれにカレールーを入れることにします。
コラーゲンは骨から出たのか軟骨から出たのかどっちだろう。
JUNG - Java Universal Network/Graph FrameworkのFAQを参考にしよう。英文の。
__ 暑い。 さすがに冷房を効かせれば暑くはないんだけど、出勤過程が暑いので涼しくなっても汗臭い。
__ グラフの可視化を簡単に説明するサイトを探そうと「グラフ 可視化」で検索したら秋元@サイボウズ研究所プログラマーBlog: HTML構造のグラフによる可視化が一番上に来ました。
__ ダメだダメだダメだ、GRINEditリリース後しばらく遠ざかっていたせいで何をしたらいいのかが頭から消えていた。 消えないようにTODOとか作業ログとか書いていたのに、書き方が悪くてダメだ。
頭の中にあることを単に全部吐き出してしまうだけではなく(もちろんそれも書き忘れたことを後で探す必要が出来たときには重要だが)簡潔・最小限の「未来の自分への手紙」を書いておかないといけない。 やろうと思ったことを忘れないためには「Aをやろう」「Bをやろう」「Cをやろう」と全部書き留める必要があるが、次に再開した時に自分がタスクに押しつぶされたり道に迷ったりしないためには「次はアレをやろう」をわかりやすいところに書いておく必要がある。
角運動量の計算で外積が出てきたので結局「3次元だけども2次元に拘束されている世界」になってしまった。美しくない。いっそ3次元にしてしまった方がいいのだろうか。ほとんどの人にとって3次元は必要ないと思えるし、3次元にすると必然的に今の「平行移動」の他に「回転」が必要になる。別に出来なくはない、というか実は過去に3次元のバネモデルは 作りかけアプレットで使っているので目新しい問題点はないのですけども。うーん。ニーズがないと思うしなぁ…。
もう9時?!
__ だいぶ家事がうまくなったかも知れません(あくまで過去の自分と比べて)。 帰ってきて、薬罐に麦茶のパックと水を入れてお茶を沸かしている間に、 冷蔵庫から昨日のポトフの鍋を取り出し、チンして冷凍して置いたニンジンを入れて、タマネギの残りを入れ、沸いた薬罐と取替え、炊飯器にお米と水を入れてスイッチを入れて、今ぐつぐつと鍋が煮えているところです。 炊飯器は一番最初につければ良かったってのと、鍋に水を入れすぎてちょっとこぼれ気味なのが反省点ですね。あと時々新聞と一緒に入っている茶色の袋が、実はかなりマチが広くて読み終わった新聞を入れられると言うことに気がつきました。(っていうか古新聞を入れるための袋ですね、これ)。縛らなくていいので楽です。
お茶はいつも2リットルの水を入れて沸かしていたのですが、水出し麦茶のパックで出すとかなり濃く出るので2リットル沸かしても4リットルに薄めて飲んで大丈夫です。そこで「1リットル沸かして2リットルに薄めればいいじゃん」と気がついてお茶が沸くまでの時間を節約できました。
家事もハックですね。しかもマルチスレッド。
__ Grappaはおそらくレイアウトの機能を全く持っていないですね。dotファイル自体が頂点の位置などの指定された物に指し変わっています。とりあえずJavaで書かれたdotパーサは再利用できそうです。Cで書かれたgraphvizのコードを読むのと、graphvizのコードにコメントとして書かれていた論文を読むのとどっちが手っ取り早いかな。
graphvizを読めば読むほど、たいしたことがないように見えてきます。とりあえずレイアウト方法は6通りあって、そのうち2つはGRINEditと同じバネモデル。残りは階層的レイアウトと円形レイアウトと放射状レイアウトですね。円形レイアウトはJ. M. Six and I. G. Tollis, A Framework for Circular Drawings of Networks, Proc. of GD 99, LNCS 1731, Springer-Verlag, pp. 107–116, 1999に載ってそうです。ググって見つけたSymeonidis and Ioannis G. TollisのVisualization of Biological Information with Circular Drawings Alkiviadisが数ページを割いて解説しているのでまずはこれを読んで、原典に当たる必要があればそうしましょう。
フィードバック
コラーゲンは軟骨からじゃないかなぁ、というかなりいい加減な予想です。 ゼラチンってやつですよね。 ところで、ここをオイラのブログからリンクしてよかですか? 夏バテで吸い取られてます。 外を歩くと立ちくらみです。 明日は理化研@鶴見に行けるのか心配です。 というわけで来週の水曜日まで西尾さんと会わないことに。 夜って涼しくていいですよね。 夏だけ昼夜逆転しないかな、世の中が。
graphviz は個人的にはフローグラフを上からぶら下げて表示させたときに、連結線が綺麗な曲線で繋がってくれるのが嬉しかったのでした。世の中、グラフの可視化ツールというとバネモデルばかりで、なかなかフローグラフを綺麗に配置をしてくれるものがみあたらないですよね……。不勉強なだけだとは思うんですけど。