LFが公開したFOSSの使用に関するレポート「Census Ⅲ ー フリー&オープンソース ソフトウェア調査 第三弾」を読み解く

吉田 行男

2025年2月28日 6:30

こんにちは、吉田です。今回は、2024年12月にLinux Foundationから公開された「Census Ⅲ ー フリー&オープンソース ソフトウェア調査 第三弾」について紹介します。

【参照】Census Ⅲ ー フリー&オープンソース ソフトウェア調査 第三弾
https://www.linuxfoundation.jp/publications/2025/02/census-iii-jp/

これまで、Linux Foundationは2015年に下位レベルの重要なオペレーティング システム ライブラリとユーティリティに焦点を当てた「Census I」レポートを公開しました。その後ハーバード大学と提携し、民間および公共機関のアプリケーション内でどのオープンソース ソフトウェアが最も広く導入されているかを特定し測定するための「Census II」プロジェクトを実施。Census IIではソフトウェア構成分析(SCA)企業であるFOSSA、Snyk、Sonatype、Black Duckのデータを活用し、アプリケーション内でのFOSSの使用状況を示しました。

そして今回のCensus Ⅲプロジェクトは、前述のSCAパートナーからFOSS使用状況に関する1,200万件を超えるデータを活用して、民間および公共機関でのアプリケーション内で展開され最も広く使用されているFOSSを特定することを目的としています。

以下に、主な調査結果の中から興味深いものを抜粋して紹介していきます。

クラウド サービス専用パッケージの利用が増加

上位にランクされているコンポーネントの多くは、特定のクラウドサービスを扱っています。例えば、EC2やS3などのAWSサービスを扱うPythonライブラリ「boto3」は5番目にランクされ、Google Cloudの「Go」ライブラリが8番目にランクされています。

Python2からPython 3への移行が進行中

Pythonパッケージ「six」はPython 2とPython 3の互換性ライブラリで高いランクにランクされていますが、Python 3が2008年に正式リリースされたにもかかわらず、2023年になってもPython 2からPython 3への移行に関する問題が続いていることを示しています。

これは他のレポートとも一致しています。Jetbrainsの「Python Developers Survey 2022 Results」によるとPython開発者全体の7%がPython 2を使用しており、データ分析では29%、コンピュータ グラフィックスでは24%、DevOpsでは23%など、多くの分野でPython 2のユーザー数は大幅に増加しています。重大な非互換性が導入された場合、ソフトウェアの新バージョンへの移行には10年以上かかる可能性があることを示すもので、十分な移行期間が必要であることが分かりました。

Mavenパッケージは引き続き広く使用されており
NuGetおよびPythonパッケージの普及も増加

最も一般的な非npmパッケージ マネージャー「Maven」はJava仮想マシン(主にJavaコード)のパッケージを管理しています。今回の調査でよく使われている上位500パッケージのうち204(40.8%)がMavenからのものでした。

それだけでなく、今回の調査では「NuGet」や「PyPI」で管理されているパッケージが増加しています。NuGetはMicrosoftがサポートする.NET(.NET Coreを含む)のコード共有メカニズムで、.NET、主にC#で記述されたソフトウェアが含まれています。PyPIは正式名称は「Python Package Index」と言うPython用のソフトウェア・リポジトリです。Pythonを利用する開発者向けにソフトウェアの検索・インストール、コミュニティを提供しています。PyPiの運営はPythonソフトウェア財団が行っています。

今回の調査では、NuGetが10.6%から16.2%に、PyPI(Python)パッケージが16.4%から21.6%に増加しています。これはつまりC#やPythonのOSSの活用度合いが増加していることに他なりません。

Rustパッケージ リポジトリからのコンポーネントの使用は
「Census II」以降大幅に増加

公開されているソフトウェアの脆弱性の中で最も多く見られるのが「メモリ安全性」に関するものです。根本的な原因はCやC++といったプログラミング言語が、他のほとんどのプログラミング言語とは異なりデフォルトでメモリ安全性エラーを防止できないことです。これにより、多くの政府機関では新しいプロジェクトにおいてメモリ安全性の高いプログラミング言語への移行を強く推奨しています。

システムレベルへのアクセスが不要な場合やパフォーマンスがそれほど重要でない場合はGo、Java、C#、JavaScript、Python、Ruby、Visual Basicなど多くの代替手段がありますが、システムレベルへのアクセスが必要な場合は選択肢が極めて少なくなります。その中で最も人気のあるプログラミング言語が「Rust」です。

SCAスキャンのデータによると2020年以降に増加しており、前回の調査Census IIではRustパッケージ リポジトリから直接コンポーネントへアクセスする割合の平均は0.02%でしたが、今回は0.12%に上昇しています。

とは言えまだ少ない数字ですが、今後大きく利用が見込める領域なので、今後の動向をウォッチしていく必要があるように思います。

最も広く使用されているFOSSの多くは
ほんの一握りの貢献者によって開発されている

バージョンに依存しない直接リストの上位50プロジェクトのうち47件をレビューしたところ、17%のプロジェクトで1人の開発者がコミットの80%以上を占めていることが分かりました。さらに40%のプロジェクトでは1人または2人の開発者がコミットの80%以上を占め、64%のプロジェクトでは4人以下の開発者がコミットの80%以上を占め、81%のプロジェクトでは10人以下の開発者がコミットの80%以上を占めていることが分かりました。これらの結果は「数千人または数百万人の開発者がFOSSプロジェクトの開発と保守を担当している」という一般的な考えとは異なっています。

一部の開発者に支えられている現状は決して好ましいものではないと思いますので、できるだけ多くの若者がさまざまなプロジェクトに積極的に貢献できるような仕掛けを提供していく必要があるかも知れません。

まとめ

今回取り上げた内容は本レポートの一部なので、もっと詳細を知りたい方は、ぜひレポート全体に目を通してみることをお勧めします。その上で、オープンソースソフトウェアの現状とこれから取り組まなければいけない課題について、読者の皆さんと共有できればと思います。

この記事のキーワード :

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30