凡人 vs 天才 -Javaを巡る Oracle vs Google の裁判-

研究室で使われている Java コードを巡って、取り扱いをどうするか話題になった。
それとは直接関係ないのだが、Java 関係をちょこちょこ調べていたのだが、android を巡って実はオラクルとグーグルが裁判になっていた (↓) ということでちょっと驚いた。
qiita.com
が、それに関する記事。
これ最終的には、オラクルが勝ったらしいのだが、額も(android によるグーグルの収益に比べれば)大したことはなく、「まあ、ここら辺で手を打っておきましょう」的な終わり方だったみたいだ。
違ってました。最高裁まで持ち込まれ、結局、Google の使用法はフェアユースということで問題なしとされた。この記事など参照。
争点なんかはグーグルの主張がまあまあ通っている感じだし。
「まあまあ」どころか、ほぼ全面的に通ってます。
以下に述べた通り、スマホ向けに流用しているだけで Java に取ってかわろうとしているわけではないので、API の名前などの流用によって Oracle に何か特別な損害を与えているわけではない。そもそもこの主張で裁判に持ち込むのは、知財的な戦略的にみても無理筋な感じ。


私は、グーグルの肩を持つけどなあ。
ジャバといえば、仮想マシンで各OSの差を吸収させちゃおうという開発環境の代表格。その思想は各方面に影響を与えたことは知っている。委員会方式みたいな感じで、仕様が策定され、真面目に作り込まれているなという印象がある。
でも、グーグルがスマフォでの検索プラットフォームでの優位を維持したく、android OS を無償で配布した。このとき、Java の仕組みを大きく流用した。
これが、従来の開発元(と言ってももともとはSUNが始めたものを買収したんだが)オラクルには、気に入らなかったらしい。
なんだけど、主張がしょぼい。(争点を調べてみてください)
これ、おそらく、グーグルの天才集団からしてみれば、枠だけはとりあえずJava使っちゃって、中身はどんどん自分たちで変えていこうというつもりだったと思うよ。
そう考えると JVM ではなく、Dalvik 仮想マシンを使ったというのも納得できる。グーグルからしてみれば、Javaの理想主義的な側面なんてどうでもよく、スマフォでの最適化ができればよかったわけだから。実際、グーグルのプログラマ達は、中身をどんどん書き換えていった。APIの名前やその呼び出し方はJavaの慣例を引き継いでいるかもしれないが、今では中身はほぼ別物になっているようだ。従来のJava勢は、「パッケージ名を勝手に変えたー」とかいってるらしいが、そりゃそうでしょ。スマフォを意識して書き換えているのだから、それはそうなる。
また、オープンソース全般に言えることだと思うけど、フォークしたものが全てフォーク元になんらかの(直接的・間接的な)フォードバックを返さなけれならないなんてことはないと思う。それをしないと(今回のオラクルのように)「パクリだー」なんて騒ぎ立てる頭の固いオヂサン連中が多いのは知っているが、そもそもフォークした直後なんて、フォーク元とフォーク先は完全に同一だ。その点だけを強調して「パクリ」だなんていう印象操作を作り出そうとするのは、エンジニアとしてかなりみっともない行為じゃないだろうか。また、それは機能を追加したいとか内容を洗練させたいからといった理由からで、グーグルは実際、どんどんそれをやっていった。


そして今では、アンドロイドがかなり使いやすいスマフォOSになっているのは、みなさんご存知の通り。女子高生などは、アイポン使ってないと仲間内からは、怪訝な目でみられるらしいが、われわれオタ層なんてそういう変な同調圧力ないから、けっこうみんなアンドロ使っている。通話ができて、ちょっとしたアプリが使えれば、それで十分だし、今のandoridOSはそのクオリティを実現できていると思う。
あと、アンドロイドでアプリを作りたくて、Javaの勉強をした、なんて人もけっこういる。これだって、十分、Javaに対する貢献だと思うけどな。

サイエンスの世界でもそういう側面はあるかも。努力賞的なプロジェクトでまあまあ優秀な人が集まって何かをやっているときに、その(公開された)成果を使って超天才が別の結果を出してしまうなんてことはよくある。
でも、そういうのを批難したら、科学の進歩なんてありえないんだが。

コメント