126 Views
September 19, 18
スライド概要
builderscon tokyo 2018 で発表したサイボウズの OSS ポリシーの解説スライドです.
https://builderscon.io/tokyo/2018/session/88adb843-7d75-4711-b3a1-60ed3aa75dbc
サイボウズ・ラボ株式会社で教育向けのOSやCPU、コンパイラなどの研究開発をしています。
業務時間で書いたパッチは誰のもの? OSS 活動にまつわる罠 サイボウズ株式会社 運用本部 クラウド運用チーム 内田公太 2018/09/08 builderscon Tokyo 2018
自己紹介 ▌内田公太 @uchan_nos ▌クラウド運用チーム(SRE) サービスの死活監視システム 顧客データのバックアップ ログ収集・解析システム ▌兼OSS推進室
著書など http://amzn.asia/4Kvi8gj 執筆 http://amzn.asia/iSc89ok 校正
サイボウズとは • 国内シェアNo.1 グループウェア • 業務アプリ構築 プラットフォーム チームワークを促進する製品を 作って,運用して,売っている
目次 ▌業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌ポリシー本文 ▌OSS推進室について
目次 ▌⇒業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌ポリシー本文 ▌OSS推進室について
この時代,業務でのOSS利用は必須 ▌OSSを挙げたらきりがない Linux, Vim, Emacs, Git, Python, GCC, … MySQL, PostgreSQL, Elasticsearch, … Hadoop, Kafka, Presto, Redash, … ▌OSSを使わずに生きることなど不可能!!
OSSの使用は自己責任 ▌OSSの原則=問題があれば自己解決 不具合や脆弱性があれば,自分で直す! ▌サイボウズでの実例 Linuxでボリュームサイズ拡張時にページ キャッシュが飛んでしまう問題を修正 https://blog.cybozu.io/entry/2018/06/28/080000
不具合があれば自分で直す ▌OSSに不具合があった→パッチを書く ▌このパッチ,本家にマージしてもらいたい パッチしなおす手間が減る コミュニティに寄与できる
パッチの行方 ▌業務時間にパッチを書いたのはいいが… ▌罠1. このパッチは社外公開していいの? ▌罠2. 誰に許可を取ればいいの? ▌罠3. 何名義で公開すればいいの? ▌罠4. CLAへの署名を求められた…
目次 ▌業務で書いたパッチ投稿に潜む罠 ▌⇒趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌ポリシー本文 ▌OSS推進室について
ところで皆さん, 趣味OSS書いてますか
趣味OSSにユーザが付くと嬉しい(1/2) ▌趣味OSSが誰かに使われる→嬉しい ▌自チームの業務に採用される→超嬉しい ▌サイボウズでの実例1 github.com/shuyo/language-detection 53言語に対応した言語判定ライブラリ cybozu.comでバリバリ稼働中
趣味OSSにユーザが付くと嬉しい(2/2) ▌サイボウズでの実例2 github.com/teppeis/fixclosure Closure Libraryのための依存チェッカー github.com/teppeis/grunt-parallelize ソースファイルを分割して並列化 kintone開発チームで活躍中
業務でパッチを書く ▌業務で使っている趣味OSS →業務時間でパッチを書きたい(当然) ▌罠1. 業務時間を趣味OSSに使っていい? ▌罠2. パッチの著作権は誰のもの? ▌罠3. 会社のコードを混ぜたくない
目次 ▌業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌⇒OSSポリシーの紹介 ▌ポリシー本文 ▌OSS推進室について
ポリシー全文 ▌Read the Docsで公開 ▌CC0なのでご自由にどうぞ ▌日本語 https://cybozu-oss-policy.readthedocs.io/ja/latest/ ▌英語 https://cybozu-oss-policy.readthedocs.io/en/latest/
解説したブログ記事 ▌「サイボウズのOSSポリシーを紹介します」 Cybozu Inside Out https://blog.cybozu.io/entry/oss-policy ▌ポリシーの各項目のざっくりした説明 ▌各項目の設計意図の紹介
ポリシーの全体構成 ▌ポリシー 全体的な方針や大きなルール どの会社でも適用できる汎用的な書き方 ▌ガイドライン 細則,個別具体的な手順など サイボウズに特化した内容
ポリシー策定の背景
ポリシー策定前の状況 ▌めっちゃOSS使ってた ▌一方,OSSに関する社内規定が貧弱 ▌2個しかなかった社内規定 ▌1. OSSの利用前にライセンスを確認する ▌2. OSSを公開する際は部長の許可を得る
目次 ▌業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌⇒ポリシー本文 ▌OSS推進室について
前文
本規程の第一の目的は、当社ならびに当社従業員が OSS 関連活動を過大な負担なく行えるよう支援することであ る。 そのために、当社、当社従業員または他者の著作権、 特許権および商標権に関する事項を定める。 本規程の第二の目的は、当社がオープンソースコミュニ ティにおける良き一員であるために必要な規定を定める ことである。 そのために、ライセンス違反への対応方針 ならびに社員が発見した他者 OSS の不具合を報告する 努力義務を定める。
著作権の帰属
上司の指示がなければ自分のもの! ▌著作権が会社に帰属する条件を2つに限定 当社の極秘情報を含むもの,または 上長の明示的な指示または承認のもと作成 されたもの ▌その他は社員個人のものとなる .vimrc 自発的に書いたOSSパッチ etc.
趣味OSSに対するパッチも自分のもの! ▌趣味OSSに対して ▌業務で作成したパッチを取り込む際 ▌著作権が従業員に自動的に譲渡される パッチ OSS 従業員の個人的なOSS
当社著作物のOSS化
新規OSSは許可不要! ▌当社が管理する場所(GitHub)に ▌OSSを自由に公開してよい 管理アプリに登録 ライセンスファイル等の配置 ▌従来は許可制だった →1行もコードが無いのに許可も何もない
パッチ提供も許可不要! ▌原則自由 ▌CLA同意を求められた場合 当社を代表して署名してよい =上長欄に勝手に署名してよい
目次 ▌業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌ポリシー本文 ▌⇒OSS推進室について
OSS推進室(Open Source Program Office) ▌2018年8月に設立 ▌今後の予定: ポリシーとガイドラインのメンテ 社外のOSSコミュニティの支援
まとめ ▌業務で書いたパッチ投稿に潜む罠 ▌趣味OSSを業務で改良する際の罠 ▌OSSポリシーの紹介 ▌ポリシー本文 ▌OSS推進室について OSSやるならサイボウズ!