うちあわせCastな木曜日

9:00

おはようございます。本日はごごからうちあわせCastの収録です。午前中は原稿を進めたいのですが、昨日のTextboxの続きもちょっと考えたいところです。

publish:倉下忠憲意味空間におけるスキーマ - 倉下忠憲の発想工房

今自分が作っている情報空間について一度整理しておきたいところです。ちょっとスキーマを勉強しましょう。

あとで読む:セマンティック・ウェブ - とほほのWWW入門

Textbox:

昨日は、読書メモについてのメモについて少し考えました。

まず本の詳細情報がある。で「この本についてノートを取る」というボタンを押す。すると、メモ用のウィンドウが開く。ここまでは鉄板です。で、そうして書いたメモについてのメモを取りたくなったらどうするかを考えました。

で、思ったのが「まず保存しよう」というものです。一つ目のノートを書いているときに、最後まで書き切ってしまう。

すると、ウィンドウが消えてさきほどの詳細情報の下に関連するノートとしてそれが表示されるようになります。

その状態においても当然「この本についてノートを取る」があって、それを押せば同じような動作になり、保存ボタンを押せば、それもまた追加されます。上に追加されるのがよいでしょうか。そんな風に右側に作成領域→保存して下に追加を繰り返していく。

で、それぞれのノートに対しては右側に「このノートについてノートを取る」が表示されて、それを押すと、そのノートのIDがfrom欄に入ったノート作成領域ができる。これが一番整合性がある操作でしょう。

で、問題は、どのような「分岐」をどのように表示するかです。もっと言えば「本の詳細」を開いているときに、その「ノートについてのノート」をどれだけ表示するのか、という点。

まず、脇道はまったく表示させないならこれまでのUIとほとんど同じです。しかし、本についてのノートにrefが設定されているなら、それも本の詳細表示を見たときに表示するとなると(再帰になるので)結構な問題が発生しそうです。

そのように全方位に表示するか、「一段回目を表示」のように脇道の度合いを決定できる表示スタイルにすることもできるでしょう。あるいは、本についてノートをクリックしてそれを詳細表示に持ってきたときだけ表示するという塩梅でも良さそうです。

完璧に全方位を対応すれば、たぶんそれは「メメックス」としてブッシュがイメージしていたものに近くなるのではないかと予想されます。でもってこれはかなりツェッテルカステンに近いものになるでしょう。

* * *

とりあえず、入力する側のイメージはできてきました。「本についてのノートについてのノート」のID欄に、大本の本の情報を含めるかどうかは検討課題ですが、from欄は一つにした方が良さそうです。

ほんとに?

一人の人間は二つの「ソース」を持ちます。だったら、fromも二つあっていいのでは?x:fromとy:from。むしろ既存のツールはこのような「合流」がうまく表現できないのが問題ではなかったのか?

たとえば、本という情報源が一つあるとして、それについての読書ノートは「その本」と「倉下忠憲」という二つのソースによって生まれていると表現できるでしょう。で、たいていの場合片方は「倉下忠憲」だから消去しておいて問題ない、という格好です。

そう考えると、「本についてのノートについてのノート」は、片方に「その本」があり、もう片方に「倉下忠憲の〜〜という考え」というより具体的なfromが示されていると考えられるでしょう。普段の着想は「倉下忠憲」という一番大きなカテゴリにおいて作成されているのに対し、それらのノートは「倉下忠憲の〜〜についての考え」という部分集合によって生成されていると定義できるわけです。

ただし、このように経路を二つ持ってしまうと、管理がすさまじく面倒になりそうな予感があります。一応、1st fromと2nd fromとを分けて、普段の処理は1stだけを優先して、とかをやれば問題は小さいかもしれませんが。

* * *

fromのidを二つ持たせることの弊害は、もちろんこれまで書いてきたコードの改修があるという点ですが、それ以外には何かあるでしょうか。

よくよく考えてみるとあまりないような気がしてきました。「親に向かって辿っていく」という工程があったときに、それが分岐を生んでしまう、ということくらいでしょうか。「一意」に定まらないわけです。

* * *

たとえば、「本についてのノートについてのノート」の詳細を開いたときに、大本の本が表示されているとちょっと嬉しいのではないかという気がします。あるいはそれは気のせいなのかもしれません。もしリンクによって詳細情報を辿っていけるなら、大きな問題にはならないでしょう。ふむ。

ただし、そのように「現実に近い形」をしたとして、それが情報ツールとして好ましいとは限りません。最高地図は現実だ、みたないことになってしまいます。

リンクを辿っていけば大本の本にたどり着けるならそれでいい、という考え方も実際実用的です。ようはその詳細情報を開いたときのパースペクティブがどのようなものであるのかを考えればいいのでしょう。そうした思考を展開するときに、大本の本の情報はどこまで必要なのか。

* * *

Javaはクラスの多重継承はできないことになっている。つまり「親」は一つというわけだ。そのかわりにインターフェースは複数実装できる。親ではないけれども何かしらの「継承」は複数行えるということ。

無理やり生物に応用すれば、卵子的なものを「クラス」と考えれば一応この枠組みで理解することはできる。なんであれ、何か「骨子」や「ベース」になるものがあり、それは一つだけなのだ、と。

* * *

そもそもGUIにおいて、「二つの入力」というのがなかなか難しいだろう。以前Textboxに実装した付箋を二つ以上選択するとカードが表示される、というのはその意味で斬新だったかもしれない。あれも「ソース」を二つ以上持つことがはじめから想定されている。

* * *

fromを二つ以上持てるならば、それはaddress(/tag)と変わらないことになる。単に有向であるだけだ。でも、それでもいいのかもしれない。

* * *

実装で考える。

もし、「本についてのノートについてのノート」を書くとして、二つのIDを持つならばどのような動作になるか。まず、「本についてのノート」が表示されていて、「このノートについてノートを書く」を押すとする。すると新規入力が表示されて、そのときにfron欄に先ほどのノートのIDが放り込まれる。で、そのときにどうなるか。先ほどのノートがfromを持っているならば、それも保存してしまう。いや、先ほどの例ならば「何もfrom欄を持っていない項目」までさかのぼって入れることになる(でなければ、本についてのノートについてのノートについてのノートのときにうまくいかない)。

どう考えても面倒な処理だ。さかのぼったときのすべてのIDを入れる手もあるが、それはリンクをクリックしていくのと代わりがないだろう。あくまで「末端」だけを置いておく。それはたとえば「織田信長」→「織田家」みたいな感じで、何代進んでも「織田信長のことは忘れない」的なことになるはずだ。アイデアの伝統主義。

原理的にこうした機能は面白そうだが、あまり広がりがないうえに実装がむちゃくちゃ大変そうなのでいったん探索はやめておく。あくまで「アイデアを扱うのに十分」な機能があればいい。

* * *

とりあえず入力は固まった。そのノートを生成するに至った直近のノートのIDだけを保存する(ただし、fromを複数持つ可能性はキープしておきたい)。

で、問題は表示だ。それらの「関連」をどこまで拾っていくか。それはまあ、実際にノートを作ってから考えればいいか。どこまで広がるかもわからないし。

10:00

Textbox:

モーダルのz-indexをいじってみます。現状だと本の詳細を開いたあとにinputboxを開くとinputboxが下になっているので、この数値を変えます。合わせて、z-indexレベルを整理しておきましょう。

* * *

入力用のモーダルが一つしか開かないならモーダルの上にモーダルを重ねて表示する作戦もありでしょう。その際に、二つのウィンドウ部分だけが重ならないようにすればOKです。

Image from Gyazo

これの位置を調整し、さらにこのinputboxをIDつきで呼び出せるようになれば、inputboxと他のページが「接続」するようになります。

メルマガ:

原稿の一つ目を書きましょう。

* * *

2000字ほど書けました。

14:00

うちあわせCast:

収録です。

* * *

編集のちアップしました。

publish:第百二十二回:Tak.さんとアナログ的デジタルとデジタル的アナログについて 作成者:うちあわせCast