孤立(Stand Alone)の状態で生きている人間はいない。
必ず他者、モノ、時間、知識、組織。そして、それらとのネットワーク関連構造に依存して生きている。
プログラミングの世界での鉄則がある。
「依存関係を最小にする事」
AモジュールがBモジュールに依存してるとする。
(例)
Aモジュール:ホイール
↓依存
Bモジュール:ミシュラン・タイヤ
この場合、タイヤをミシュランからダンロップに変更しようとすると、Aを作り直して、Cモジュール:ダンロップ に依存先を変更する必要がある。
タイヤとホイールの関係は規格化されている。
つまり、ホイールからタイヤ全体を集合として見ると、このような関係になる。
Aモジュール:ホイール
↓依存
インターフェース:タイヤ規格(タイヤ幅、扁平率、リム径)
↑適合
Bモジュール:ミシュランタイヤ
Cモジュール:ダンロップタイヤ
この状態になり、ホイールは特定のタイヤという存在に縛られず、ホイールにとって必要な情報だけを概念として抽出し、具体的なタイヤには縛られない状態になる。
仕事や日常生活で、特定の存在に依存する例はとても多い。
例えば、中学生が読むような雑誌で、
「こうすればデートが成功する」
みたいなHow To特集があったとする。
食事をするお店の評判を事前に調べて検討し、相手の好むプレゼントを用意し、話題はどのようなモノがいいか、という事が延々と書いてある。
ある男の子は、このステップを全て、必死で暗記するだろう。
別の男の子はこう考えるかもしれない。
「この本が言いたい事は、つまり女の子の立場になって、思いやりを持て、という事だ」
一人目の男の子は、デート本自体に依存した。
二人目の男の子は、デート本の「概念」だけを抜き出し、それに依存した。
人、モノ、知識、時間。
様々なモノに依存しなければ生きていけないのが人間だけど、特定のなにかだけに依存しなければいけない状況は、実は少ない。
システム開発の現場には、多種多様な方法論が存在し、時々、各派閥が宗教論争のような議論になる事がある。
その人達は、特定の方法論に依存しているのだ。
大事なのは、自分が置かれている「現実」に、方法論の「概念」を適合させる事なのに。
人の恋愛感情もそうかもしれない。
人が人に惹かれるのは、その存在自体というより、その存在が持つ「Something Special(特別なモノ)」だ。
存在自体に価値を見いだすと、それは神への盲信と同じ。完全な依存だ。
自分から見た、その人の「Something Special」が変容した場合、
良い方向へ導く事も出来るかもしれない。
それが無理なら、去る事も出来る。
存在自体に価値を見いだすのは、愛ではない。宗教だ。
インターフェースを知る事。
それは、なにをするにも、一番大事な事なんだ思う。