Scratchばかりがプログラミング教育で使われているこれだけの理由

プログラミング教育で一番使われていると言っても過言ではないツール「Scratch(スクラッチ)」について取り上げます。Scratchはビジュアルプログラミング言語(文字を入力するタイピング型言語ではなく、ブロックを組み合わせていくことでプログラミングをする)としての特徴が挙げられがちですが、その裏側にある開発・設計思想を理解することで、Scratchの本質により近づけるでしょう。

[この記事で紹介すること]

  • プログラミング教育で一番使われている「Scratch」
  • その理由は子どもが楽しめるように設計されているから
  • 子どもたちは、モノをつくっているときに多くのことを学んでいる
  • 子どもたちが創造的な学習者になるために必要な4つの要素、Project、Passion、Play、Peers
  • Creative Learning の考え方

これまでの【プログラミング教育のホントのところ】はこちらから。

プログラミング教育で一番使われている「Scratch」

Scratchは、アメリカのマサチューセッツ工科大学(MIT)メディアラボのライフロング・キンダーガーテン・グループ(誰でも創造的な学習体験ができる新しい技術と活動を開発しているグループ)が開発した、教育用のプログラミングツール。現行のバージョンは3.0で、Webブラウザ上で動作するため、さまざまなデバイスで動かせます(2019年5月時点)。

【参考】https://scratch.mit.edu

Scratch - Imagine, Program, Share

Scratch3.0はiPadでも動作する

子どもを対象としたプログラミング・ワークショップでよく使われているので、体験したことがある人も多いでしょう。画面左側にあるブロック群をドラッグ&ドロップして、中央にあるコーディングエリアにもってきて、ブロック同士をくっつけることでプログラミングします。ブロックをクリックしたり緑の旗をクリックすると、つくったプログラムがすぐに右側の実行画面(ネコがいるエリア)に反映されるのも特徴です。

またScratchは、コミュニティの有志によって翻訳されており、現在では50を超える言語に対応しています(日本語は漢字だけでなくひらがな表記にも対応)。これにより、たとえばアメリカやイギリスといった英語圏のユーザーがつくったプログラムも、日本のユーザーが見たときには日本語になっている、といったことが可能になっているのです。

ねこ歩きプログラムをにほんご(ひらがな)・中国語・英語モードで表示した場合

ScratchのWebサイト上にはオンライン・コミュニティ機能があり、自分がつくった作品をすぐに世界中に向けて公開できます。公開した作品には、コメントがつけられたりリアクション(いいね)されて、日々活発な交流が生まれています。また、公開されている作品のプログラムはどのユーザーでも見ることができ、簡単にリミックス(その作品を元に自分なりのアレンジを加えること)できます。これはプログラミング・コミュニティ界隈で言う「オープンソース」の理念と似ています。

執筆時点(2019年4月中旬)で、3900万人のユーザーが登録しており、そのうち日本のユーザー数は39万人程度です(全体の1.09%)。ただし、Scratchはユーザー登録をせずとも使えるので、実際のユーザー数はこの何倍にものぼるでしょう。

Scratchは子どもが楽しめる”家”のように設計されている「低い床、高い天井、広い壁」

Scratchユーザーの多くは、はじめてプログラミングを体験する子どもたちです。そのため、ファーストステップはとにかく簡単であることが求められます。Scratchはブロックをクリックするとすぐに右側の画面に反映されたり、いくつかのブロックを組み合わせることで簡単にアニメーションをつくったり簡単なゲームをつくれるので、とても入門しやすくなっています(=低い床)。

また、Scratchを極めていくと、他のタイピング言語でつくられたような作品に劣らない大規模で複雑なプログラムもつくれます。これは、ScratchのWebサイトを開いて「注目のプロジェクト」に選ばれている作品を見ればわかるでしょう(=高い天井)。

Scratchでつくれるのはゲームだけではありません。アニメーションやアート、お役立ちツールなどさまざまな作品がつくれます(=広い壁)。最近では、JavaScriptの外部ライブラリを使って、機械学習をScratchで行える ML2Scratch なども公開されています。

参考:ML2Scratch

champierre/ml2scratch

創造的な学び

Scratchを開発したミッチェル・レズニック教授は、Creative Learning(創造的な学び)という教育理念を提唱しています。簡単に言えば、子どもたちは「モノをつくっているときに多くのことを学んでいる」という考えです。

創造的な学びをするために必要なスパイラルを紹介します。まず、なにをつくるか想像(Imagine)し、それを実際につくります(Create)。そして、自分で遊んでいくと(Play)友人や家族に共有(Share)したくなります。するとさまざまなフィードバックを得て振り返るReflect)ことができるので、どんな改良をするかをまた想像します。

このようなスパイラルをCreative Learning Spiralと言い、Scratchは先に紹介したオンラインコミュニティ機能によって、自然のこのスパイラルに乗れるように設計されています。

Creative Learning Spiral画像参照:https://web.media.mit.edu/~mres/papers/kindergarten-learning-approach.pdf

また、レズニック教授は子どもたちが創造的な学習者になるために必要な要素として、Project(プロジェクト)、Passion(情熱)、Play(遊び)、Peers(仲間)の4つのPを上げています。自らのプロジェクトに対して情熱を持って取り組み、遊ぶように仕事をし、分かち合う仲間がいる状態は、創造的な学びが起こるために必要不可欠です。

これは、子どもたちだけに当てはまるわけではなく、大人にも大切な考え方ではないでしょうか。私は高校生のときに CoderDojo Kashiwa を立ち上げて運営をしていますが、ここまで熱中しているのは4つのPがすべて満たされているからです。また、自分の会社を立ち上げて経営をしているときにも、4つのPの要素は欠かせません。僕は仕事と遊びが混ざっているような感覚によくなります。だからこそハードワークを厭わずに、プロジェクトに熱中できるのです。

Creative Learning の考え方

Scratchは Creative Learning の考え方にもとづいて開発されています。私たちは表面的な特徴ばかり捉えがちですが、その裏側にある設計思想や教育思想について理解することで、Scratchのよさをもっと引き出せるのではないでしょうか。

また、Creative Learning Spiral や 4つのP の考え方は、なにもプログラミングだけに当てはまるわけではありません。クリエイティブな行為全般に当てはまる、1つの行動指針として捉えてみるといいかもしれません。

2020年から始まる小学校でのプログラミング教育では、多くの場面でScratchが使われることになるでしょう。授業を考える際に創造的学び的な要素を取り入れたり、活動全体に4つのPを当てはめてみるなどといった工夫が少しでも生まれればとてもいい方向に向かいます。反対に、Scratchをただのパズルゲームのように扱ったり、創造的な余地を残さないような授業では、本当の意味で Scratch を理解して使っているとは言えないでしょう

今回ご紹介した内容をもっと詳しく知りたい方は、レズニック教授の著書『Lifelong Kindergarten』を一読されることをオススメします。原著は英語ですが、日本語翻訳版も出版されています。

Lifelong Kindergarten: Cultivating Creativity through Projects, Passion, Peers, and Play – MIT Media Lab

参考:ミッチェル・レズニック著 日経BP社『ライフロング・キンダーガーテン 創造的思考力を育む4つの原則』
図: https://web.media.mit.edu/~mres/papers/kindergarten-learning-approach.pdf

これまでの【プログラミング教育のホントのところ】はこちらから。

プログラミング教育のホントのところ - バレッド(VALED PRESS)

© Valed.press