Microsoftの新ライセンスは、果たしてオープンソースか

先週、Microsoftが新しいShared Sourceライセンスを発表した。Microsoftの新ライセンスがオープンソース・コミュニティの注意を引くことは通常ないが、今回のShared Sourceライセンスについては、Tim O’Reillyらオープンソース支持者も賞賛し、さらにはFree Software Foundation Europe(FSFE)さえもが好意的に評価している。

Microsoftは、Open Source Initiative(OSI)と歩調を合わせているかのようにさえ見える。OSIは「オープンソース」という語を作り出した団体であるが、OSI理事会のメンバーであるDanese Cooper(Intel)は、自身のブログに「OSI理事会においてMicrosoftは所定の賛成票を獲得したのです。そこで、ライセンス認定手続きの申請について平等な扱いを確認し、MSDNのWebサイトに掲載されたライセンスについて予備的なものではありますがフィードバックを提供しました。現時点ではMicrosoftのライセンスは公開討論の場であるLicense-Discussに提出されていませんが、OSIとしては、そうなることを希望しています」と書いているのである。

OSIは、本当に、Microsoftがライセンスを認定するよう求めることを希望しているのだろうか。ついこの間まで、OSIはMicrosoftの対抗者であり、オープンソースを破壊しようと企む企業からオープンソースという宝を守る守護者だと思っていたのだが。

実際、OSIにとって対立の時代は終わったとも思える。前記のブログにはこう書かれているのである。Microsoftがオープンソースに対して取った過去の行動にオープンソースが固執すれば、「オープンソースは、従来のプロプライエタリなソフトウェアの世界に代わる現実的で技術に裏付けされた存在ではなく、単にあら探しをしている集団にすぎないという誤った印象を与えてしまうだろう」という「強く一貫したフィードバックが(OSIに)来ている」

かくして、OSIのWebサイトからは悪名高いHalloween Documentsが削除され、OSIメンバーはShared SourceライセンスについてMicrosoftと話し合いを続けてさえいるのである。

OSI理事会の議長Michael Tiemannは、次のように述べている。「企業の行動を非難したがる人はどこにでもいます。しかし、それは私たちが説いている姿勢とは相容れません。私たちはそう考えたのです」

個人や団体に対する平等な扱い

Open Source Definition(OSD)が掲げる戒めの中に、オープンソース・ライセンスは個人や団体を差別すべからずという一項がある。オープンソースへの貢献は誰に対しても開かれているべきであり、それ故にいかなるオープンソース・ライセンスであろうとも個人がオープンソースに貢献することを妨げるべきではないという意味である。

この訓戒を念頭に、OSIがMicrosoftを手続きから締め出すのは誤りであるとTiemannは指摘する。「オープンソース・ソフトウェアに対して何をしでかすかわからないという理由でMicrosoftを差別するなら、私たち自身がオープンソース・ソフトウェアを信じていないことになります」

確かにもっともな言い分ではあるが、MicrosoftのShared Sourceライセンスが討議に付されれば、OSIはMicrosoftとの協力を決意しただけでは留まらないと見られかねない点もある。実際、CooperらOSI理事会のメンバーは、Microsoftがライセンスの認定を求めるよう積極的に勧める発言をしているのである。

しかし、OSIの理事の一人Russell Nelsonは、こうしたことは珍しいことではないとして、昨年、NASAに対してライセンスの認定を求めるよう勧めた例を挙げた。

また、Microsoftが一枚岩で1つの見解で固まっていると考えるべきではないとも述べた。Microsoftの社内にはオープンソースに対するさまざまな意見があり、同社を冷遇するのは得策ではない。Microsoft内でオープンソースを説く人たちに対して抵抗勢力を勢いづかせることになるからだ。「一部の人たちが望むようにMicrosoftを冷淡に扱えば、Microsoftの中にいる(オープンソースに)好意的な人々の勢いを削ぐことになるでしょう」。そして、OSIの目標は「すべてのプロプライエタリ・ベンダーをオープンソースに移行するよう説得すること」だと繰り返す。「すべてのプロプライエタリ・ベンダー」には、もちろん、Microsoftも含まれるのである。

とはいえ、Nelsonは、オープンソース・コミュニティの多くの人がMicrosoftを信用しようとしないことは理解できると述べた。「私も信用していませんし、私たちがMicrosoftを信用すべきだとも思いません。Microsoftも信用上の問題があることを承知しています――その点では、Microsoftは私たちを信用していません」

新しいShared Sourceライセンスは、既存のOSI認定ライセンスにかなり近い。ならば、なぜMicrosoftは既存ライセンスを採用しないのだろうか。これに対して、MicrosoftのShared SourceプログラムのディレクターJason Matusowは、SourceForgeでのプロジェクトでCommon Public License(CPL)を採用しているが、そうしたライセンスには「技術的な問題」があるのだと言う。

新しいライセンスの概要

Microsoftが新たに発表したライセンスは全部で5本あるが、そのうちの2本は基本となるライセンスに「Windowsのみ」条項を加えたものである。

まず、Microsoft Permissive License(Ms-PL)を見てみよう。名称が示唆するように、このライセンスは許容的(permissive)であり、コードの閲覧・変更・再配布の権利が保証され、ソースコードを配布せずに派生物を配布することも許されている。BSD流のライセンスによく似ているが、コードをソースコードの形で配布する場合は再ライセンスを禁じている。

(D)このソフトウェアまたは派生物をソース・コードの形式で配布する場合、その配布はこのライセンスの下でのみ行うことができる(すなわち、配布物にこのライセンスの完全なコピーを含めなければならない)。また、このソフトウェアまたは派生物をコンパイル済みコードまたはオブジェクト・コードの形式で配布する場合、その配布はこのライセンスに準拠したライセンスの下でのみ行うことができる。(参考訳)

これとは対照的に、2つめのライセンスMicrosoft Community License(Ms-CL)はソースコードの閲覧・変更・配布の権利を保証するが、派生物にも同じライセンスを強制する。

Ms-CLは、Mozilla Public License(MPL)のようなファイル・ベースのライセンスである。簡単に言えば、プログラムがMs-CLコードを含む1つまたは複数のファイルをその中に含む場合、それらのファイルにはMs-CLが適用されるが、プロジェクト全体にMs-CLを適用する必要はない。

実用的には、Ms-CLの下にあるコードを、他のオープンソース・ライセンスのプロジェクトまたはプロプライエタリ・ソフトウェアに含められるという効用がある。ただし、Ms-CLの下にあるファイルが、依然、ソースの形で入手可能である場合に限るが。

3つめのライセンスは、Microsoft Reference License(Ms-RL)である。これは、前2本のライセンスに比べ、Microsoftの元来のShared Source計画に沿ったものになっている。すなわち、「見てもよいが、触れてはならぬ」というライセンスであり、ソースコードを参照することはできるが、それ以外はすべて禁じられている。このライセンスには、どこから見てもオープンソース・ライセンスの面影はない。

この3本の他に、派生ライセンスも発表されている。Microsoft Limited Permissive License(Ms-LPL)とMicrosoft Limited Community License(Ms-LCL)の2本である。コードの利用をWindowsだけに制限しており、Open Source Definitionには適合しないだろう。

ライセンスの叢生

それでも、OSIがなぜMicrosoftにライセンスを提案するよう求めるのか、訝しむ向きもあるだろう。何と言っても、OSI理事会はオープンソース・プロジェクト間の互換性を図るためにオープンソース・ライセンスの削減を進めてきたのである。その上、ライセンス叢生問題を専門に扱う委員会を設置してさえいる。ならば、なぜ、OSIは認定ライセンスの数を増やそうとするのだろうか。

Tiemannによれば、Microsoftの新ライセンスに関して誰もが同意できることが一つあるとすれば、それは短いということだ。新しいライセンスは、いずれもA4用紙1枚に印刷できるほどに短い。ソフトウェア・ライセンスでは滅多に見られないこの簡潔さは望ましい特性だという。

短く理解しやすいライセンスは「オープンソース・コミュニティが長い間求め苦闘してきたもの」であり、もしMicrosoftの新ライセンスが長々しく複雑なものだったとすれば、OSIがこれ程熱心に勧誘することはなかったろうとも述べた。

MicrosoftはShared Sourceライセンスを削減したが、これには何の意味もない。10本以上あったShared Sourceライセンスは3本に、Ms-PLとMs-CLの制限版を含めても5本に減った。しかし、これはオープンソース・ライセンスの叢生問題の解決には結びつかない。

Microsoftのライセンスはオープンソースか

一見したところでは、Microsoftの新ライセンスのうち2本はOSDに問題なく適合しているように思える。Matusowは、新しいライセンスを起草する際にOSDを考慮したことを認め、「基本的に、これらのライセンスは、いかなる合理的な定義から見てもオープンです」と述べた。

しかし、手続きが完了するまでは、ライセンスの適否についてOSIが判断を示すことはない。Tiemannによれば、「提案の前に認定の内示がほしい企業にとっては大きな驚き」だが、認定が提案されるまでライセンスについて云々しないのがOSIのポリシーだという。

このライセンスには、比較的小さな問題が1つある。ライセンスを許諾する者としてMicrosoftを指名していることである。Microsoftとしてはライセンスが受け入れられることよりもライセンスを再利用できるようにしておく必要があり、そうでなければ「誰も再利用できない別のライセンス」になるだろうとNelsonは言う。

ともあれ、これは問題にならないかもしれない。Microsoftはライセンスの認定を現在求めておらず、今後もしないかもしれない。Matusowは、Microsoftは現時点でライセンスを提案していないが、そうする場合は「他の団体と同じように行います」と述べている。

何がオープン化されるかが問題

Microsoftのライセンスがオープンソース・ライセンスと判定されたとしても、詰まるところ、Microsoftがそうしたライセンスの下で価値あるものをリリースしなければ無意味だ。そして、これまでMicrosoftが新ライセンスの下でリリースしたのは、Visual Studio 2005 スターター キットだけでである。

Open Source Development Labs(OSDL)の熟練オープンソース・アーキテクトBill Weinbergは、次のように述べている。「本当の意味でコミュニティが生まれるかどうか、そのライセンスが本当にアイディアのオープンな交換を促すかどうかは、しばらく様子を見なければわかりません」

原文

MSDNの価格