スパゲッティ思考

プログラミングとそれ以外のいろいろ

XMLHttpRequestの名前の由来ってなんだっけ。

XMLHttpRequestは、ブラウザ上でJavascriptからHTTPリクエストを送信するために使われるもので、メッセージボディーの中身に制限はなく、XML形式でやり取りしなければいけないといった決まりもない。なので先頭についてる”XML”は結構不自然に思える。 なんで”XML”?と疑問に思って調べてみたら結構面白かった。

XMLHttpRequestの歴史

Microsoftで働いていたAlex HopmannとShawn BracewellはOutlook Web Accessという、ブラウザ (Internet Explorer)のみから電子メールを使えるようにする機能を開発していた。 パフォーマンス上の理由でJavascriptからのHTTPリクエスト送信が必要になり、Alexの手によって生まれた”XMLHttpRequest”は、まだブラウザ上に組み込まれていないので、このままだとOutlook Web Accessを利用するのにユーザによるブラウザの機能拡張が必要になってしまう。

ただ、Outlook Web Accessには”ブラウザのみ”で利用できなければならないという要件があったので、 Internet Explorerに”XMLHttpRequest”を搭載する必要があった。

しかし、次のInternet Explorerのリリースに正式に間に合わせることは期限の問題で厳しい。 そこで、Windows用のXML処理ライブラリのMSXMLがInternet Expplorerの次のバージョンにバンドルされていることに気づいたAlexが、件のコンポーネントを”XMLHttpRequest”として名前を擬態させることでMSXMLに混ぜ込んで無事出荷することができた。

というのが”XML”の由来みたいだ。

まとめ

こういう、ちょっとした理由 (当時のAlexらからすればちょっとした理由ではないかもだけど)でつけられた名前が浸透してずっと使われることは、テクノロジーの世界でも世の中一般でもあまり珍しいことでないけど、調べれてみると結構面白い。

参考文献