ScratchのライセンスがAGPLに変更 ライセンス変更の背景と影響は?

#GitHub#オープンソース#ニュース#解説
投稿日:

Scratchは、幅広い層に利用されるビジュアルプログラミング言語です。とくに教育現場で広く採用されており、プログラミングの入口として多くの人に親しまれています。

Scratchを提供するScratch Foundationは、Scratchエディターのライセンスを従来の三条項BSDライセンスからAGPLに変更したと発表しました。この記事では、Scratchのライセンス変更について詳しく掘り下げます。

Scratchとは

Scratchの公式サイトのスクリーンショット
画像:Scratch公式サイト

Scratchは、マサチューセッツ工科大学(MIT)のメディアラボによって開発された、ビジュアルプログラミング言語です。

ブロックをつなげてプログラムを組む仕組みになっており、初心者でも簡単にプログラミングを学べます。

また、誰でも無料でアクセスできるオープンソースプラットフォームとして、さまざまな教育機関でも採用されています。

Scratchの運営には、「創造性」「包括性」「知識の共有」の3つの柱があります。ユーザーが作成したプロジェクトを「リミックス(改変して再利用)」する機能が提供されており、アイディアを共有できる環境が整えられています。

ScratchのライセンスがAGPLに変更

Scratchを提供するScratch Foundationは、Scratchエディターのライセンスを従来の三条項BSDライセンスからAGPLに変更したと発表しました。

AGPL(GNU Affero General Public License v3)は、GPL(GNU General Public License)の一種です。

従来のGPLでは、ASP(Application Service Provider)やSaaS(Software as a Service)といった利用形態をカバーできていないという問題がありました。

これに対してAGPLは、ネットワーク経由でのソフトウェアの使用に対して条件を課していることが特徴です。

Scratch Foundationは、Scratchのライセンス変更について「この変更は、Scratchのリミックスや共有の価値観を反映し、それらの原則をオープンソースコミュニティに拡張するものです」と述べています。

なお記事執筆時点では、Scratchの特徴的なブロックベースのインターフェースを実現しているscratch-blocksのライセンスは、Apache License 2.0のままとなっています。

Scratchのライセンス変更の影響

ほとんどのユーザーにとっては、Scratchのライセンス変更による大きな影響はありません。これまでと同様に、Scratchエディターを自由に使い、プロジェクトを共有できます。

ただし、変更されたScratchのコードを改変して配布したり、Webベースのサービスとして提供したりする場合には、AGPLの条件に従う必要があります。

とくに、Scratchをカスタマイズして利用するようなケースでは、ライセンスの変更に注意が必要です。

一般的にライセンスの変更は遡及しないと考えられているため、ライセンス変更前のScratchのソースコードは、引き続き三条項BSDライセンスのもとで利用できます。

今回のライセンス変更は、開発者や教育者にとって自身の貢献が守られ、さらに協力しやすい環境が整えられるメリットがあります。

Scratch Foundationは、ライセンス変更について「オープンソースエコシステムとグローバルコミュニティへの投資を深める中で、私たちが展開する取り組みの最初のひとつに過ぎません」と述べています。

まとめ

Scratchのライセンス変更は、AGPLという新しいオープンソースライセンスを採用することで、リミックス文化をより技術的にも支える形となりました。

ほとんどのユーザーには影響がありませんが、一部の状況では改変コードの公開が求められる点に留意が必要です。

参考

Xに共有する Blueskyに共有する Misskeyに共有する LINEに共有する Threadsに共有する
著者のアイコン画像

生まれた時から、母国語よりも先にJavaScriptを使っていました。ネットの海のどこにもいなくてどこにでもいます。

Webフロントエンドプログラマーで、テクノロジーに関する話題を追いかけています。動画編集やプログラミングが趣味で、たまにデザインなどもやっています。主にTypeScriptを使用したWebフロントエンド開発を専門とし、便利で実用的なブラウザー拡張機能を作成しています。また、個人ブログを通じて、IT関連のニュースやハウツー、技術的なプログラミング情報を発信しています。