LINE株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。 LINEヤフー Tech Blog

Blog


LINEがApache Software FoundationのSilver Sponsorになりました

こんにちは。Open Source Program Office TF (タスクフォース)です。私たちはLINEのエンジニア組織とオープンソースエコシステムを融合し、より密接な関係を築いてコミュニティと共に成長できる文化を作るために様々な取り組みを行っています。今回は、この3月にLINEがApache Software FoundationのSilver Sponsorに加わることになった背景について紹介します。

Apache Software Foundationについて

Apache Software Foundation (ASF)は、オープンソースプロジェクト開発に必要な資源を支援するために1999年に米国で設立された非営利団体です。 元々はApache HTTPサーバーを開発するために開始されましたが、現在では350個以上のオープンソースプロジェクトを支える団体へと発展しています。 ASFでは、オープンソース開発のための基本的な姿勢として「Apache Way」という哲学を掲げています。 この哲学は、個人参加の原則によってベンダー中立性を促進、貢献実績による評価、プログラムコードや技術的な意思決定等の議論は全てオープンで透過的なコンセンサスベースで行われるといった今日の多くのオープンソースプロジェクト運営の基本原則に大きな影響を与えています。

オープンソースプロジェクトを継続させるために必要なこと

オープンソースについて全く知らない人たちでも、現実の日常生活においてオープンソースに大きく依存しています。 私たちが毎日使用するソフトウェアの多くにはオープンソースが使用されているからです。オープンソースプロジェクトのメンテナーは、自分の仕事が世界中に影響を及ぼしているという事実に使命感と責任感を感じながらプロジェクトを維持し続けています。

オープンソースライセンスは開発者個人に責任を負わせることはありません。Apache License 2.0ではオープンソースの開発者と貢献者らが作り出した著作物を使用者が「ありのまま」受け入れることを同意することになります。みなさんは同意したことがありませんか?Apache License 2.0が適用されたオープンソースを使用した瞬間、自動的にライセンスへ同意しているのです。オープンソースライセンスをよく見ると、様々な保証の否認条項が存在します。これは個人にその責任を転嫁するような状況を防ぐためのものです。それにもかかわらず、オープンソースのメンテナーは使命感を持って問題を解決するために最善を尽くしています。

このような状況でも、一般的なユーザーがオープンソースプロジェクトあるいは開発者にその費用を支払うケースは稀です。 この記事を見ると、オープンソースプロジェクトのメンテナーの46%は報酬を全く受け取っていないというアンケート結果を確認することができます。このような事実は、有名なオープンソースに深刻なセキュリティホール問題が発生した際などに、非常に少数の人たちが報酬もなくわずかな資金でプロジェクトを維持していたと知られることもあります。最も最近の事例としては、log4shellと呼ばれるゼロデイの脆弱性にて全世界を動揺させたlog4jプロジェクトを挙げることができます。この脆弱性を修正する過程において、プロジェクトのメンテナーが無給で1日に22時間働いているということが知られ、多くの人々を驚かせました。結論として、オープンソースプロジェクトを安定的に運営し、エコシステムを維持するためにはメンテナー個人に責任を押し付けるよりは、より良い代案が必要な状況であると私たちは考えます。

Apache Software Foundationへの支援を決定した理由

大規模なトラフィックを扱うLINEのサービスではサービスの安定性を非常に重要視していますが、そのシステムの重要な要素においてASF傘下のプロジェクトに多く依存しています。 昨年に行われたLINE DEVELOPER DAY 2021のセッションを見ても多くの事例を確認することができます。

LINEで公開するオープンソースは、ASFが掲げている哲学である「Apache Way」に共感し、基本的にApache License 2.0を適用しています。LINEは、この哲学を基にコミュニティ主導の開発を支援し、コミュニティと共存するための方策を悩みながらも進めています。  

なお、世界の主要なIT企業がASFのスポンサーとなっていますが、まだアジアの企業は多くありません。 LINEは日本の企業として、現時点では唯一のスポンサーとして支援することになりました。今回のLINEの参加を契機に、企業が責任を持ってオープンソース組織の活動を支える価値を伝えていくという面でも貢献していければと思います。

LINEのオープンソース貢献の現況

LINEグループでは、多くのサービスでオープンソースを使用しています。 このため、私たちはオープンソースコミュニティの一員としてこの巨大なエコシステムを維持することに責任を感じ、そのエコシステムと共生するために努力を続けていきます。  

開発貢献の現況

LINEのエンジニアは、社内のプロジェクトを積極的にオープンソースとして公開しています。単に公開するだけでなく、最近のブログ( LINE Open Source Sprint 2021: オープンソースに貢献する文化の創出 ) でも紹介したように、社内のオープンソース貢献イベントを推進することで継続的にプロジェクトを運営し、発展させるための努力を重ねています。また、LINEが所有するオープンソースだけでなく、外部の第三者によるオープンソースに積極的に貢献することも奨励する文化を作る努力をしています。昨年のデータを見れば、95名のLINEのエンジニアが年間に10件以上のGitHub上でのコミットを行い、一度以上貢献したエンジニアは268人に達しています。  

https://opensourceindex.io

なお、下記は近年においてASF傘下のプロジェクトに対してコミットした履歴です(軽微な修正は除外)。

Project Issue Summary
Apache HBase HBASE-25594 graceful_stop.sh fails to unload regions when ran at localhost
Apache Hadoop HDFS-13975 TestBalancer#testMaxIterationTime fails sporadically
Apache Hadoop HDFS-15762 TestMultipleNNPortQOP#testMultipleNNPortOverwriteDownStream fails intermittently
Apache Kafka KAFKA-9685 Solve Set concatenation perf issue in AclAuthorizer
Apache Zeppelin ZEPPELIN-5406 Add detailed explanation for Impersonate on LDAP & Kerberized environments.

スポンサーシップの現況

現在、下記の5つのオープンソース組織にスポンサーしており、2022年もスポンサーを継続および拡大する予定です。なお、PrettierやBootstrapなどへの支援の取り組みは、LINEのフロントエンド開発組織であるUITが主導してきました。UITによる活動報告記事もぜひご参照ください。

組織名 種別 期間
Apache Software Foundation Silver Sponsor 2022年3月から
Prettier One time donation 2022年1月
Bootstrap Sponsor 2021年6月から
Vue.js Gold Sponsor 2021年4月から
Husky Company Sponsor 2021年3月から

より良いオープンソースの文化を作るために

Open Source Program Office TFでは、LINEの開発組織がオープンソースのエコシステムに対してより良く貢献できるように制度を整備し、オープンソースと密接な関係を築く文化を作っていくための仕事をしています。最近では、社内ルールにおいてオープンソース貢献活動に矛盾する内容がないか再び検討するなど、安定的にオープンソース活動を続けていくための基盤作りを行なっています。 今回のスポンサーシップがオープンソースのエコシステムへの貢献を活性化し、外部コミュニティとさらに密接に協働する契機になったらと思います。