プログラミング教育に使われる「Scratch」とは何か?

2020年からプログラミング教育が必修化されます。

必修化に対応するために教材やスクールについての情報収集を開始したという方は多いのではないでしょうか?

その中で「Scratch」という言葉を見たり、耳にすることが増えているはずです。

この記事ではそのScratch(スクラッチ)について下記の3点を解説します。

  • スクラッチとは何か
  • スクラッチの特徴
  • スクラッチは何歳から使えて、どんなことができるか

スクラッチはプログラミング教育のデファクトスタンダードとなっているツールです。

学校での導入を検討している方、子どもとプログラミングを勉強したいと思っている方はぜひ一度試してみてください。

導入が簡単なので、この記事を読んでからスクラッチを使い始めるまで30分もかかりません。

Scratch(スクラッチ)とは何か

スクラッチとはプログラミング言語です。同時にプログラミングを学ぶためのアプリケーションでもあります。

MIT(マサチューセッツ工科大学) メディアラボのライフロング・キンダーガーテン・グループによって開発されました。

MITは多数のノーベル賞受賞者を排出しているアメリカでも最高クラスの名門大学です。

信頼性の高い開発元なので安心して使うことができるツールです。

スクラッチは世界で5,000万人のユーザーがいますが、なぜそこまで広く使われているのでしょうか?

下記のような特徴を持っているからです。

  • 直感的に使えるビジュアルプログラミング言語
  • 簡単に始められる
  • プログラミング言語の基本をしっかり学べる
  • 世界中で使われている
  • 無料で使える

一つずつ説明していきます。

直感的に使えるビジュアルプログラミング言語

ビジュアルプログラミング言語であることがスクラッチの最大の特徴です。

一般的なプログラミング言語は記号や英単語を書いてコンピュータに指示を出しますが、スクラッチはカラフルな「ブロック」を組み合わせることで指示を出します。

こんなイメージです。

視覚的に(ビジュアルで)プログラミングをするので、「ビジュアルプログラミング言語」というわけです。

「ブロック」は命令を与えるための部品です。ほんの一例ですが、下記のようなブロックが用意されています。

  • 10歩動かす
  • 回転する
  • 音を鳴らす
  • 色を変える

それぞれのブロックの意味を理解する必要はありますが、それさえ理解できれば、レゴブロックをつむように、直感的にプログラミングをすることができます。

ブロックの種類は非常に多いですが、役割によって色分けされていますので、子どもでも感覚的に理解できるようになっています。

どのブロックとどのブロックがつなげられるかもブロックの形を見ればある程度わかるようになっています。

マウス操作でプログラムが組めることも大きなメリットです。キーボード操作に比べ、簡単に使うことができます

子どもにとってのプログラミング学習ははじめる時が一番大変です。

最初の段階で難しいという先入観を持ってしまうと続かないし、やりたがらないからです。

Scratchであれば、簡単さ、楽しさを優先に設計されているので、そうなってしまう可能性を下げられます。

簡単にはじめられる

一般的なプログラミング言語は使える状態にするまでの準備(環境構築と言います)が大変なものが多いのですが、スクラッチの準備は非常に簡単です。

インターネットにつながっていれば下記URLにアクセスするだけです。
>>  https://scratch.mit.edu/projects/editor/

それだけで使いはじめることができます。

アプリをインストールすればインターネットにつながっていなくても使うことができます。

アプリは下記URLからダウンロードできます。
>> https://scratch.mit.edu/download

インストールも簡単です。

ダウンロードとインストール方法は別の記事で詳しく解説しています。

>>Scratchインストール方法への記事

アプリは下記のOSに対応していますので、家庭や学校のほとんどの機器で使うことができます。

  • Windows
  • macOS
  • ChromeOS
  • Android

プログラミングの基本をしっかり学べる

一般的なプログラミング言語に比べるとレベルが低いようにみえるかもしれませんが、下記のようなプログラミングの基礎はしっかり学べるように作られています。

  • ループ
  • 条件分岐
  • 変数

スクラッチで学んだ知識は一般的なプログラミング言語を学習するときにも十分に活用できるものです。

また、試行錯誤を繰り返すハードルが低いという点も重要です。

プログラミングでは思い通りに動かない原因を考え、コードを修正する作業を繰り返すことが重要になります。

スクラッチは2つの点で試行錯誤をしやすい作りになっています。

  • プログラムの実行結果を直感的に把握できる
  • 作ったプログラムと結果が1画面で見られる

結果を直感的に把握できる

スクラッチでは画像や音の素材が用意されているので、作ったプログラムを実行すると「画像が動く」、「音が鳴る」といったわかりやすい結果で表示されます。

プログラムが間違っていると画像が想定とは違う方向に動いたりするので、間違いにも気付きやすく、どこが間違えたのかも考えやすい仕組みになっています。

作ったプログラムと結果が1画面で見られる

スクラッチをはじめに知った方にとっては当たり前のことだと思うかもしれませんが、通常はプログラムとその実行結果を同じ画面で見られないこともよくあります。

スクラッチは1つ画面の中で両方を確認できるので、結果を確認して、そのまますぐにプログラムを改善したり、修正する作業に移ることができます。

世界中にユーザーがいる

スクラッチは40以上の言語に対応しており、150以上の国と地域で利用されています。

ユーザーが多いことで2つのメリットが生まれています。

  • 使い方やノウハウの情報が蓄積されやすい
  • コミュニティ活動が活発

それぞれ説明します。

情報が蓄積されやすい

使い方や操作でわからないことがあると、ほとんどの場合まずはWebで検索すると思います。

その時にユーザが多いと情報が豊富に出てきます。

なぜなら、多くの先人たちが失敗や試行錯誤を繰り返し、その情報を提供してくれているからです。

コミュニティ活動が活発

スクラッチでは制作した作品やプログラムをサイト上で公開する仕組みが用意されています。

自分の作品を他のユーザーに遊んでもらえたり、コメントをもらえたりすると、プログラミング学習を継続するモチベーションになります。

無料で使える

本質的なことではありませんが、重要な特徴です。

利用するのに料金は一切かかりません。

学校などで多くの生徒が使用する場合にも躊躇なく使うことができます。

何歳から使えるか?

スクラッチは何歳くらいから始めるのがいいのでしょうか?

公式サイトの情報だと8歳から16歳が使うことを想定して作られていると書かれています。

サイトの表示言語も日本語が選べるのは当然のこと、漢字表記だけではなくひらがな表記も用意されているため、まだ漢字を習っていない子どもでも使えます。

8歳未満の子どもの場合はまずはScratchJrを使ってみてください。

ScratchJrは、Scratchをよりシンプルにしたもので。5歳から7歳の子供向けに作られています。

ScratchJrが十分に使えるということであればスクラッチに変更するという流れがおすすめです。

スクラッチジュニアはタブレット向けのアプリとして開発されたので、ブラウザ版はありません。アプリをダウンロードして使います。

対応しているOSは下記の4つです。

  • iOS
  • Android
  • kindleOS
  • chromeOS

残念ながらWindowsPC、Macには対応していません。

ScratchJrの詳しい使い方は別記事で解説していますのでぜひそちらも読んでみてください。
>>

スクラッチでどんなことができるか

プログラミングの基礎を学ぶだけではなく、下記のようなものを作ることができます。

  • アニメーション
  • ゲーム
  • 物語
  • 機械学習モデル

事例をいくつか見てみましょう。

ゲームの事例

アートの事例

事例を見てもらえるとわかりますが、工夫次第で高度なゲームなどを作ることもできます。

また、画像や音を組み合わせてアニメーションやアートを作ることもできます。

紹介したのはほんの一例で、公式サイトの公開作品閲覧ページにアクセスすれば多くの作品を見ることもできます。
>>  https://scratch.mit.edu/explore/projects/all

ゼロから作るだけではなく、公開されているプログラムを「リミックス」することもできます。

リミックスとはある作品をベースに新たな作品を作ることです。

他人の作ったプログラムを見ること、それを改変することは良い勉強になります。

リミックスされたものをさらにリミックスすることもでき、国や言語を超えて、子どもたちが1つの作品を練り上げていくこともできます。

スクラッチのメリット、デメリット

ここまで紹介した特徴全てがメリットです。

良いことづくめのように見えますが、1つだけデメリットがあります。

スクラッチを使って体系的にプログラミングを学ぶためのガイドや指針のようなものがないことです。

できることが多すぎるゆえにガイドがないと何をしていいかわからない子どもも多いと思います。

教える側がある程度道を示す必要があるが、親や教師もプログラミングをどう教えるのが良いかわからない人のほうが多い

そうなると教える側にとっても、教わる側にとっても指針となるようなものが必要です。

できることが多い部分、なんとなく触っているだけでは学習効率は良くありません。

一応チュートリアルはあるが、プログラミング教育のための内容にはなっていない。どちらかというとスクラッチの使い方を覚えるための内容になっています。

スクラッチに触れておいて損はない

Scratchは小学校のプログラミングの授業で使う可能性が高いです。

費用もかからないので家で触れておいても損はありません。

教えるのが難しそうという場合は無料のプログラミング教室を親子で受けに行くというのも良いと思います。

下記の教室は無料体験会を実施しています。

【箇条書き】

まずは親子で楽しんでみて、おもしろいと思ったら自ら興味を持ってどんどん進められると思います。