Scratchとは
Scratchは、アメリカの
非営利団体Scratch財団が、
マサチューセッツ工科大学(MIT)メディアラボと共同で開発した、8歳から16歳を主な対象とした無料の
ビジュアルプログラミング言語とその開発環境です。コミュニティサイトとしても機能し、世界中のユーザーが作品を共有し、交流することができます。
特徴として、収録されているコンテンツが全てオープンであり、商業広告が表示されない点が挙げられます。世界中で非常に多くのユーザーに利用されており、共有されたプロジェクト数は1億6400万件以上、未公開プロジェクト数は9億件以上、登録ユーザー数は1億3500万人以上、コメント数は約10億件、スタジオ数は約3500万件に達しています。日本国内のユーザーは、全体の約1.8%にあたる230万人以上です。
Scratchは、Windows、Mac、
Linux、Raspberry Pi、Android、iPadなど、多様なプラットフォームに対応しています。
ソースコードは、
GitHub上でGPLv2
ライセンスとScratch Source Code Licenseとして公開されています。
概要
Scratchは、コミュニケーション能力の育成を目的としており、8歳から16歳の子ども向けに開発されましたが、実際には子どもから
大人まで幅広い年代のユーザーが利用しています。
Scratchという名前は、
ディスクジョッキー(DJ)がレコードを擦る「スクラッチング」に由来しており、DJが気軽に曲をミックスするように、Scratchで簡単にプロジェクトをリミックスできることを表現しています。
2006年に、
MITメディアラボのミッチェル・レズニック氏が主導する「ライフロング・キンダーガーテン・グループ」に、Etoys開発チームのジョン・マロニー氏を招いて開発されました。
Scratchの視覚的なGUIは、プログラムのブロックをドラッグ&ドロップすることで、
アニメーション、アート、ストーリー、ゲームなどを簡単に作成できる環境を提供しています。正しい構文を記述する必要がなく、ブロックを視覚的に組み合わせることでプログラムをテストしたり、リミックスや修正を容易に行うことができます。
2013年5月には、Scratch 2.0が公開され、
ウェブアプリケーションとして、開発環境のインストールが不要になりました。これによりリミックスが容易になり、
ウェブアプリケーションならではの機能が追加されました。
2019年1月には、Scratch 3.0が公開されました。
HTML5を使用することで、
スマートフォンやタブレット端末での利用がサポートされるようになりました。また、拡張機能の追加、ブロックの文字の読みやすさ向上、機能性や画質の向上などの変更が加えられました。
ユーザーインターフェース
Scratch 3.0のエディターは、左側のブロックパレット、中央のスクリプトエリア、右側のステージとスプライトのリストに分かれています。ブロックパレットには、プログラム作成に必要なブロックがカテゴリーごとに整理されており、スクリプトエリアにドラッグして使用します。ブロックは主に、動き、見た目、音、制御、イベント、調べる、演算、変数、ブロック定義の9つのカテゴリーに分けられており、拡張機能によりペンや外部機器との連携も可能です。
サイトの色の更新
2023年6月28日には、サイトのアクセシビリティ向上のため、インターフェースやナビゲーションバーの
色が青から紫に変更されました。また、ブロックの
色をハイコントラストに変更できる機能が追加されました。
Scratch Lab
Scratch Labは、Scratchに未実装の機能を試せる
ウェブサイトです。2024年10月現在、ビデオによるスプライト、顔認識、
アニメーションテキスト、新しいブロックの
色などを試すことができます。Scratch Labで作成した作品は、Scratchのコミュニティで共有することはできません。
ユーザーコミュニティ
Scratchは、
教育施設、博物館、コミュニティセンター、家庭など、様々な場所で使用されています。低年齢の子どもは親や友達とプログラミングを楽しみ、大学生は
計算機科学入門クラスで利用することもあります。表示言語を切り替えることで、世界中で利用可能です。ジョンズ・ホプキンス大学のCenter for Talented Youth (CTY)では、オンラインコースを提供しています。
オンラインコミュニティ
Scratchオンラインコミュニティのスローガンは「Imagine, Program, Share(想像・プログラム・共有)」です。プロジェクトのリミックスを通じて、学習を深め、新しいプロジェクトを共有することを奨励しています。ユーザーはコメント、高評価、お気に入り機能を利用して交流できます。共有プロジェクトには、
クリエイティブ・コモンズ 表示-継承2.0
ライセンスが適用され、商用利用や再利用が可能です。
ウェブサイトでは、「Scratch Design Studio (SDS)」というチャレンジが頻繁に開催されています。また、
メキシコや
イスラエルなど、いくつかの国ではローカルコンテンツが提供されています。
教育者向けのオンラインコミュニティ「ScratchEd」は、2019年5月に閉鎖されました。
イベント
Scratch Day
Scratch Dayは、毎年世界中で開催されるScratchのイベントです。基本的には
5月15日の前後の土日に開催され、誰でもイベントを主催できます。この日は、Scratchのサービスが開始された2007年
5月15日に由来します。
Scratch Week
Scratch Dayから移行したイベントで、世界規模でバーチャル内でお祝いします。2024年から始まりました。
展開
2012年11月には、ミッチェル・レズニック氏によるTEDxBeaconStreetでの講演「Let's teach kids to code.」が公開され、プログラミング学習の重要性が語られました。NHKの
教育番組「スーパープレゼンテーション」でも、この講演が取り上げられました。
NHK Eテレの『
Why!?プログラミング』や、民放の『GP LEAGUE プログラミングコロシアム』でも、Scratchが公式のプログラミングソフトとして採用されています。
Scratchアプリ
インターネットに接続しなくても使用できるオフラインエディターとして、Windows、Mac、Android、
ChromeOS用のScratchアプリが提供されています。以前はScratch Desktopと呼ばれていましたが、バージョン3.16.1でScratch 3に名称変更されました。
ScratchのMOD
Scratchの派生版として、Scratch Modificationsが存在します。これらは、Scratch 1.4の
ソースコードを基に、ブロックの追加やGUIの変更が行われたものです。Build Your Own Blocks (BYOB)のように、
計算機科学の基礎的なアプローチを取り入れたものもあります。
Pyonkee
Scratch 1.4と同等の環境をiPadで再現したもので、2014年に登場しました。
伊藤忠テクノソリューションズが開催するプログラミング教室でも採用されています。
TurboWarp
プロジェクトを
JavaScriptにコンパイルし、高速で実行できるMODです。Scratchチームや財団とは提携していません。高度な設定やペンのHD化など、多くの機能が追加されています。2022年11月10日にAPI仕様が変更されたため、非公開プロジェクトの閲覧・編集は基本的にできなくなりました。
Penguinmod
ScratchとTurboWarpをベースに作成されたビジュアルコーディングサイトです。独自の拡張機能とTurboWarpの拡張機能が利用可能です。
Snail-ide
Scratch,turbowarp,PenguinmodをベースにしたModです。
中国政府による検閲
2020年8月、
中国政府は
グレート・ファイアウォール(GFW)を使用して、Scratchの
ウェブサイトへのアクセスをブロックしました。理由は、アカウント作成時の国のリストに「香港」「マカオ」「台湾」が含まれていたことです。当時、
中国では300万人のユーザーが利用していましたが、現在ではオンラインでの利用が制限され、オフラインエディターの使用に限定されています。
中国当局は、Scratchに掲載されている情報が
中国本土にとって屈辱的で中傷的、また虚偽のものであると主張しています。