言語ゲーム

とあるエンジニアが嘘ばかり書く日記

Twitter: @propella

インターネットの調和と進歩

どこかと関係あるようで無いようなトピですが、大昔の面白い議論として、68 対 80 というのがありましたよね。モトローラの美しく速いチップとザイログインテルの汚いけど過去の互換性のあるチップのどちらが良いかという話。この構図は登場人物を変えながらコンピュータ史のあちらこちらで散見されます。純粋で素直な技術と、過去に囚われた技術。皮肉な事に、負けるのは常に前者です。6809、Macintosh、Be、RISC、、、、。善が負けるというこの事実は、我々の愚かさをよく映す鏡でしょう。しかし救いなのは、愚かなのは我々だけでは無いという事です。

あまり詳しくありませんが、生命のデザインにも妥協の産物があると聞いたことがあります。例えば目の盲点は、わざわざ神経が目の内側にくっついている事による構造的欠陥ですが、それは外胚葉由来である神経系を体の内側に持って来る強引な歴史的仕様変更のせいだそうです。神が間違えるのですから我々の愚かさも頷けます。

いまさら眼球を裏返すわけには行きませんが、道具のデザインは変更が可能です。また、変更を可能にする為には技術が層状に分かれている事が重要になります。今の WindowsMS-DOS とは由来の違う物ですし、Mac は二度も CPU を変更しています。さて、ここで面白いのは、インターネット技術が今後どうなるかという事でしょう。

TCP/IP は、興味深い事に開発当初とは全く違う姿で使われています。コンピュータ同士を対称に結ぶ機構として開発された物にも関わらず、Web の広範囲の利用によって、接続は非対称で状態は接続ごとに破棄という、TCP/IP 本来の能力を十分に発揮しない機構の上に、無理な増築で対称通信と接続の保存を実現しているのが今の AJAX です。

ここで捩れを戻すというのが正しいやり方だとは分かりつつ。ネタとして戻さない場合の進化を考えてみます。どんな技術も成熟すると空気のように見えなくなります。我々がインターネットを使うときにケーブルの品質を考えなくても良いように、Web の性質が非対称と状態の破棄であった事を誰もが忘れるでしょう。例えば在りうる恐ろしい未来のシナリオの一つとして、プログラマGoogle API しか使わなくなるというのも十分考えられます。

その結果、Google (でも何でも良いけど) API さえサポート出来れば、下層プロトコルは Web である必要が無くなり、変更可能になります。やっと技術的な理由で変更可能なのです。このシナリオには破壊的なヒーローや天才が不要だという意味で一番面白く無いですが、一番ありがちな話です。

今私が欲しい事は、歴史によって技術的でない未来を予測する事です。なぜなら我々技術者は常に技術的でない理由で理想を追求する道を奪われるからです。それを避けるには、不合理な力学がどう働くかを知らなくてはなりません。正しい技術は存在すると思いますが、歴史が正しく動くわけではありません。残念ながら、私は技術だけで未来を発明する事は出来ないと考えています。だから歴史に学ぶ必要があるのです。