ブラウザだけでいい

二つの記事から共通点が見出せる。

デスクトップPCの役割がブラウザを通してシンクライアント的な役割へと移行しつつあるという事が見えてくる。大量のクライアントPCを導入し、多くのライセンスを購入し、多くのソフトウェアをインストールし、ライブラリのバージョンなどを管理している状態から、クライアントを軽量化し、必要な機能はサーバ側で提供する形へと変化していこうとしている。

それはデスクトップアプリケーションが死んだからかも知れないし、ajaxなどによってウェブアプリケーションが進化したからかも知れない。

私は以前からアプリケーションのプラットフォームによる差というものに辟易していた。古くはIBM-PCとPC98であり、近年ではWindows/Mac/BeOSであったりした。Windowsは一つの解でありえたが、時代がネットワークを中心として回り始めると、それもまた一つのプラットフォームでしかなくなってしまった。

アプリケーションがそのプラットフォームでしか動かないのである。

それに対して、ウェブサービスウェブアプリケーションはブラウザに依存する部分はあるものの、多くのOSに移植されているFirefoxを使えば、OSというプラットフォームに依存する事無く、同じ事を提供する事ができる。ミドルウェアとしてブラウザを支えるものになり、ブラウザがプラットフォームに取って代わる。

まだまだデスクトップアプリケーションに敵わないものもあるが、その領域はどんどん小さくなっていくだろう。そして最小限の、もしくは専門的なもの以外は使われなくなっていくに違いない。

ところで、ウェブアプリケーションの開発者がクソだと言うのはミクロ的にモノを見すぎて、大局を見失ってる様に見える。malloc()やfree()なんてCの最初に覚える事の一つだし、ウェブアプリケーションを作る時には一部をC++などで高速化する事もある。サーバを立てる時には負荷を計算してカスタマイズしたり、アクセスの導線を考える事もある。場合によってはデザインやユーザビリティさへも考える。malloc()やfree()の使い方を知っていてもクソの役にも立たない事も多い。

脱線したが、要するにユーザにとって必要な機能はブラウザだけ。セキュリティやらそれを支える機能はユーザが知る必要はない。その他の機能はネットワークで外にあればいい。

最後に貴重な翻訳を行って頂いた両氏に感謝。

追記
「違う、〜」の方は自身で書かれたものだそうだが、まぁそれはどうでもいいや。