2020年から義務教育としてプログラミングが始まります。
勘違いしがちなのがプログラミングという強化が増えるわけではなく、各教科にプログラミング要素が少し加わったもので学習をしていく形になるようです。
先生たちがプログラマーではないので均一的に内容を教えることは難しいし、プログラマーになるための教育ではなく、プログラミング的思考,論理思考であったり問題解決型の思考であったりを育むことが大々的な目的なのでそれで良いのかと思います。
ただ現役のエンジニアの視点(弊社は全員がエンジニアで結成された会社です)で考えると、写経的でもやっぱり自分で何かを作ってみた方が面白いし、課題を解決したり悩んでいたことが解決できることは面白いです。何回も失敗を繰り返してやっと成功したプログラムが出来た時の達成感など今の子供達に経験していただきたいと考えています。
そこで今回はビジュアル的にプログラムを組めるScratch(スクラッチ)という言語をご紹介し、実際に起動するところから、画面の説明までを行います。
ビジュアルプログラミング言語 Scratch(スクラッチ)とは
Scratchとはアメリカのマサチューセッツ工科大学(MIT)のライフロング・キンダーガーテンというグループが作ったビジュアル的にプログラミングができる初学者向けのプログラミング言語のことです。
無料で利用することができ、弊社で販売している、ベリーボックス でもデフォルトで使用できます。
普通プログラミング言語は以下のように、初心者にはとっつきにくいコードを書かなければなりません
function FizzBuzz (count) {
var i;
for (i = 1; i <= count; i++) {
if (i % 3 == 0 && i % 5 == 0) {
alert('FizzBuzz');
} else if (i % 3 == 0) {
alert('Fizz');
} else if (i % 5 == 0) {
alert('Buzz');
} else {
alert(i);
}
}
}
しかし、スクラッチなら以下のように簡単に分かりやすくかけます。
これなら掛け算や割り算がわかるようになった子供なら理解できるかと思います。

このように視覚的にプログラムをかけて論理的思考を養うのに適した環境がScratch(スクラッチ)になります。
海外の教育現場では積極採用
文部科学の調査資料 諸外国におけるプログラミング教育に関する調査研究」報告書(平成26年度)によると、以下のように各国々がスクラッチを用いたプログラミング教育を行なっています。
イギリス | 初等・中東Scratch(スクラッチ)を用いた教育方針 |
---|---|
エストニア | “ProgeTiiger” というプログラミング教育推進プログラムではプログラミングの授業が選択できるようになり、その中でScratch(スクラッチ)を用いての学習が可能になっています。 |
ポルトガル | 「EduScratch」という取り組みをは2010 年 に開始し、「Scratch」を用いたプログラミング教育として、7-8 年生に導入した |
韓国 | 2015 年 2 月 中学校における教科「情報」、高等学校における教科「情報」に おいてプログラミング教育が実施されていて、言語としてScratch(スクラッチ)が導入されている |
米国(カリフォルニア) | 未導入 |
インド | 6-12 年生対象の ICT カリキュラム「Curricula for ICT in Education」では、LOGO、TuttleGraphics、 Scratchを導入 |
台湾 | 中学校 2-3 年生に Scratch を使ったプログラミングに関する記述 |
中国(上海) | 上海の小・中学校におけるプログラミング教育の実施は確認できない。 |
一部の情報ですが、海外では日本よりもかなり前からプログラミング教育は行われていて、Scratch言語を用いていることがわかります。
海外の真似をするということではありませんが、確かにスクラッチ言語は取り組みやすさや結果がビジュアル的にすぐに反映されるので楽しさがあるかと思います。
楽しいと感じれば子供達は創造力を発揮させて勝手に学び始め流と考えられます。理想的な状態です。
スクラッチの始め方(raspbian)
弊社は教育・研究用PCベリーボックスを販売しているのでベリーボックス(raspbian)でのスクラッチ起動方法を最初に説明しますが、
ベリーボックスではraspbianというOSを使用しているので様々なプログラミング環境がデフォルトで入っています。
その中の一つにScratch(スクラッチ)もあるので初期セットアップは必要ありません。起動のみで使用できます。
スクラッチ起動方法は簡単です。
以下のように左上のラズベリーのロゴをクリック(左)してから、プログラミング→Skratch2をクリックするとScrach(スクラッチ)が起動できます。


スクラッチの画面説明
スクラッチを開いてみると、色々な部品があり、何が何だかわからなくなると思うので各部品を大きく三つに分けて説明します。

Scratchの画面は大きく三つに分かれます。
それぞれステージエリア、スプライトリスト、スクリプトエリアと言います。
ステージエリアについて
ステージエリアは作ったプログラムをプレビュー(動かして実際に見られる)画面です。
この画面を通してイメージ通りに動いているかバグなどがないかをチェックします。
スプライトリストについて
スプライトとはキャラクタや背景などの部品のことで、
スプライトリストとは作ったプログラム(アプリ)に使用する素材を格納する場所です。
この画面を通してキャラクタを追加したり、削除したりなどの設定が可能です。
スクリプトエリアとは
スクリプトエリアではプログラム本体を書く場所です。
キャラクタを動かしたり、音を出したり演算したりなどのスクリプトを記載することができます。
一つ一つのプログラミングの単位をブロックといい、Scratchではこれらのブロックの組み合わせでプログラムを組みことができます。
まとめ
今回はプログラミング初学者向け言語としてScratch(スクラッチ)についてご紹介しました。
まとめるとScratch(スクラッチ)には以下のメリットがあります。
- ビジュアル的にプログラミングを学べる言語
- 初学者に適している
- 世界各国の初等教育・中等教育で使用されている
- 無料で手軽
プログラミングを始める人が出来るだけ挫折せずに嫌な気持ちにならずに学習できる言語としては最適だと考えています。
弊社ではベリーボックス やラズベリーパイ(raspberry pi)を軸に教育支援やもっと世の中を便利にするシステムを作っていきます。
そのうちの一環としてScratch(スクラッチ)を紹介できたらと思います。
この次の記事は、スクラッチを実際に使って簡単なプログラミングを行なっていきます。