CERN、現代のWebブラウザー上で実行できるよう再構築した初期のWebブラウザーを公開 22
ストーリー by headless
復刻 部門より
復刻 部門より
World Wide Webが提案されて今年で30年となるのを記念して、CERNが初期のWebブラウザー/エディター「WorldWideWeb」を現代のWebブラウザー上で実行できるよう再構築し、公開している(CERN 2019 WorldWideWeb Rebuild、
The Registerの記事、
WorldWideWebブラウザー)。
現在発見されている最も古い(かつ唯一の)WorldWideWebのソースコードは1991年の著作権表示のあるバージョン0.15。このソースコードをコンパイルすることはできないものの、「prerelease b of version 0.13」というバージョンのバイナリーが残っており、博物館にあるNeXTコンピューター上で実行できたという。さらに1994年の著作権表示があるlibwwwベースのNexus バージョン2.02のバイナリーを加え、ソースコードとアプリケーションの機能を突き合わせて調査したそうだ。
再現されたWorldWideWebはJavaScriptとReactを用いて書かれており、メニューの「Document→Open from full document reference」でURLを指定すれば任意のWebページを表示できる。リンク先のページを表示するには、リンクをダブルクリックすればいい。表示したドキュメントは直接編集可能だ。WorldWideWebが認識する26種類の「タグ」は多くが現在のHTML文書でも使われているが、現在は使われていないものもある。「エレメント」という言葉はまだ使われていない。また、スタイルシートの仕組みも用意されているものの、現在のCSSとは異なるものだ。
現在発見されている最も古い(かつ唯一の)WorldWideWebのソースコードは1991年の著作権表示のあるバージョン0.15。このソースコードをコンパイルすることはできないものの、「prerelease b of version 0.13」というバージョンのバイナリーが残っており、博物館にあるNeXTコンピューター上で実行できたという。さらに1994年の著作権表示があるlibwwwベースのNexus バージョン2.02のバイナリーを加え、ソースコードとアプリケーションの機能を突き合わせて調査したそうだ。
再現されたWorldWideWebはJavaScriptとReactを用いて書かれており、メニューの「Document→Open from full document reference」でURLを指定すれば任意のWebページを表示できる。リンク先のページを表示するには、リンクをダブルクリックすればいい。表示したドキュメントは直接編集可能だ。WorldWideWebが認識する26種類の「タグ」は多くが現在のHTML文書でも使われているが、現在は使われていないものもある。「エレメント」という言葉はまだ使われていない。また、スタイルシートの仕組みも用意されているものの、現在のCSSとは異なるものだ。
これがうわさのWWWなのか! (スコア:5, 興味深い)
自分が初めて見た User-Agent は、NCSA Mosaic(NTT高田さんによる日本語化パッチ版)。これはWebページを「閲覧」するものでした。
ものすごい衝撃。例えばこれで「導入図書」(やら簡易取説やら提案書やら...etc)作ったらとっても効率的。
以降、HTMLの仕様書を入手してお勉強して・・・がワールドワイドウェブ体験の始まり。ドキュメントを「閲覧」する事ではなく「作る」事が最大の目的。
その後 User-Agent としての「WWW」の名前は聞くことがありましたが、「元々がNEXT用に作られたため移植が困難」と聞いておりました。
今回その体験版を使ってみて、単に閲覧するだけじゃなくって「作る」方も包括されていたが分かって「ああ、やっぱりね」という印象。HTMLがCERNの中で、論文の執筆としての効率よいシステムが開発のきっかけだったとは聞いていますので。とてもありがたかったです。
昔、Netscape Composerとか言うのがありましたよね?Web閲覧だけじゃなくって、HTMLページも作れるやつ。諸々あって消え去ってしまいましたが、あの時代ってそういうものだったよなぁ・・・
ComposerはSeaMonkeyに残ってる (スコア:2, 興味深い)
Netscape Composerは、Mozilla Suiteに引き継がれて今もSeaMonkeyに残ってる。 [seamonkey-project.org]
任意のサイトは表示できないはずだが (スコア:1)
Host:ヘッダができてname based virtual hostを使えるようになったのはもっと後の時代だし、
SSLという概念が存在しなかったからHTTPSなサイトはURLを正しく認識できないはず。
実際試してみるとアクセスできるんで、このあたりは元のままではなく現代向けにかなり改造されてるっぽい。
Re:任意のサイトは表示できないはずだが (スコア:1)
というか通信周りはホストブラウザーの機能をそのまま使っているだけ。ブラウザー上から任意のTCPリクエストとか発行できないし。
Re:任意のサイトは表示できないはずだが (スコア:1)
ブラウザ上じゃなさそうだけど。IPアドレスを調べるサイトにアクセスすると
ホスト名:oostandardprod-a5076007f2.cern.ch
IPアドレス:188.184.108.149
httpsは通るけど、User-AgentもHostもリクエストヘッダにはなさそう。
HTTPバージョンは1.0かな?0.9にすると400 Bad Requestを返すサーバでも表示されるからHTTP/0.9ではなさそう。
Re:任意のサイトは表示できないはずだが (スコア:1)
HTTP/1.1ではHost必須だから1.0だな
Re: (スコア:0)
現物見ずに書いてるけど……
現代ではflashかJavaAppletでも使わんとそこらのWebページから任意サイトを読むのは無理かと。
機能拡張とかで権限持ってりゃ別。
なのでWebプロキシかなんかでも居てそっちの機能では?
Re:任意のサイトは表示できないはずだが (スコア:1)
imgもiframeも別サイトを取得できるよ。
拡張機能で禁止していない限り。
Document→Open from full document reference (スコア:1)
当時のブラウザーにアドレスバーはなかった。
MOSAICにはアドレスバーがあったが、表示専用でページの移動のために入力はできなかったらしい。ってひろみちゅが言ってた [takagi-hiromitsu.jp]
Re: (スコア:0)
最近のGoogleはもう一度URLを無くそうとしている気配を感じる。
日本最初のホームページ (スコア:1)
とりあえず、KEKの日本最初のホームページ [ibarakiken.gr.jp]のアーカイブ( http://www.ibarakiken.gr.jp/www/first/kek.html [ibarakiken.gr.jp] )を開いてみましたが、さすがに何も問題なく表示されますね。
NTTのホームページも試してみたかったけど、アーカイブが見つからなかった…
日本語も… (スコア:1)
日本語も問題なく表示 [imgur.com]できますね
Re: (スコア:0)
当時のブラウザーはUTF-8に対応していなかった(というかUTF-8という符号化方式自体が存在しなかった)のにどういうことなの
Re:日本語も… (スコア:1)
絵文字もカラーで表示できているので、文字レンダリングのほとんどは、ブラウザのエンジンに丸投げ。
Re: (スコア:0)
Plan9といえばWSLがまさかの9Pプロトコルを実装したという
ブラウザはすごい (スコア:1)
だいぶ前になるが、FreeBSDをデスクトップ環境で使おうとして、ブラウザを
パッケージから入れようとしたら、依存関係で山のような他のパッケージを
要求され、俺の趣味には合わないと諦めたことがあった。
確かブラウザで動画が見られるようになる前だったと思うけど、色んな形式の画像やら
あれやらこれやらに対応しているわけで、ブラウザってこんなに巨大なシステムだったのかと
思い知らされました。
win環境ではフリーのブラウザを当たり前のように入手して使ってたので
なんとなくなめてましたね。
今はきっともっと巨大なシステムになってんだろうなぁ、くわばらくわばら。
Re:ブラウザはすごい (スコア:1)
Mozilla (まだFirefoxは存在しなかった) をPortsから入れたらビルドに数日かかった思い出
今思えばそれほどの大規模なコードを一発でビルドできる環境を維持していたFreeBSDは凄いかも
スッキリしてていい (スコア:0)
最小限の装飾しかない文章が如何に読みやすいか実感できますねコレ
サイドのメニューやなんかのレイアウト部分はともかく、記事部分はすんごい読みやすい
Re: (スコア:0)
w3mやlynxを使えばいいんじゃあないかな
タイムトラベルに必要? (スコア:0)
CERNはタイムマシンを開発している
Re: (スコア:0)
SERNだってば