SlideShare une entreprise Scribd logo
1  sur  24
CodeIgniterのライセンス
FuelPHP ♡ CodeIgniter ユーザの集い
CodeIgniter talking #02
2013.10.12
宮川 貴子(@NEKOGET)
CodeIgniter® The CodeIgniter mark is owned and may be registered by EllisLab, Inc

.
今日のお話。
受託案件、自社サービスでの開発案件について、

CodeIgniter3を使っても

ライセンスは
問題ありません
お話をする人。
• 宮川 貴子
• フリーランスのWEB系のエンジニア

• Twitter @NEKOGET
• Facebook https://www.facebook.com/NEKOGET
• ネコネットデザイン事務所 http://works.nekoget.net
•
•
•

CodeIgniterと知り合い、楽しくコードを書いているうちに、5年を経過しました。
CodeIgniterへの愛に溢れた生活を送っています。
FuelPHPのドキュメント日本語化をやってます。
今日のお話。

弁護士さんに作成いただいた
CodeIgniter3のライセンス
について意見書を公開してます。
今日は蛇足的に、
そのお話をさせていただきます。
CodeIgniterのライセンス

• CodeIgniter 1.x & 2.x
– CodeIgniter ライセンス
–
–
–
–

http://codeigniter.jp/user_guide_ja/license.html
なんとなくMITライセンスっぽい
コピーレフトなライセンスではない
GPL非互換
• CodeIgniter3 ライセンスの話題から最近表明されました。
• http://ellislab.com/blog/entry/gpl-or-not-to-gpl
– The CodeIgniter license is not compatible with the GPL .
– CodeIgniterのライセンスがGPLと互換性がありません 。
との見解が表明されています。
CodeIgniter3のライセンス
• OSL-3.0

http://opensource.org/licenses/OSL-3.0
– コピーレフトなライセンス
– GPLとは非互換。
– 改変して頒布するならそのコードもOSL3.0ライセンスにしとけっていう
ルール。

• AFL-3.0 http://opensource.org/licenses/AFL-3.0
– OSL-3.0ばっかり話題になってるけど、このライセンスも入ってる。
– GPLとの適合性あり (v1.2とv2.1は互換性なし)
– コピーレフトではないライセンス。
– 使われている箇所は主にapplication/以下のファイル
– OSL3.0もAFL-3.0もローレンスローゼンさんが作ったライセンスで
す
CodeIgniter3内のコード
• とっても大まかな図
CodeIgniter3内のコード
• Application以下に含まれるもの
参考 : https://github.com/EllisLab/CodeIgniter/tree/release/3.0/application

すでに配置されているファイル
AFL-3.0ライセンスのファイル
config/以下のファイルはAFL-3.0になっています。
これから作成するclass 等のファイル
OSL-3.0を継承したファイル
OSL-3.0を継承しないファイル
独自に作成したファイル ( 著作者、ライセンサーは書いた人)

third_party/に設置される外部ライブラリ
設置したサードパーティなライブラリのライセンス。
CodeIgniterのライセンスまとめ
• CodeIgniterライセンス http://codeigniter.jp/user_guide_ja/license.html
– Codeigniter2で使用されているライセンス。
– MITライセンスっぽい内容だが、GPLとは非互換。

• OSL-3.0

http://opensource.org/licenses/OSL-3.0

– コピーレフトなライセンス
– GPLとは非互換。
– 改変して頒布するなら、OSL3.0ライセンスにしとけっていうルール。

• AFL-3.0 http://opensource.org/licenses/AFL-3.0
–
–
–
–

OSL3.0ばっかり話題になってるけど、このライセンスも入ってる。
GPLとの適合性あり (v1.2とv2.1は互換性なし)
Copy LEFTではないライセンス。
使われている箇所は主にapplication/以下のファイルで予め作成されて
いるファイル
– OSL3.0もAFL-3.0もローレンスローゼンさんが作ったライセンス
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文 (英語だし)
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
何が問題だったの?
NEKOGETの個人的な感想

•
•
•
•

ライセンスの指していた、「ユーザ」への誤解
派生物の頒布が指すものへの誤解
とても読みにくいライセンス本文 (英語だし)
大丈夫だと思っていても、読めば読むほど不安
になる心理
• ライセンスの中身を読まずに、なんだかヤバいら
しいよという風評
問題?
• Index.phpにproduction設定をしたり、パ
スを書き換えたりするのは改変にあたる
んじゃないの?公開義務発生するんじゃ
ないの?
– その作業はインストール作業
– 改変ではない
– 公開義務は発生しない
問題?
• 普通に開発してたら、フレームワーク本体を改変す
るような開発をすることは無い。
– 本体に手を入れるって、フレームワークの使い方的に間
違ってるよ。
– 本体のバグは、本体のclassを継承して置き換える仕組み
を利用してapplication/以下で対応しちゃえるならしちゃっ
た方がいいよね。

– 本体にバグがあった場合は?
– forkして修正して本家にpull requestしてほしいな。
– 上記を実行した時点でコードは公開義務果たしてる。
今日のお話。
受託案件、自社サービスでの開発案件について、

CodeIgniter3を使っても

ライセンスは
問題ありません。
今日のお話。

OSSなアプリ開発のために
CodeIgniter3を利用する場合
ライセンスについては
よく考えて適切に設定すれば
良いと思います。
どのように配布するのかみたいな話だと思うんですよ。
弁護士さんに相談してみて
• 正直、相談して良かったです♡
– プロの意見わかりやすかった!

– 不安だった事、わかりにくい部分については、何度も話を
聞いていただき、1つ1つ解決することができました。

• 弁護士さん向けて質問資料を作成できたこと。
– 先輩エンジニアな方々に相談し協力いただきました。
(大感謝!)
– 非エンジニアにもわかるように作った資料は私の為にも
わかりやすい資料となりました。
心に刺さった弁護士さんのコトバ。
---意見書を作成していただくに際してのやり取りの中で心に残ったコトバ---

契約の解釈などはやはり実務の人には難しいのですよ。
そういうものだと思います。
実際に、コードを入力している人には
「これはインストール」
「これは改変」
なんて思わないで、
普通に「コードを入力」という認識でいますよね。

それは別におかしなことではないと思うんです。
それを法的に評価すると何なのかは
やっぱり別の問題なんですよ。
プログラマのあたりまえはライセンス
を考える上では違うという事。
diffがあったらコード改変されてる
っていうプログラマ的にはあたりまえの感覚が、
法的に言えば、改変ではないコードの変更も
感覚的に改変だと認識してしまうことで、
派生物なのかどうかの認識を混乱させ、
問題を難しくしてしまったのではないかと考えます。
プログラマやエンジニアな私たちの意見ではなく
弁護士さんという、ライセンスに対してのプロフェッショナルに意
見を出していただいた事はやはり必要だったのだなと、
意見書を作成する過程で、再確認をしました。
ありがとうございました
参考資料
•

CodeIgniter3ライセンス問題に対する意見書
– http://pneskin2.nekoget.com/press/?p=1246

•

CodeIgniter GitHub
– https://github.com/EllisLab/CodeIgniter/

•

CodeIgniterのライセンス問題のライムライン
– http://d.hatena.ne.jp/Kenji_s/20111118

•

ElisLab
– http://ellislab.com

•

CIUnit for CI2
– https://github.com/fukata/CIUnit-for-CI2

•

My-ciunit
– https://bitbucket.org/kenjis/my-ciunit

Contenu connexe

Tendances

2011 PHPカンファレンス関西 懇親会LT
2011 PHPカンファレンス関西 懇親会LT2011 PHPカンファレンス関西 懇親会LT
2011 PHPカンファレンス関西 懇親会LT
Takako Miyagawa
 

Tendances (20)

Codeigniter3フレームアップデート
Codeigniter3フレームアップデートCodeigniter3フレームアップデート
Codeigniter3フレームアップデート
 
Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中Code igniterでテスト駆動開発 資料作成中
Code igniterでテスト駆動開発 資料作成中
 
2011 PHPカンファレンス関西 懇親会LT
2011 PHPカンファレンス関西 懇親会LT2011 PHPカンファレンス関西 懇親会LT
2011 PHPカンファレンス関西 懇親会LT
 
CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!CodeIgniterユーザガイドの翻訳に参加しよう!
CodeIgniterユーザガイドの翻訳に参加しよう!
 
Code igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイントCode igniterを初めて使うときにはまった4つのポイント
Code igniterを初めて使うときにはまった4つのポイント
 
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
怠惰な私がプログラミングするときに重要だと考えているたった1つのこと
 
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよPHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
 
Bot Framework Composer Fukuazu
Bot Framework Composer FukuazuBot Framework Composer Fukuazu
Bot Framework Composer Fukuazu
 
React componentのコンストラクタを追いかけて
React componentのコンストラクタを追いかけてReact componentのコンストラクタを追いかけて
React componentのコンストラクタを追いかけて
 
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
スタートアップ企業が実践するクラウドネイティブアプリケーションの開発手法
 
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
 
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
初めての拡張機能リリースまでの歩み / Road to publishing extension for the first time
 
チーム開発にSwiftLintを導入してみた・詳細版
チーム開発にSwiftLintを導入してみた・詳細版チーム開発にSwiftLintを導入してみた・詳細版
チーム開発にSwiftLintを導入してみた・詳細版
 
はじめてみよう! WordPress プラグイン・テーマ翻訳
はじめてみよう! WordPress プラグイン・テーマ翻訳はじめてみよう! WordPress プラグイン・テーマ翻訳
はじめてみよう! WordPress プラグイン・テーマ翻訳
 
20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターン20170804 Builderscon Androidアプリ開発アンチパターン
20170804 Builderscon Androidアプリ開発アンチパターン
 
groceryCRUDとtank_authで簡単に管理画面と認証機能を作る
groceryCRUDとtank_authで簡単に管理画面と認証機能を作るgroceryCRUDとtank_authで簡単に管理画面と認証機能を作る
groceryCRUDとtank_authで簡単に管理画面と認証機能を作る
 
Android,Brillo,ChromeOS
Android,Brillo,ChromeOSAndroid,Brillo,ChromeOS
Android,Brillo,ChromeOS
 
de:code報告
de:code報告de:code報告
de:code報告
 
開発チームにKotlinを導入した話
開発チームにKotlinを導入した話開発チームにKotlinを導入した話
開発チームにKotlinを導入した話
 
What's CodeSign
What's CodeSignWhat's CodeSign
What's CodeSign
 

Similaire à CodeIgniterのライセンスについて

Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
Takahiro Fujiwara
 
Php勉強会資料20090629
Php勉強会資料20090629Php勉強会資料20090629
Php勉強会資料20090629
Takako Miyagawa
 
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニーUnity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Yoshifumi Kawai
 

Similaire à CodeIgniterのライセンスについて (20)

phpmatsuri2013 LT大会 資料
phpmatsuri2013 LT大会 資料phpmatsuri2013 LT大会 資料
phpmatsuri2013 LT大会 資料
 
Pythonを始めよう
Pythonを始めようPythonを始めよう
Pythonを始めよう
 
Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方Pythonとgit hubとベンチャー企業の上手な付き合い方
Pythonとgit hubとベンチャー企業の上手な付き合い方
 
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座アイデアを形にする  ③3時間でアプリ公開!ゼロからのプログラミング講座
アイデアを形にする ③3時間でアプリ公開!ゼロからのプログラミング講座
 
初めてのWebプログラミング講座
初めてのWebプログラミング講座初めてのWebプログラミング講座
初めてのWebプログラミング講座
 
Php勉強会資料20090629
Php勉強会資料20090629Php勉強会資料20090629
Php勉強会資料20090629
 
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニーUnity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
Unity C#と.NET Core(MagicOnion) C# そしてKotlinによるハーモニー
 
AI搭載の新しいBingとEdge
AI搭載の新しいBingとEdgeAI搭載の新しいBingとEdge
AI搭載の新しいBingとEdge
 
gitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみましたgitを使って、レポジトリの一部抽出forkしてみました
gitを使って、レポジトリの一部抽出forkしてみました
 
「CodeYourRuby」で オープンなコードレビューを体験しよう
「CodeYourRuby」で オープンなコードレビューを体験しよう「CodeYourRuby」で オープンなコードレビューを体験しよう
「CodeYourRuby」で オープンなコードレビューを体験しよう
 
IoTで5days学生インターン
IoTで5days学生インターンIoTで5days学生インターン
IoTで5days学生インターン
 
Spring I/O 2018 報告会
Spring I/O 2018 報告会Spring I/O 2018 報告会
Spring I/O 2018 報告会
 
Spring I/O 2018 報告 RESTDocs RAML, Cloud Contract
Spring I/O 2018 報告 RESTDocs RAML, Cloud ContractSpring I/O 2018 報告 RESTDocs RAML, Cloud Contract
Spring I/O 2018 報告 RESTDocs RAML, Cloud Contract
 
行ってみよう、やってみよう!
行ってみよう、やってみよう!行ってみよう、やってみよう!
行ってみよう、やってみよう!
 
.NET Lab2022年2月
.NET Lab2022年2月.NET Lab2022年2月
.NET Lab2022年2月
 
2017823 pythonを始めよう
2017823 pythonを始めよう2017823 pythonを始めよう
2017823 pythonを始めよう
 
アイデアを形にする ①プロダクト設計のイロハを学ぶ
アイデアを形にする ①プロダクト設計のイロハを学ぶアイデアを形にする ①プロダクト設計のイロハを学ぶ
アイデアを形にする ①プロダクト設計のイロハを学ぶ
 
今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築今時のオンプレなgithubクローン環境構築
今時のオンプレなgithubクローン環境構築
 
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
20141112 Tech Valley #3 note - スタートアップでこだわったこと - takamaru
 
20190628 kis open_seminar_decode
20190628 kis open_seminar_decode20190628 kis open_seminar_decode
20190628 kis open_seminar_decode
 

Plus de Takako Miyagawa

Net commons3 開発環境
Net commons3 開発環境Net commons3 開発環境
Net commons3 開発環境
Takako Miyagawa
 
Bear.sunday meetup #2 自己紹介LT
Bear.sunday meetup #2 自己紹介LTBear.sunday meetup #2 自己紹介LT
Bear.sunday meetup #2 自己紹介LT
Takako Miyagawa
 
CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14
Takako Miyagawa
 

Plus de Takako Miyagawa (15)

CodeIgniter4 PHPCon 2016
CodeIgniter4  PHPCon 2016CodeIgniter4  PHPCon 2016
CodeIgniter4 PHPCon 2016
 
Idcfクラウド 初心者の事始め(2)資料
Idcfクラウド 初心者の事始め(2)資料Idcfクラウド 初心者の事始め(2)資料
Idcfクラウド 初心者の事始め(2)資料
 
CodeIgniter4 (PHPカンファレンス関西2016 懇親会LT)
CodeIgniter4 (PHPカンファレンス関西2016 懇親会LT)CodeIgniter4 (PHPカンファレンス関西2016 懇親会LT)
CodeIgniter4 (PHPカンファレンス関西2016 懇親会LT)
 
Idcfクラウド 初心者の事始め
Idcfクラウド 初心者の事始めIdcfクラウド 初心者の事始め
Idcfクラウド 初心者の事始め
 
もっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますようにもっとドキュメントが日本語になりますように
もっとドキュメントが日本語になりますように
 
Fuelphp & codeigniterユーザの集い
Fuelphp & codeigniterユーザの集いFuelphp & codeigniterユーザの集い
Fuelphp & codeigniterユーザの集い
 
Net commons3 開発環境
Net commons3 開発環境Net commons3 開発環境
Net commons3 開発環境
 
最近のCodeIgniter 2014.06.19
最近のCodeIgniter 2014.06.19最近のCodeIgniter 2014.06.19
最近のCodeIgniter 2014.06.19
 
Net commons3 研究会 2014 0616
Net commons3 研究会 2014 0616Net commons3 研究会 2014 0616
Net commons3 研究会 2014 0616
 
Bear.sunday meetup #2 自己紹介LT
Bear.sunday meetup #2 自己紹介LTBear.sunday meetup #2 自己紹介LT
Bear.sunday meetup #2 自己紹介LT
 
Code ignitertalk 01
Code ignitertalk 01Code ignitertalk 01
Code ignitertalk 01
 
PHPMATSURI2011 LT大会
PHPMATSURI2011 LT大会PHPMATSURI2011 LT大会
PHPMATSURI2011 LT大会
 
CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14CodeIgniter東京勉強会 2011.05.14
CodeIgniter東京勉強会 2011.05.14
 
PHP勉強会 #51
PHP勉強会 #51PHP勉強会 #51
PHP勉強会 #51
 
CodeIgniter Con Tokyo 2011 資料
CodeIgniter Con Tokyo 2011 資料CodeIgniter Con Tokyo 2011 資料
CodeIgniter Con Tokyo 2011 資料
 

CodeIgniterのライセンスについて