RESTの力、RESTの制約
今年2つの講演
今年2019年は、3月にphperkaigi 2019でRESTの力、12月にはphpカンファレンスでRESTの制約の講演を行いました。
講演時間の短いRESTの力ではREST制約の中から一部を紹介して、「プレゼンテーションそのものがハイパーメディアであり、情報は有機的に結合され真の力を発揮する」というストーリーを語りました。
9ヶ月後の講演では、残り9つを含めた全ての制約を紹介して「表現に含まれるハイパーメディアコントロールでアプリケーション状態をコントロール」するRESTをより深く理解するための説明をしました。
この記事ではそれぞれの講演の振り返りではなく、テーマの背景を記してみたいと思います。
最初のスライド
私が他の講演でもたびたび使用しているこの画像はWikipediaのハイパーテキスト で公開されてる画像です。「Hypertext Editing System (HES) IBM 2250 ディスプレイ・コンソール – ブラウン大学、1969年」とキャプションにはあります。
以下はWikiのHypertext Editing Systemからの抜粋です。
Hypertext Editing System (HES) は、1967年、ブラウン大学の Andries van Dam の指導のもと、テッド・ネルソンらが行った初期のハイパーテキスト研究プロジェクト。HES は先駆的なハイパーテキストシステムであり、データを「リンク」と「分岐するテキスト」で構成している。
- 複数の対話利用ユーザー 1 スクリーン上でのハイパーテキストの自動的ルーティング。ユーザーはとりうる代替案を指定する。これは ブッシュの「連想の航跡」とかエンゲルバートのトレイルマーカーに相当
- 複数のウィンドウをスクリーン上に生成し、様々な文書を同時に表示して作業できる ようになるだろう。例えば、ある 文章をコピーして別の文書に埋め込む などである。
- ブラウン大学で開発済みの Sketchpad プログラム と連結した拡張グラフィックス機能を追加する。
- 編集履歴を保持し、文書の内容をその任意の時点の状態に戻す機能が考えられる。
- 我々はライトペンよりも適したユーザーインターフェイスに強い関心を持っている。
- 長期的には、このようなシステムはあらゆるテキスト処理に使われるようになると見込まれる。ネルソン(Nelson, 1967)が主張するように印刷物を代替するようになるかどうかは予測できない。しかし、その実用性と有用性は明白である。
2019年のインターネットを知ってる我々にとってこの1967年の初期のハイパーテキスト研究プロジェクトの考察は大変興味深いもので、驚くべきものです。
現代のハイパーテキストシステム(WWW)では「複数の対話利用ユーザー を相手にするためのファイル管理の問題」はクライアント・サーバ制約や階層化制約、キャッシュ制約によって解決がなされています。
GUIによるコンピューティングの予見もライトペンのようなキーボードに加えた新しい入力デバイスの必要性や、開発されたばかりの”Sketchpad プログラム”への注目に見ることができます。
- 連想の航跡 (1945)https://ja.wikipedia.org/wiki/Memex
- スケッチパッド(1963) https://ja.wikipedia.org/wiki/Sketchpad
バージョニングシステムを持った文章管理や、文章構造をグラフで捉えることとその可視化、複数の対話利用ユーザー、まるで半世紀後の今のWWWを語ってるようです。
その彼らは「ネルソンが主張するように印刷物を代替するようになるかどうかは予測できない」としつつも「その実用性と有用性は明白である」との確信を得ています。
そして半世紀が経ち、世界の情報はハイパーメディアで繋がれました。
この白黒写真の背後には壮大なストーリーがあり、縦型モニタのハイパーテキストをタッチペンで操作してる様子には未来を感じます。好きな写真です。
ハイパーメディア
普通のテキストは順番があります。 ハイパーテキストは情報が相互に結ばれ、始まりも終わりもありません。
ハイパーテキスト、ハイパーメディアという言葉を作ったのは「テッドネルソン」1965年の事です。 情報の記録は紙がベースになってるという意識を壊したいと願ったイノベーターです。
そのネルソンの映像で、私が好きなのはこれです。
“the world is a system of ever-changing relationship and structures struck me as a vast truth”
“It is so difficult to visualize the world as a system of ever changing interconnections.”
ネルソンが5才の時に祖父と一緒に公園に行った時の思い出を語ります。ボートから湖面に手を入れた時、手を開いたり閉じたりすると水の流れが変わる、手の動きと水流の関係性。それにネルソン少年は心を奪われます。
それを”超一般化”して「世界は絶えず変化する、関係と構造のシステムである」と結論づけ、そういう着想を得てからは相互接続(interconnection) が自分の思索の中心となったと続けます。
書くという行為は、その「壮大な関係と構造の織物」をただの「狭いシーケンス(narrow sequence)」にしてしまうものだ、その”間違った圧縮”をHumanity has no decent writing tools!” として断罪もします。
何という発想でしょうか。
内容も素晴らしいですが、この映像は情熱を持ってそのアイデアを語る人の良さが溢れてます。好きな映像で、繰り返し見ました。
続く人々、繋がるアイデア
コンピューターが単なる数値を処理する機械と見なされていたころに、対話型コンピュータとハイパーテキストを活用して、集団的知性の利用を実現することをライフワークとしたエンゲルバート。カードをメタファにしたリンクシステムで世界最初の商用ハイパーテキストシステムを作ったビルアトキンソン。
ヴィトンサーフらが作ったインターネットというインフラに、ハイパーテキストシステムを作ることを発案したWebの父バーナーズリー。それを論文という形でまとめたフィールディング博士のREST論文。
生物が他と関係してエコシステムが作られているように、他の知識と関係が無い知識、情報はありません。ハイパーメディアというアイデアも年月をかけ人々のアイデアが繋がり、WWWとして結実しました。
今までの講演、すなわち全てを結ぶ力(2014年PHPカンファレンス大阪基調講演、2015年PHPカンファレンス福岡基調講演)、RESTの力(2019年phperkaigi)、RESTの制約(2019年PHPカンファレンス東京)、これらのプレゼンテーションを通じて伝えたかった事は、全ての情報が接続されるWWWという人類史的な地球規模の情報ネットワークの壮大さ、その基盤技術としてのRESTの設計水準の高さ、面白さ、そして何よりそのメディアの登場を私たちは目撃しただけでなく制作に参加してる事の素晴らしさです。
これで「”全ての力”トリロジー」は一旦終了です。5年に渡って大勢の方に講演を聞いていただきました。ありがとうございました。
- 2014 全てを結ぶ力
- 2015 全てを結ぶ力(2015)
- 2019 RESTの力
- 2019 RESTの制約