Top Banner
使ってみて気づいた AGPL ライセンスの メリット・デメリット 水野 史土 [email protected]
24

使ってみて気づいた AGPL ライセンスの メリット・デメリット

Jul 20, 2015

Download

Internet

Fumito Mizuno
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

使ってみて気づいたAGPL ライセンスのメリット・デメリット

水野 史土[email protected]

Page 2: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

オープンソースとは

● ソースコードが公開されている● 改変や再配布が許可されている

=> 顧客向けにカスタマイズしやすい

詳細はOpen Source Initiative(OSI) の定義参照

http://opensource.org/definition

Page 3: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

GPL とは

● オープンソースライセンスの一つ● 多くのソフトウェアで採用されている

http://thinkit.co.jp/story/2014/02/03/4804によると、GPL2とGPL3をあわせて55%(2014年1月)

● コピーレフト条項がある

=> コピーレフトとは?

Page 4: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

コピーレフトとは

● オープンソースソフトウェアを再配布する場合、元のソフトウェアと同一のライセンスにする義務

=> 派生物のライセンスが同じなので、元のソフトウェアへのマージが保証される

=> かなり厳しい制約

=> 配布しない場合は制限なし

Page 5: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAGPL

ソフトBGPL

GPLで配布

コピーレフトと派生物のライセンス

Page 6: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAGPL

ソフトB自分のみ利用

独自ライセンスで配布

NG

OK

コピーレフトと派生物のライセンス

Page 7: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ネットワーク経由での利用

● プログラムの利用形態– 手元の端末で実行する

– ネットワーク越しに実行する(ウェブサービス)

昔はネットワークの速度などで実現しにくかったが、現在はネットワーク越しの利用が増えている

=> 使う人の視点では、ほとんど違いが無い

Page 8: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAGPL

GPLとネットワーク利用

ダウンロード&インストール

手元の端末で実行する

コピーレフトが適用される

Page 9: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAGPL

GPLとネットワーク利用

ダウンロード&インストール

ネット上のサーバー

コピーレフトが適用されない

手元の端末

ネットワーク経由で利用

Page 10: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

GPLとネットワーク

● 手元の端末で実行: コピーレフト適用

● ネットワーク越しに実行: コピーレフト不適用

=> 使い方がほとんど同じにも関わらず、

  コピーレフト適用/不適用の差が発生する

Page 11: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

コピーレフト適用/不適用の統一

● コピーレフトありに統一– 手元の端末でも、ネットワーク越しでも、コピーレフトを適用する

– AGPLなど

● コピーレフトなしに統一– 手元の端末でも、ネットワーク越しでも、コピーレフトを適用しない

– MITなど

Page 12: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

AGPLライセンス

● GPLがベース● コピーレフト適用に統一● 採用しているソフトウェア

– MongoDB

– Berkeley DB

– iText

– SugarCRM

– Novius OS

Page 13: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

Novius OS について

● フランスのNovius社が中心に開発

● 世界各地からコミットされている● 英語、フランス語、日本語、ロシア語、スペイン語

● FuelPHPベース

● 書籍「Fuelphp Application Development Blueprints」でNovius OS が紹介されている

Page 14: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

なぜAGPLか

● 派生物のライセンスが同一– サードパーティのコミットをコアに入れる際、ライセンス

の衝突が生じない

● ウェブサービスでの使用を視野に入れている– 開発元によるクラウドサービス

Page 15: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

AGPL を使って感じたメリット・デメリット

※ Novius OS には当てはまっても、他のプロダクトに当てはまるとは限りません

Page 16: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

メリット1: 複数人による共同作業

● 例: フォームに条件分岐を追加

http://novius-os.jp/users/form-sample.html

● 私が提案&コードを書く

– Victor さんにより、JSの改善

– Foine さんにより、HTMLの改善

=> 複数人が得意分野で協力し合うと、より良いものが効率よく作成できる

Page 17: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAAGPL

ソフトBAGPL

フィードバック

ソフトA'AGPL

派生物のライセンスが同一↓

フィードバックして改善

ソフトCAGPL

Page 18: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAMIT

ソフトBGPL

フィードバック

ソフトA'MIT

派生物同士のライセンス衝突で、フィードバックを受けられないケースが起こり得る(派生物作者に委ねられる)

ソフトC商用ライセンス

Page 19: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

メリット2: ウェブサービスへのコミット

● Novius 社がクラウドサービスを行っている

– Novius OS へコミットすると

– クラウドサービスへ反映される

● AGPLであれば、ネットワーク経由で利用する場合にもソースコードが受け取れる=> ウェブサービス自体を改善できる

Page 20: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAAGPL

ネットワーク経由で利用

ダウンロード&インストール

ネット上のサーバー

ソースコードが必ず入手可能=> 改善を提案しやすい

手元の端末

ネットワーク経由で利用

Page 21: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

ソフトAGPL(MIT)

ネットワーク経由で利用

ダウンロード&インストール

ネット上のサーバー

ソースコード入手可能とは限らない

手元の端末

ネットワーク経由で利用

Page 22: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

デメリット1: サーバー負荷

● AGPLはウェブサービスで利用することを想定

=> サーバー負荷を想定して作る必要がある

● ABテストするアプリケーション

– キャッシュ機能を無効にして作った

– サーバー負荷がかかる

=> 本体への組み込みは見送り

(各自が動かすソフトだったら、「負荷の高い機能」と注釈を付けた上で、各自に委ねることもできる)

Page 23: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

デメリット2: コードを共有しない貢献

● AGPL=商用利用許可– 販売することができる

– コード共有必須・独自ライセンスは不可

NG: 独自ライセンスで販売

OK: AGPLライセンスで販売

=> 「コードは共有したくない」人・会社は参入しにくい

Page 24: 使ってみて気づいた AGPL ライセンスの メリット・デメリット

開発元

アドオンを販売するビジネスモデル

サードパーティ開発者

手元の端末

1. パッケージ販売委託

2. 販売

3. 支払い

4. 支払い

開発元は販売手数料で稼ぐサードパーティの収益にもなる

AGPL の場合、販売は可能だが、独自ライセンスでの販売は不可