freeeの開発情報ポータルサイト

freee OSSポリシーを策定します

freee OSSポリシーを策定します

こんにちは、PSIRTマネージャのただただし(tdtds)です。……と書きだしてみたものの、今日はセキュリティはとくに関係なくて「freeeも(やっと)OSSポリシーを決めたよ!」という話をします。タイトルだけで言いたいことはだいたい終了です。

なぜOSSポリシーを定めたのか

私は2020年にfreeeに入社しましたが、わりとすぐにちょっとした違和感に気づきました。「あれ、この会社、OSSにコントリビューションする習慣が希薄だな?」。

かれこれ30年以上、「OSS」という言葉が生まれるはるか以前から日常的にフリーソフトウェアの開発をしてきた私の目からすると、数百人もの開発者を擁する会社のわりに、OSSコミュニティでの存在感がこんなにも薄いのはちょっと変だと思いました。freeeのサービスはOS(GNU/Linux)からフレームワーク(Ruby on Rails)、プログラミング言語(Ruby)とそのライブラリ群、さらにさまざまな開発を補助するツールを含めると、膨大な量のOSSの上に成り立っています。必然的にOSSコミュニティとの関りも深くなるはず。

もちろん、OSSに関わっている人がゼロというわけではありません。仕事で使っているOSSへ、プルリクエストを送る姿はときおり見られます。また、開発合宿でOSS Gateワークショップを開催してみたところ、OSS開発に興味がある開発者は少なくないことがわかりました。日ごろの業務の中で自然とOSSに関わる雰囲気さえ醸成できれば、コミュニティとのかかわりはいまよりずっと活発になりそうです(そして当然ながら、コミュニティでの存在感が増せば採用活動にもプラスに働きます)。

とはいえ「雰囲気」の醸成はけっこう難しい。なにより会社としてちゃんと取り組むぞ、というメッセージを発信していかないといけません。そこでまず、会社としてどのようにOSSに向き合うのかを示すために、OSSポリシーを策定することにしました。

どんなOSSポリシーを定めるか

さて、次はそのポリシーを決めるわけですが、ここは一瞬も迷いなく決まりました。この世界には、完璧にして理想のOSSポリシーがすでに存在しているからです。みなさんご存知、サイボウズ社のOSSポリシーです。これをベースとすることに異論のあるOSS開発者は少ないでしょう。実際「サイボウズ・チルドレン」とでも呼ぶべきポリシーが、すでにたくさん生まれています。OSSの利用から開発まで網羅的な内容ですが、企業の定めるポリシーとして画期的なポイントは以下の2点だと思います。

  • 著作権を原始的に従業員のものとする
  • 不具合報告を(努力)義務とする

とくに著作権に関しては、「業務中の生産物はすべて会社のもの」とする一般常識に反していて、発表当初もかなり物議を醸した記憶があります。実際「チルドレン」たちもここには多少手を入れることが少なくないですね。ですが、ここで日和ってしまっては、偉大なる先人の覚悟を損ねることになります。freeeのポリシーを定めるにあたっては、ここは絶対に死守することに決めました。というか、freeeの組織にない単語を置き換えた以外は、全面的にサイボウズポリシーをコピーしました。

あ、書き忘れていましたが、ここまでは完全に個人的な活動です。freeeでは、一人の情熱が組織を動かすきっかけになるのは珍しいことではありません。

7月から新しいポリシーのもとでOSS活動やっていきます💪

あとは根回し! まずDevBrandingのellyさんを巻き込んで、各方面への調整ごとをお願いします。法的な問題がないかを法務部門に問い合わせ、開発組織全体でも合意してもらう必要があります。さらに、グループ会社でもできるだけ同じ条件でポリシーを適用したいので、そちらの調整も必要になりました。

最後に、就業規則の変更です。職務著作の条文に、OSSに関してはその限りではない旨を追加しなくてはいけません。入社して3年もたっていないのに、就業規則の書き換えを迫ったのはこれで2回目です……*1。前回も思いましたが、一従業員の思い付きで会社の「法律」ともいうべきルールを変えられちゃうの、端的にいってヤバいですね、最高です。

freeeの年度切り替えが7月なこともあり、実際の施行開始はそれを待つことにしましたが、公開用のリポジトリも確保したので、あとは中身を詰めて公開するだけです(内容はサイボウズ版と同じなので特筆すべきことはありませんが)。その後はOSS管理組織を立ち上げて、内部的なガイドラインを整備するなど、社内の開発者が物怖じすることなくOSS開発に関われる環境をつくっていきます。

*1:前回は定年制度を廃止しました。https://note.com/tdtds/n/nf09d68a98ffa