2015年10月16日から使用されているロゴ | |
Scratch 3.0 エディター | |
| パラダイム | イベント駆動型、ブロックベースのプログラミング言語 |
|---|---|
| 開発者 | スクラッチファンデーション |
| 初登場 |
|
| 安定リリース |
|
| 実装言語 | Squeak (Scratch 1.x) ActionScript (Scratch 2.0) [3] HTML5、JavaScript (Scratch 3.0) [3] [4] |
| OS | Microsoft Windows、macOS、Linux(レンダラー経由)、HTML5(Web ブラウザー経由)、iOS、iPadOS、Android。 |
| ライセンス | BSD 3条項、GPLv2、Scratchソースコードライセンス |
| ファイル名拡張子 | .sb、.sprite (Scratch 1.x) .sb2、.sprite2 (Scratch 2.0) .sb3、.sprite3 (Scratch 3.0) |
| Webサイト | 翻訳元 |
| 影響を受けた | |
| ロゴ、Smalltalk、HyperCard、StarLogo、AgentSheets、AgentCubes、Etoys | |
| 影響を受けた | |
| カトロバット、[5] スクラッチジュニア、[6] スナップ!、[7] mBlock、タートルステッチ | |
Scratchは、高水準のブロックベースのビジュアルプログラミング言語およびウェブサイトであり、主に子供向けの教育ツールであり、8歳から16歳を対象としています。 [8]サイトのユーザーは、ブロックのようなインターフェースを使用してウェブサイト上でプロジェクトを作成できます。 Scratchは、ミッチェル・レズニックとヤスミン・カファイに授与された共同の米国科学財団の助成金を通じて考案され、設計されました。[9] ScratchはMITメディアラボによって開発され、70以上の言語に翻訳され、世界のほとんどの地域で使用されています。[10] Scratchは、放課後センター、学校、大学、およびその他の公共知識機関で教えられ、使用されています。2023年2月15日現在、この言語の公式ウェブサイトのコミュニティ統計によると、1億2,300万件以上のプロジェクトが1億300万人を超えるユーザーによって共有されており、毎月9,500万回を超えるウェブサイト訪問が行われています。[10]これまでに作成されたプロジェクトの総数は10億を超え(共有されていないプロジェクトを含む)、2024年4月には10億番目のプロジェクトを超える予定です。
Scratch は、ディスクジョッキーが使用する「スクラッチ」と呼ばれるテクニックにちなんで名付けられました。これは、ビニールレコードをクリップで留め、ターンテーブルで操作してさまざまなサウンド効果と音楽を生み出すものです。スクラッチと同様に、この Web サイトでは、ユーザーがさまざまなメディア (グラフィック、サウンド、その他のプログラムを含む) をクリエイティブな方法で組み合わせて、ビデオ ゲーム、アニメーション、音楽、シミュレーションなどのプロジェクトを作成および「リミックス」できます。[11] [12]
スクラッチ 3.0
ユーザーインターフェース

Scratch インターフェースは、ステージ領域、ブロック パレット、およびブロックを配置してスクリプトに整理するコーディング領域の 3 つの主要なセクションに分かれています。コーディング領域では、緑のフラグを押すかコード自体をクリックすることで、スクリプトを実行できます。ユーザーは独自のコード ブロックを作成することもできます。これは、「マイ ブロック」セクションに表示されます。
ステージエリアには結果(アニメーション、タートルグラフィックスなど、小さいサイズまたは通常サイズ、全画面オプションも利用可能)が表示され、すべてのスプライトのサムネイルが下部のエリアにリストされます。ステージはx座標とy座標を使用し、0,0がステージの中心になります。[13]
ステージングエリアの下部でスプライトを選択すると、ブロックパレットからコードブロックをコーディングエリアにドラッグすることでコードブロックを適用できます。コスチュームタブでは、ベクターおよびビットマップエディタを使用してスプライトの外観を変更し、アニメーションなどのさまざまな効果を作成できます。[13]サウンドタブでは、スプライトにサウンドや音楽を添付できます。[14]
スプライトや背景を作成する際、ユーザーは手動でスプライトを描いたり、[13]ライブラリからスプライトを選択したり、画像をアップロードしたりすることができます。[14]
以下の表は、プログラミング ブロックのカテゴリを示しています。
オフライン編集

Scratch 3.0のオフライン「デスクトップエディター」は、Microsoft Store、AppleのmacOS、ChromeOS、AndroidでMicrosoft Windows 10以降で利用可能であり、 [15]これにより、オフラインでScratchプログラムを作成および再生できます。オフラインエディターは、Scratch 2.0やScratch 1.4などの以前のバージョンでもダウンロードできます(古いバージョンのアーカイブはここにあります)。
拡張機能
Scratch では、拡張機能によって、プロジェクトで使用できる追加のブロックや機能が追加されます。Scratch 2.0 では、拡張機能はすべてハードウェアベースで、ペンは通常のカテゴリでした。Scratch 3.0 では、テキスト読み上げ音声などのソフトウェアベースの拡張機能と、micro:bitなどの新しいハードウェアベースの拡張機能が追加されました。拡張機能は以下のとおりです。

物理的な
- LEGO Mindstorms EV3 – モーターを制御し、LEGO Mindstorms EV3 からセンサーデータを受信します
- Makey Makey – Makey Makey を使用してプロジェクトを制御する
- LEGO Education WeDo 2.0 – モーターを制御し、LEGO WeDoからセンサーデータを受信します
- micro:bit – プロジェクトを制御するための micro:bit の使用
- LEGO BOOST – ロボット作品に命を吹き込む
- 直接的な力と加速 – 引っ張り、押し、動き、回転を感知する
デジタル
Scratch 3.0 のデジタル拡張機能の多くは、以前は通常のブロック カテゴリでしたが、煩雑さを軽減するために拡張機能セクションに移動されました。これには次のものが含まれます。
- 音楽 – デジタル楽器 (ドラム、トランペット、バイオリン、ピアノなど) を演奏します。以前はサウンド カテゴリに含まれていました。
- ペン - さまざまな太さと色でステージ上に描画します。以前は通常のブロック カテゴリでした。
- ビデオ センシング –カメラで動きを検出します。以前はセンシング カテゴリにありました。
商業企業とのコラボレーションにより、新しいデジタル拡張機能も追加されました。これには以下が含まれます。
- テキスト読み上げ – テキスト内の単語を音声出力に変換します (Amazon が提供するさまざまな音声)
- 翻訳 – Google 翻訳を使用して、ある言語のテキストをアラビア語、中国語、オランダ語、英語、フランス語、ギリシャ語、ノルウェー語、日本語など、さまざまな言語に翻訳します。
- Makey Makey – キーをより正確に押し、複数のキーを順番に押すためのオプション。拡張機能をさらに制御したい場合は、結合ブロックをつかむことができます。
2019年にニューヨーク大学が発表した論文では、Scratchで音楽をコーディングすることについて、「現在Scratchに実装されている音楽とサウンドブロックは、Scratchのコアユーザーベースである子供たちにとって意味のある音楽制作を制限し、妨げる可能性がある」と主張し、例示している。[16]
スクラッチラボ
Scratch Lab [17]では、Scratchチームによる実験が公開されており、将来的にウェブサイト全体に新しい機能が追加されるかどうかを検討することを目的としている。現在開発中の実験的な機能には以下のものがある。
- ビデオ スプライト – スプライトにライブ ビデオを入力します。
- 顔認識 - 顔と対話するアニメーションの衣装やゲームを作成します。
- アニメーションテキスト – 色、フォント、アニメーションを使用して言葉に命を吹き込みます。
ユーザーのコミュニティ

Scratchは、学校、博物館、図書館、コミュニティセンター、家庭など、さまざまな環境で使用されています。 [18] [19] [11] Scratchは主に8〜16歳のユーザー向けに設計されていますが、すべての年齢層に使用されており、2009年の時点でかなりの数の成人ユーザーベースがあります。[8] [20]この幅広い普及により、物理的およびデジタルの両方で多くの周辺コミュニティが形成されました。[10] 2020年4月、世界のプログラミング言語のTiobeランキングで、Scratchはトップ20に含まれていました。 Tiobeによると、Scratchで書かれたプロジェクトは5000万あり、毎月100万の新しいプロジェクトが追加されています。[21]
教育ユーザー
Scratch は、面白いプログラムの作成が比較的簡単で、習得したスキルをPythonやJavaなどの他のプログラミング言語にも応用できるため、入門言語として使用されています。
Scratch はゲーム作成専用ではありません。提供されるビジュアルを使用して、プログラマーはアニメーション、テキスト、ストーリー、音楽、アートなどを作成できます。生徒が数学、歴史、さらには写真のトピックを学ぶために使用できるプログラムはすでに多数あります。Scratch を使用すると、教師はアニメーションを使用して概念的かつ視覚的なレッスンや科学実験課題を作成できます。アニメーションは難しい概念を視覚化するのに役立ちます。社会科学では、インストラクターはインタラクティブな要素を含むクイズ、ゲーム、チュートリアルを作成できます。Scratch を使用すると、若者はプログラミングのロジックと、創造的に構築およびコラボレーションする方法を理解できます。[22]
Scratchはインドと世界各地のDAV組織の800以上の学校と70以上の大学で教えられています。 [23] [24]
高等教育では、ハーバード大学のCS50入門コンピュータサイエンスコースの最初の週にScratchが使用されています。 [25] [26]
オンラインコミュニティ


Scratch のユーザーは「Scratchers」と呼ばれます。Scratchers はプロジェクトを共有し、フィードバックを受け取ることができます。プロジェクトは開発環境から Scratch の Web サイトに直接アップロードでき、コミュニティのメンバーは誰でも完全なソースコードを表示およびダウンロードして、研究したり、新しいプロジェクトにリミックスしたりできます。[27] [28] Scratchers はプロジェクト スタジオを作成したり、他の人のプロジェクトにコメントしたり、お気に入りに登録したり、「いいね」したり、他のメンバーをフォローしてプロジェクトやアクティビティを確認したり、アイデアを共有したりすることもできます。プロジェクトはゲームやアニメーションから実用的なツールまで多岐にわたります。さらに、ユーザー間の作成と共有を促進するために、Web サイトでは「Scratch Design Studio」チャレンジを頻繁に開催しています。[29]
MIT Scratchチームは、このコミュニティがすべての人にとって友好的で敬意のある環境を維持できるように取り組んでいます。[30] [31]
教育者には、ハーバード大学教育大学院が開発・支援するScratchEdと呼ばれる独自のオンラインコミュニティがあります。このコミュニティでは、Scratch教育者がストーリーを共有し、リソースを交換し、質問をします。[32]
スクラッチウィキ
Scratch WikiはScratchのサポートリソースであり、Scratchのウェブサイト、歴史、およびScratchを取り巻く現象に関する情報を提供します。Scratchチーム(Scratchの開発者)によってサポートされていますが、主にScratchユーザー(Scratcher)によって書かれており、メインのScratchウェブサイトとは独立してホストされています。[33] Scratch Wikiのベースドメインには、英語以外の言語のウィキも用意されています。
役割
役割は、プロフィールページやフォーラムの投稿で、ユーザー名の下にラベルとして表示されます。荒らし行為を防ぐため、新しいアカウントには通常の「Scratcher」役割ではなく、「New Scratcher」役割が与えられます。New Scratcherアカウントには、クラウドデータを使用できないことや、コメントを投稿するまでに最低30秒間のクールダウン期間があることなど、いくつかの制限が課せられます。[34]一定期間交流してプロジェクトを作成すると、アカウントはScratcher役割を獲得する資格を得られます。[35]
Scratchの公式モデレーターと開発者は「Scratchチーム」の一員としてラベル付けされ、通常ユーザー名の最後にアスタリスクが付きます。[36]また、このサイトには、生徒と教育者が教室でScratchを使用するための特別なタイプのアカウントもあります。[37]
検閲
2020年8月、GreatFireは中国政府がScratchウェブサイトへのアクセスをブロックしたと発表した。当時、中国では300万人以上が使用していたと推定されていた。[38] [要出典]この報道では、マカオ、香港、台湾がウェブサイトに国として記載されていたという事実を挙げている。[38] [39]また、アブハジア、ソマリランド、南オセチア、フェロー諸島も場所として記載されているが、これらはScratchers WorldwideセクションのScratch Statisticsにのみ表示されているようで、これらの国でアカウントを作成した人はいない。
コードベース
プロジェクトエディタの3つのメジャーバージョンすべてのソースコードと、現在のウェブサイトの大部分は、GitHubのさまざまなリポジトリで公開されています。[40] Scratch 3.0はJavaScriptベースで、2.0はActionScriptでプログラムされています。[4]また、1.xバージョンはSqueakをベースにしており、Squeak自体はSmalltalk -80をベースにしています。[41]
2.0には、ActionScriptバージョンと並行して開発されていた実験的なJavaScriptベースのインタープリタがありました。[42]
3.0では、Scratchブロックは、ブロックベースのビジュアルプログラミング言語を作成するためにGoogleが開発したJavaScriptライブラリであるBlocklyを使用して実装されています。[43] [44]
Scratch 2.0のリリースから1年後の2014年5月13日、Scratchフォーラムの開発者が2.0をオープンソースにすると発表しました。[45]
イベント
Scratch教育者はScratch Educator Meetupsに直接集まることができます。これらの集まりでは、Scratch教育者はお互いから学び、計算創造性をサポートするアイデアや戦略を共有します。[46]
毎年5月には、以前は「スクラッチデー」と呼ばれていた「スクラッチウィーク」が宣言されます。コミュニティのメンバーは、この日またはその前後に、大小を問わず、スクラッチを祝うイベントを主催することが奨励されています。これらのイベントは世界中で開催されており、リストはスクラッチデーのウェブサイトで確認できます。スクラッチウィークは、スクラッチウェブサイトでのスクラッチ活動に焦点を当てたシリーズです。[47]
毎年エイプリルフールになると、Scratch チームはユーザーにいたずらをしたり、イースター エッグを追加したりします。たとえば、プロジェクト内のすべてのイベント ブロックが同じブロックの猫バージョンに変わるといったことです。
歴史
2000年代初頭、 MITメディアラボのライフロング・キンダーガーテン・グループ(LLK)は、子供向けのビジュアルプログラミング言語を開発していました。[48] 2003年、ミッチェル・レズニック、ヤスミン・カファイ、ジョン・マエダは、子供たちがコードで自分を表現するための新しいプログラミング環境の開発に対して、全米科学財団の助成金を獲得しました。 [9]ミッチェル・レズニックが率いるLLKは、UCLAのヤスミン・カファイのチームと提携して、ボストンとロサンゼルスのコンピュータクラブハウスと密接に協力してScratchを開発し、その設計をこれらの放課後青少年センターの慣行と社会的ダイナミクスに基づいていました。[9] Scratchは、ラベル付きカテゴリやグリーンフラグのない基本的なプログラミング言語として始まりました。[49] AgentSheetsと同様に[50]、 Scratchは、後にブロックベースプログラミングとして知られる触覚プログラミングの概念を採用しました。Scratchは、子供たちにプログラミングを教えることを目的として作られました。[49]
Scratchの哲学は、チームのスローガン「想像して、プログラムして、共有する」に示されているように、コードの共有、再利用、組み合わせを奨励しています。[51]ユーザーは独自のプロジェクトを作成することも、他の人のプロジェクトを「リミックス」することもできます。Scratchで作成およびリミックスされたプロジェクトは、クリエイティブ・コモンズ表示-継承ライセンスの下でライセンスされます。[52] Scratchは、プロジェクトページの上部に元のプロジェクトとプログラムを作成したユーザーのクレジットを自動的に表示します。[11]
Scratchは、コンピュータクラブハウスの若者とスタッフとの継続的な交流に基づいて開発されました。コンピュータクラブハウスでのScratchの使用は、非公式の学習環境がテクノロジーの流暢性の開発をどのようにサポートできるかを示す他の放課後センターのモデルとなりました。[53]
Scratch 2.0は2013年5月9日にリリースされました。[13]このアップデートによりサイトの外観が変更され、オンラインプロジェクトエディタとオフラインエディタの両方が含まれました。[54]カスタムブロックをプロジェクト内で定義できるようになり、他のいくつかの改善も行われました。[55] Scratch 2.0オフラインエディタは、Windows、Mac、Linux用としてScratchのWebサイトから直接ダウンロードできましたが、Linuxのサポートは後に廃止されました。非公式のモバイルバージョンはScratchフォーラムからダウンロードする必要がありました。[56] [57]

Scratch 3.0は、2016年にScratchチームによって初めて発表されました。2018年1月までにいくつかのパブリックアルファ版がリリースされ、その後プレベータ版の「プレビュー」版がリリースされました。[58] Scratch 3.0のベータ版は2018年8月1日にリリースされました。 [59] Internet Explorerを除くほとんどのブラウザで使用できます。[60]
Scratch 3.0は、3.xの最初のリリースバージョンであり、2019年1月2日にリリースされました。[61] 2023年6月28日、[62] Scratchウェブサイトのヘッダーとリンクが青から紫に変更され、新しいオプションの高コントラストブロックカラーが導入され、色覚異常の人がサイトを読みやすく、使いやすくなりました。[63]
2019年3月11日、ScratchはMITメディアラボから分離した。[64]
ファイルタイプ
Scratch 1.4では、*.sbファイルがプロジェクトを保存するために使用されたファイル形式でした。[65]
*.sb ファイルは 4 つのセクションに分かれています。
- 「ヘッダー」、この 10 バイトのヘッダーには、Scratch 1.2 以降のバージョンでは ASCII 文字列「ScratchV02」が含まれ、Scratch 1.2 以下のバージョンでは「ScratchV01」が含まれます。
- 「infoSize」は、プロジェクトの infoObjects の長さをエンコードします。長さ 4 バイト、32 ビット、ビッグ エンディアン整数です。
- 「infoObjects」は、辞書形式のデータ セクションです。これには、プロジェクトのステージのサムネイルである「thumbnail」、プロジェクト作成者のユーザー名である「author」、プロジェクト ノートである「comment」、保存およびアップロード ログである「history」、ファイルの保存に使用された Scratch のバージョンである「scratch-version」が含まれます。
- 「contents」はステージをルートとするオブジェクトテーブルです。[66]プログラム内のすべてのオブジェクトはここに参照として保存されます。[67]
Scratch 2.0 は *.sb2 ファイル形式を使用します。これらは、.jsonファイルと、サウンド (.wav として保存) や画像 (.png として保存) などの Scratch プロジェクトの内容を含む zip ファイルです。[68] project.json を除く各ファイルタイプは、0 から始まり、ファイルが追加されるごとにカウントアップする番号として保存されます。「0.png」というラベルの画像ファイルは常に 480x360 の白い画像ですが、「0.wav」は削除されていない最も古いファイルになります。
Scratchの実験版であるScratchXでは.sbxファイル形式が使用されていました。[69]
Scratch 3.0は*.sb3形式を使用します。これは*.sb2と非常によく似ていますが、唯一の違いはサウンドです。[70]
旧バージョン
Scratchのメインウェブサイトでは現在、最新バージョン(Scratch 3.0)のみが稼働していますが、Scratch 2.0(および以前のScratch 1.4)のオフラインエディタは引き続きダウンロード可能であり[71]、ローカルでゲームを作成して実行するために使用できます。[72] Scratch 2.0ランチャーからプロジェクトをアップロードすることは引き続き可能であり、メインサイトにアップロードするとすぐにScratch 3.0に変換されます。[73] Scratch 3.0のオフラインバージョンもあります。
テクノロジー
Scratch 1.4以下のエディターはSqueakで書かれていましたが、オンラインプロジェクトビューアーはJavaで書かれており、後にAdobe Flashで書かれたプレーヤーが追加されました。[41] [74] Scratch 2.0では、オンラインバージョンにはAdobe Flash、オフラインエディターにはAdobe AIRに依存していました。これらは人気がなくなり、Adobeは2020年末にサポートを中止しました。[75] [76]
インタフェース

Scratch 2.0では、ステージ領域は左側にあり、プログラミングブロックパレットは中央に、コーディング領域は右側にあります。拡張機能はパレットの「その他のブロック」セクションにあります。[20]
Scratch 2.0のWebバージョンではプロジェクトの自動保存が導入されました。[77] : 23
Scratch 2.0 のブロック パレットは、次から次へとスクロールできない個別のセクションで構成されています。以下の表に、さまざまなセクションを示します。
Scratch 2.0ではバックパックが導入され、スクリプト、スプライト、コスチューム、サウンドをプロジェクト間で転送できるようになりました。[77] : 14–15
1.4 音
Scratch 2.0 ではサウンドのインポート方法が変更されたため、Scratch 1.4 のサウンドの多くが機能しなくなりました (プロジェクト ファイルは *.sb から *.sb2 に変更されました)。
特徴
Scratchは、スプライトと呼ばれる複数のアクティブなオブジェクトを使ったイベント駆動型プログラミングを採用している。[13]スプライトは、Scratchの一部であるシンプルなエディタでベクターまたはビットマップグラフィックとしてゼロから描画することも、外部ソースからインポートすることもできる。Scratch 3.0は、「リスト」と呼ばれる1次元配列のみをサポートしており、浮動小数点スカラーと文字列はサポートされているが、文字列操作機能は限られている。強力なマルチメディア機能とマルチスレッドプログラミングスタイルと、Scratchプログラミング言語のかなり限定された範囲との間には、大きな対照がある。
Scratch 2.0の機能
Scratch 2.0は、プロシージャを第一級構造体として扱わず、Scratch 2.0と他のプログラム間の相互作用を可能にする実験的な拡張機能であるScratch 2.0拡張プロトコルによるファイルI/Oオプションが制限されています。 [78]拡張プロトコルにより、 Lego Mindstorms [79]やArduino [80]などのハードウェアボードとのインターフェースが可能になります。Scratch 2.0には、次の機能もあります。
- スマートブロックスイッチング
- 2列のカテゴリメニュー
- プロジェクト管理の逆順
- 左側にステージを表示
- 正方形ブロック入力
- コンパクトエディタ
- スプライトプロパティの折りたたみ
- Scratch 2.0 テーマ
スナップ!(自分だけのブロックを作ろう)
Scratch にヒントを得た、より高度なビジュアルプログラミング言語がSnap !です。これは、第一級の手続き (その数学的基礎はラムダ計算とも呼ばれます)、第一級のリスト (リストのリストを含む)、プロトタイプ継承を備えた第一級の真のオブジェクト指向スプライト、およびネスト可能なスプライトを備えていますが、これらは Scratch の一部ではありません。[81] Snap ! (以前は "BYOB") は、カリフォルニア大学バークレー校のBrian Harvey [84] [85]が提供したドキュメントを使用してJens Mönig [82] [83]によって開発され、コンピューターサイエンスを専攻していない学生向けのコンピューターサイエンス入門コース "The Beauty and Joy of Computing" を教える際に使用されました。[86] 2 人とも "Snap ! " を設計する前は Scratch チームのメンバーでした。[87] [20]
スクラッチジュニア
2014年7月にはiPad向けにScratchJrがリリースされ、2016年にはAndroid向けにScratchJrがリリースされた。Scratchに大きく影響を受け、ミッチ・レズニックが共同リーダーを務めているが、5歳から7歳を対象とした、より若い子供向けに完全に書き直されたものである。[88]
コミュニティによる変更
Scratchはオープンソースであるため、ユーザーエクスペリエンスを改善または変更することを目的とした多数のフォークやブラウザ拡張機能がコミュニティによって作成されています。ScratchToolsやScratch Addonsは、ScratchのWebサイトとエディターに多くのアップグレードと新機能を追加するオープンソースのブラウザ拡張機能の例です。[89]
TurboWarpはScratch 3.0エディタのフォークで、プロジェクトの実行時にScratchブロックをJavaScriptコードにコンパイルします。これにより、プロジェクトは最大200倍高速に実行され、60FPSオプションで、結果はプロジェクト、設定、アドオンによって大きく異なります。 [90] [91] TurboWarpはプロジェクトをスタンドアロンの HTML5、バンドル(macOS)、EXEファイルにエクスポートすることもできます。[92]
ユーザーはJavaScriptを使用してScratch 3.0用の独自の拡張機能を作成することもできます。[93] Scratch 3.0の目的は、ユーザーが非公式のJavaScript拡張機能を開発できるようにすることでしたが、モデレーションのリスクのために放棄されました。その結果、公式サイトではJavaScript拡張機能の追加が許可されていませんが、Scratchのいくつかの修正では許可されています。
2.0より前では、Scratch 1.4のソースコードを使用して、いくつかのScratchフォーク[94] [より良いソースが必要]が作成されました。これらのプログラムには通常、Scratchには存在しないいくつかの追加ブロックのみが含まれていました。[95] [より良いソースが必要]
参照
- Blockly は、Scratch がコード ブロックを作成するために使用するインターフェイスです。
- Snap! (プログラミング言語)
- スウィフトプレイグラウンド
- アリス(ソフトウェア)
- Twine (ソフトウェア)
- レゴ マインドストーム EV3
- コドゥゲームラボ
- コード.org
- プログラム可能なクリケット
- PWCT
- ビジュアルプログラミング言語
- ペンシルコード(プログラミング言語)
参考文献
- ^ Maloney, John; Burd, Leo; Kafai, Yasmin; Rusk, Natalie; Silverman, Brian; Resnick, Mitchel (2004 年 1 月 29 ~ 30 日)。Scratch: 先行公開。コンピューティングを通じた創造、接続、コラボレーションに関する第 2 回国際会議。セクション 6: プロジェクトの現状と今後のステップ。doi : 10.1109/C5.2004.33 – ResearchGate 経由。
- ^ 「Scratchタイムライン – Scratch Wiki」. en.scratch-wiki.info .
- ^ ab Lee, David (2018年12月28日). 「Scratch 3.0について知っておくべきこと」. Computhink . 2024年2月9日閲覧。
- ^ ab Frang, Corey (2019年2月28日). 「ScratchをFlashからJavaScriptに移植する: パフォーマンス、相互運用性、拡張」. bocoup . 2024年2月9日閲覧。
- ^ 「Catrobat Home」. catrobat.org .
- ^ 「ScratchJr – ホーム」. scrapjr.org .
- ^ 「Snap! 自分だけのブロックを作ろう」. snap.berkeley.edu .
- ^ ab scrap, scrap (2022年10月11日). 「Scratch – About」. scrap.mit.edu .
- ^ abc 「NSF Award Search: Award # 0325828 – ITR: コミュニティテクノロジーセンターでの非公式学習と技術的流暢性を高めるネットワーク化されたメディアリッチプログラミング環境」。www.nsf.gov 。 2021年4月15日閲覧。
- ^ abc 「Community statistics at a glance」。scratch.mit.edu。2016年4月6日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ abc Lamb, Annette; Johnson, Larry (2011年4月). 「Scratch: 21世紀の学習者のためのコンピュータプログラミング」(PDF) . Teacher Librarian . 38 (4): 64–68 . 2019年5月18日閲覧。
- ^ Schorow, Stephanie (2007年5月14日). 「Creating from Scratch」. MIT News . 2018年10月13日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ abcde Marji, Majed (2014). Scratchでプログラミングを学ぶサンフランシスコ、カリフォルニア州: No Starch Press. pp. xvii, 1–9, 13–15. ISBN 978-1-59327-543-3。
- ^ ab 「Science Buddies: Scratch ユーザーガイド: Scratch のインストールと使用開始」。ScienceBuddies.org。 2019 年 5 月 18 日時点のオリジナルよりアーカイブ。2019 年5 月 18 日閲覧。
- ^ 「Scratch Desktop」 。 2019年9月19日閲覧。
- ^ 「Scratchで音楽を作る:高い床、低い天井、そして狭い壁? /」 Jitp.commons.gc.cuny.edu。2019年5月16日。 2022年2月27日閲覧。
- ^ 「Scratch Lab」. lab.scratch.mit.edu . 2023年9月27日閲覧。
- ^ Oliveira, Michael (2014年4月30日). 「カナダの学校、子供にコンピューターコーディングを教え始める」CTV.ca. 2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「スクラッチデー」ミネソタ科学博物館。2013年4月8日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ abc Resnick, Mitchel; Maloney, John; Hernández, Andrés; Rusk, Natalie ; Eastmond, Evelyn; Brennan, Karen; Millner, Amon; Rosenbaum, Eric; Silver, Jay; Silverman, Brian; Kafai, Yasmin (2009). 「Scratch: Programming for All」(PDF) . Communications of the ACM . 52 (11): 60–67. doi :10.1145/1592761.1592779. S2CID 229934947.
- ^ Fay, Joe (2020年4月6日). 「子供向けプログラミング言語 Scratch が最新の開発者ランキングでトップ20にランクイン • DEVCLASS」. DEVCLASS . 2020年4月27日閲覧。
- ^ Martin, Neil (2015年6月25日). 「Scratchとは何か?それはAVかITか?」AV Magazine。2019年5月18日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ 「DAV CSシラバス」(PDF) 。 2018年7月13日時点のオリジナル(PDF)よりアーカイブ。 2019年5月18日閲覧。
- ^ 「DAV Jharkhand Syllabus」。2019年5月18日閲覧。
- ^ Young, Jeffrey R. (2007年7月20日). 「新しいプログラミング言語 Scratch の核心は、恐れではなく楽しさ」。The Chronicle of Higher Education。ISSN 0009-5982 。 2019年5月18日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ “CS50 シラバス”. 2015年3月17日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ Monroy-Hernandez, Andres; Hill, Benjamin Mako; Gonzalez-Rivero, Jazmin; Boyd, Danah (2011). 「コンピューターはクレジットを付与できない: オンラインリミックスコミュニティにおける自動アトリビューションの限界」第29回国際コンピューティングシステム人間工学会議 (CHI '11) の議事録。ACM。pp. 3421–30。arXiv : 1507.01285。doi : 10.1145 /1978942.1979452。S2CID 7494330。
- ^ Hill, BM; Monroy-Hernández, A.; Olson, KR (2010). 「ソーシャルメディア共有ウェブサイトでのリミックスに対する反応」 ICWSM 2010: ウェブログとソーシャルメディアに関する第4回国際会議の議事録、 2010年5月23~26日。ワシントンDC: AAAI Press。arXiv : 1507.01284。Bibcode : 2015arXiv150701284M。ISBN 978-1-57735-445-1. OCLC 844857775.
- ^ “Scratch Design Studio”. wiki.scratch.mit.edu . 2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ “保護者の皆様へ”. scrap.mit.edu . 2019年4月4日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ 「Scratchコミュニティガイドライン」。scratch.mit.edu 。 2019年4月7日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「Scratch for Educators」. scrap.mit.edu。2008年10月5日時点のオリジナルよりアーカイブ。2010年5月18日閲覧。
- ^ “Scratch Wiki”. en.scratch-wiki.info . 2019年5月12日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ jvvg (2013年6月1日). 「「新しいスクラッチユーザー」ステータスの説明」. Discuss Scratch . 2024年1月11日閲覧。
- ^ 「Scratcherとは何か、どうすればなれるのか?」mitscratch.freshdesk.com 2021年11月4日2024年2月10日閲覧。
- ^ 「Scratch Team - Scratch Wiki」. en.scratch-wiki.info . 2023年5月26日閲覧。
- ^ 「生徒と教師のアカウント - Scratch Wiki」. en.scratch-wiki.info . 2023年5月26日閲覧。
- ^ ab Liao, Rita (2020年9月7日). 「中国、MITの子供向けプログラミング言語Scratchを禁止」TechCrunch . 2021年4月27日閲覧。
- ^ 「中国、MITの子供向けプログラミング言語Scratchをブロック」。Developer Tech News。2020年9月8日。 2020年11月19日閲覧。
- ^ 「Scratchソースコード」。Scratch Wiki 。 2024年4月8日閲覧。
- ^ ab “Scratch”。Squeak /Smalltalk 。 2021年3月7日閲覧。
- ^ Lightnin (2013年10月29日). 「HTML5 Scratchプレーヤー(オープンソース化されました!)の完成に協力してくれる人を募集しています」。Discuss Scratch 。2019年5月18日閲覧。
- ^ 「Blockly」。Google Developers。
- ^ Pasternak, Erik (2019年1月17日). 「Scratch 3.0の新しいプログラミングブロックはBlockly上に構築されています」 。 2019年10月2日閲覧。
- ^ speakvisually (2014年5月13日). 「Scratch 2.0 オフライン オープンソースコード!」. Scratchについて議論する。 2024年1月13日閲覧。
- ^ “Scratch Educator”. Meetup.com . 2019年4月21日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ “Scratch Week”. 2019年4月7日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「LLK – プロジェクト – ビルディングブロックプログラミング」。llk.media.mit.edu。2001年4月30日時点のオリジナルよりアーカイブ。2021年12月19日閲覧。
- ^ ab “Scratch 1.0の開発” 。en.scratch-wiki.info。2019年1月3日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「触覚プログラミング:プログラムの理解、構成、共有をサポートする統合操作パラダイム」 。 2021年10月15日閲覧。
- ^ 「Scratch – Imagine, Program, Share」. scrap.mit.edu . 2011年2月22日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「クリエイティブ・コモンズ・ライセンス」。wiki.scratch.mit.edu。2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「ITR: コミュニティテクノロジーセンターでの非公式学習と技術的流暢性を高めるネットワーク化されたメディアリッチプログラミング環境」。国立科学財団。2015年12月30日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ “Scratch Desktop”. scrap.mit.edu . 2019年4月6日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ Biggs, John (2013年5月10日). 「子ども向けプログラミングツール Scratch がブラウザで実行可能に」TechCrunch . 2017年7月9日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ Shane (grokblah)、Scratchチームを代表して (2013年8月29日)。「更新されたScratch 2オフラインエディター(ベータ版)が利用可能になりました!」。Discuss Scratch 。 2019年5月18日閲覧。
- ^ 「Scratch 2.0 Preview」。YouTube。MITScratchTeam。2013年5月1日。2014年1月24日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ “Scratch 3.0”. en.scratch-wiki.info . 2019年5月9日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「Scratch 3.0について知っておくべき3つのこと」。Medium.com。2019年1月31日。2019年5月12日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ “Scratch 3.0”. scrap.mit.edu . 2019年4月6日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「Scratch 3.0 – Scratch Wiki」. en.scratch-wiki.info . 2021年4月27日閲覧。
- ^ ceebee、Scratchチームを代表して(2023年6月28日)。「カラーコントラストがここにあります!」。Scratchについて話し合う。 2023年9月5日閲覧。
- ^ ceebee、Scratchチームを代表して(2023年6月5日)。「近日公開:Scratchのカラーコントラスト!」。Scratchについて議論する。 2023年9月5日閲覧。
- ^ Scratch創設者の一人、ミッチェル・レズニック(2019年3月12日)。「Scratchの成長を支える - ミッチェル・レズニック - Medium」。Medium 。2024年3月5日閲覧。
- ^ 「Scratch Wiki – *.sb」。2015年10月4日。 2015年11月7日閲覧。
- ^ 「Scratchファイルフォーマット(1.4)/オブジェクトテーブル – Scratch Wiki」。en.scratch-wiki.info 。 2022年2月19日閲覧。
- ^ 「Scratchファイルフォーマット(1.4)/オブジェクトテーブル – Scratch Wiki」。en.scratch-wiki.info 。 2022年2月19日閲覧。
- ^ 「Scratch File Format (2.0)」。Scratch Wiki 。 2019年10月2日閲覧。
- ^ “LLK/scratchx”. GitHub . 2022年8月16日.
- ^ 「Scratch ファイル形式」。Scratch Wiki。2019年10 月 2 日閲覧。
- ^ 「Scratch 2.0 オフラインエディター」。MIT 。 2019年9月21日閲覧。
- ^ 「Scratch 3.0について知っておくべき3つのこと」。Scratchチーム。2019年1月31日。 2019年9月21日閲覧。
- ^ 「オフラインエディター(2.0)– Scratch Wiki」。en.scratch-wiki.info 。 2021年4月27日閲覧。
- ^ 「Scratchフォーラム/ベータ版Flashプレーヤー」。Scratchアーカイブフォーラム。 2021年3月7日閲覧。
- ^ O'Donnell, Lindsey (2019年1月14日). 「Mozilla、Firefox 69でAdobe Flashのデフォルトサポートを廃止」 。 2019年9月21日閲覧。
- ^ Adobe Corporate Communications (2019年5月30日). 「Adobe AIRの将来」 . 2019年9月21日閲覧。
- ^ ab McManus, Sean (2013). Scratchプログラミングの簡単な手順。レミントン・スパ: Easy Steps。ISBN 978-1-84078-612-5。
- ^ “Scratch Extension”. MIT. 2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「EV3+Scratch Extension」。Scratch extension GitHub。コードと回路。2016年1月20日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「Firmata を実行している Arduino ボードと通信するための予備的な Scratch 拡張機能」。Scratch拡張機能 GitHub。Damellis。2018年 1 月 16 日時点のオリジナルよりアーカイブ。2019年5 月 18 日閲覧。
- ^ 「Snap! – Build Your Own Blocks」カリフォルニア大学バークレー校。2019年5月16日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ Mönig, Jens. 「Jens on Scratch」. Scratch . 2019年5月18日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ Mönig, Jens (2011年5月31日). 「BYOB 3.1 – Scratchのプロトタイプ継承」. Chirp Blog . 2013年12月6日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
- ^ “Brian Harvey”. Electrical Engineering and Computer Sciences . 2019年4月3日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ “bharvey”. Scratch . 2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ 「CS10: コンピューティングの美しさと喜び」。EECS指導サポート グループのホームページ。2014 年 1 月 23 日時点のオリジナルよりアーカイブ。2019年5 月 18 日閲覧。
- ^ 「Scratchチームとの関係」。
- ^ 「ScratchJrについて」. scrapjr.org . 2019年9月19日閲覧。
- ^ 「よくある質問」。Scratch Addons Docs 。 2024年1月7日閲覧。
- ^ 「TurboWarp が Scratch プロジェクトを 10 ~ 100 倍高速に実行する方法 | TurboWarp ドキュメント」。docs.turbowarp.org。2024年1 月 7 日閲覧。
- ^ 「TurboWarp - Scratchプロジェクトをより速く実行」。turbowarp.org 。2022年4月17日閲覧。
- ^ 「TurboWarp Packager」. packager.turbowarp.org . 2024年1月7日閲覧。
- ^ 「Scratch 3.0 Extensions」。Github。MIT。2019年9月19日閲覧。
- ^ 「Scratch Modification」。Scratch Wiki。MITメディアラボのLifelong Kindergarten Group。2019年5月18日時点のオリジナルよりアーカイブ。2019年5月18日閲覧。
- ^ “Blocks”. Scratch Wiki . 2019年5月18日時点のオリジナルよりアーカイブ。 2019年5月18日閲覧。
外部リンク
- 公式サイト
- カーリーを引っ掻く
- スクラッチラボ
