失敗プロジェクトから生まれたJavaは大規模システム開発のプラットフォームとなるまでに成長した。記者としてJavaを追い続けてきた著者は,Javaの成功は通常のビジネス戦略によるものとはかけ離れていると考える。多くの偶然に恵まれたこととコミュニティに支えられたことで今日のJavaがある。(本誌)
私は1995年にJava技術と出会ったことがきっかけとなり,1997年から2002年までオンライン・マガジン「日経Javaレビュー」の編集長を務めた。現在は日経BP Javaプロジェクト編集委員という肩書で仕事をしている。要するにJavaの9年間の動向をウォッチしてきた記者というだけの人間である。この記事は,一人の記者の自分史,エッセイとして読んで頂ければ幸いである。Java技術のどこが開発者に支持されたのか,どのような特性を持つ技術なのかが,一人の記者というフィルタを通して見えてくるかもしれない。
Java技術 ⊃ Java言語
最初にお断りしておくが,この記事で語る対象は「Java言語ではなくJava技術」である(図1[拡大表示])。
Java技術はJava言語とJVM(Java仮想マシン),標準Java API群から成る。私の立場では,標準Java API群,つまりクラス・ライブラリ群に最も大きな意味を見いだしている。
Javaには二つの誤解がある。「Javaは米Sun Microsystems社が開発した技術である」という見方と,「Javaとはプログラミング言語である」という見方である(図2[拡大表示])。1995年の時点ではこれはどちらもいくばくか真実だったが,2004年の現在では全く正しくない*1。Java技術そのものと,Java技術を策定するプロセスが成長しているためだ。Java技術とは,今ではJCP(Java Community Process)が策定する多数の技術群の集合なのである。
これはJava技術に親しんでいる人には周知の事実だが,そうではない人にとってはなかなか理解しにくいことのようである。非常に大事な話なのに,正面切って語られることはあまりない。
このことを説明するには,やはりJavaの歴史を説明することから始めるのが結局は早道だと思う。前編ではまず,Javaの登場からブレイクまでをたどってみたい。
Javaは失敗プロジェクトから生まれた
Java誕生のきっかけは,ある失敗プロジェクトだった。
Java言語の原型は,Sun社内で1991年から始まった「グリーン・プロジェクト」のために作られた新プログラミング言語「Oak」である。このプロジェクトでは家庭向け情報機器の開発を目指しており,「*7(スター・セブン)」と呼ぶプロトタイプを作った。*7は6×4×4インチと手持ちできるサイズで,6インチのタッチスクリーン付きカラー液晶パネル,200kbpsの無線ネットワーク機能などを備えていた。ユーザー・インタフェースには工夫がこらされており,マンガ風のキャラクタが画面内で動き回り,情報機器に親しんでいないユーザーとのコミュニケーションを助けるように考えられていた。このキャラクタは,今もJavaのマスコット「Duke」となって残っている(画面)。グリーン・プロジェクトに関しては,1, 2に記述がある。どちらも著者はグリーン・プロジェクトの元メンバーで,Java前史が記載されている。
Sunはこの*7を日本の家電メーカー各社などに売り込み,家庭向けの情報機器という新ジャンルを開拓しようとした。SunのディレクタであるJohn Gage氏から後に聞いたところでは「日本のメーカーはみな親切に話を聞いてくれたが,1社として本当の関心は示さなかった。ネットワークやセキュリティについても,彼らはよく分かっていなかった」。
星 暁雄 Akio Hoshi日経BP Javaプロジェクト 編集委員1986年より日経BP社で記者兼編集者として活動。1997年から2002年までオンライン・マガジン「日経Javaレビュー」を編集。現在はイベント「J2EEカンファレンス」やメールマガジンIT Pro-Java Radar,単行本の編集などを手がける。Java技術が「軽量化」する動きが予想外に早いことが気になる今日この頃。 |