ダリル・K・タフト氏によるジェームズ・ゴスリング氏への取材
今更読みました。。。
オープンソース化に満足?――Javaの父ゴスリング氏に聞く (1/2) - ITmedia ニュース
興味深かったところだけピックアップしてみます。
まずはピーターの法則。
ピーターの法則とは「すべての人は昇進を重ねて、おのおのの無能レベルに到達する」というものです。仕事をやりやすくするツールを作るのにかなりの時間を投じている人が、自分の仕事を容易にしたら、その人に「あなたは何もしないで座っているだけだ。だからやることをあげよう」と言う人が出てきます。皆が今構築しているものがどれほど複雑か見てみると、5年前と比べたらとてつもないレベルです。
続いて通常のスクリプティング言語と JavaFX Script との違いについて。
基本的なレベルでは、これらスクリプティング言語のほとんどはトランザクション指向です。リクエストが来て、ページを生成して出せば終わりです。グラフィカルユーザーインタフェースでは、実際に時間の進行があります。時とともに何かが起きます。テキストの一部が表示されるような、わずかなことでもです。ただ現れるのではなく、ゆっくりと展開していきます。ゆっくりと不透過率を変えたり、サイズを変えたり、あらゆるものを変えます。グラフィカルユーザーインタフェースの世界では異なるアニメーションの動きに関するものもたくさんあります。
Web2.0 について。
1万通りくらいのやり方があって、あれやこれやいろんなものをまとめるのは、ペンキを混ぜるようなものです。何色ものペンキを混ぜると、いつも汚い茶色になります。そういうやり方をしているときに一貫したアーキテクチャーアプローチを考えるのは困難です。
前編の2ページ目。
オープンソース化に満足?――Javaの父ゴスリング氏に聞く (2/2) - ITmedia ニュース
厳格な Java に対する JavaScript について。
平均的なJavaScriptのコードを見ると、やりたいことにごくわずかな時間しか費やしていません。残りの時間は「Internet Explorerでこれを動かす場合は、このやり方でやらなければならない。Safari、Opera、Firefoxなら、別のやり方でやらなければならない」といったことに費やしているのです。
それから、すべての違いを統一しようとするライブラリが出てくる段階に達します。そしてライブラリのライブラリのようなものが登場して、深いメタ循環になってしまいます。こうした複雑な構造のすべてのピースは、プラットフォームがごちゃごちゃになっているという事実に対処しようとするためだけのものなのです。
Java の強み。
大多数の人にとって、オープンソース化はすごいことではありません。実際、オープンソース化にネガティブな懸念を持つ人の方がたくさんいました。当社の最大の問題はおそらく、世界のもう半分にパニックを起こさせないことでした。
人々がJavaに関して評価していた点の1つが、一貫性と相互運用性、そして検証だったからです。NASDAQのようにJavaを中核で走らせている組織があるという事実が……。
オープンソースコミュニティについて。
人々がよくオープンソースコミュニティーを1つの幸せな大家族として一般化しようとしますが、実際には敵対する国家の群れだということです。彼らは皆防壁を築き、石を投げ合っています。
後編1ページ目。
オープンソース化に満足?――Javaの父ゴスリング氏に聞く(後編) (1/2) - ITmedia エンタープライズ
C# について。
C#の管理コードは基本的に、Javaのマニュアルからカット&ペーストしたようなものです。しかしC#は、非管理コードを極めて多用しています。われわれは基本的に、裸のポインタを使用するC#の非管理コードというのは、愚かなアイデアだと考えています。
.NET の移植性について。
言語のもう1つの要素として膨大なライブラリがあります。確かにMicrosoftはCLRを移植すると発表しました。しかし、.NETの世界で利用する巨大なライブラリの1つがExcelです。Wordもそうです。では、彼らはWordをLinuxなどに移植するつもりなのでしょうか。そんな話は聞いたことがありません。
相互運用性について。
Java VM上で動作する素晴らしいRubyのインプリメンテーションが既に存在します。
(中略)
ほかの各種のスクリプティング技術をJavaプラットフォーム上で使用するのであれば、JavaScriptとRhinoエンジンを組み合わせることができます。
共通のVM上に置かれたバージョンを使用する場合は、RubyとJavaScriptを連携することができます。
GlassFish と Ruby On Rails について。
アプリケーションサーバ関連でわれわれが進めてきた取り組みの1つが、GlassFishサーバであらゆる種類のコンテナをホストするというものです。 GlassFishコンテナを使って配備したRuby on Railsアプリケーションは、素晴らしいパフォーマンス、拡張性、管理性を実現しています。
DSL(Domain Specific Language:ドメイン固有言語)について。
DSLは適切な用途で使用すれば素晴らしい成果が得られます。不適切な用途で使用すれば――例えばML言語を使ってグラフィカルユーザーインタフェースを作成しようとすれば、非常に不幸な結果になるでしょう。
(中略)
ドメイン固有言語は、特定の分野では素晴らしい威力を発揮しますが、複数の分野にまたがる必要がある場合には苦労することになります。
後編2ページ目。
オープンソース化に満足?――Javaの父ゴスリング氏に聞く(後編) (2/2) - ITmedia エンタープライズ
次の大物は?
わたしの予想では、その候補は2つほどあります。わたしが全般的に関心を抱いているのは、マルチスレッディングの方向性です。ムーアの法則が言う指数関数的増大傾向は、CPUコアの数の方にシフトしてきました。
(中略)
わたしが関心のある分野の1つがAIの分野です。マシンが8000コアというレベルのパワーに到達すれば、多くのAI技術が実用的になるでしょう。
NetBeansの開発は、いわばのんびりと進められていました。そこにIBMがいきなりEclipseをリリースしたのです。「さあ、ひとつ競争をしようではないか」といった感じでした。
Sun について。
Sunはある意味で、(カリフォルニア大学)バークレー校のヒッピー上がりのおじさん集団です。金もうけも否定しませんが、われわれは1つの理念を目指した集団なのです。一種、変わったタイプの企業だと言えるでしょう。
BlueJ と Greenfoot について。
どうすれば青少年にプログラミングを学ぶ意欲を持たせられるかということです。そこで彼らが編み出したのがGreenfootです。これはBlueJを拡張したもので、Javaを使って独自のビデオゲームを作成することができます。
女性(娘)に対してできることについて。
わたしには女性や女の子に影響を与える方法は分かりません。彼女たちに本当に影響を与えることはできないと思います。われわれにできるのは、彼女たちにとっての社会的障害を取り除くことだけです。
OSGi について。
Sunは当初、OSGiを支援していましたが、その後、手を引きましたね。
OSGiは奇妙な特許囲い込み組織になってしまいました。