小学生向け「プログラミング教材」の選び方

新型コロナウイルスの影響で、新学期が遅くなる学校も出てきますが、2020年度からは小学校でのプログラミング教育必修化がスタートします。小学生向けのプログラミング教材は多種多様なので、動作環境や対応機器などを確認する必要はありますが、何よりもお子さんが興味をひいたものを選ぶのが最善でしょう。本記事では、教材を選ぶうえで技術的要件を理解できるように、「言語」「ソフト/ハード」「インターネット」「料金」「動作環境」「ブラウザー」「日本語対応」といった分類について説明します。学校だけなく、自宅で学習させる際にも参考になると思います。

プログラミング教育のために、さまざまな教材が用意されています。小学生向けの教材は、コードをスラスラ書けるようになることよりも、論理的思考を高めることを第一の目標としていることもあり、前もって用意されている命令文のかたまりを目的に沿って順番に並べたり、ブロックを組み立てたりするなど、誰にでも興味が持てるように工夫がなされています。また、できあがったプログラムを画面上で実行させるものに加えて、ロボットのように物理的に動作を実行させる教材もあります。

代表的な教材として「Scratch(スクラッチ)」と「マインクラフト」などが挙げられます。

テキスト言語orビジュアル言語:プログラミング言語

  • テキスト言語:文字や記号の組み合わせ(プログラミング言語そのもの)
  • ビジュアル言語:ブロックの組み合わせ

小学生を対象としたプログラミング教育のための教材の多くは、テキスト言語をそのまま学習するというよりも、ビジュアル言語によって、プログラミング言語に親しめるようにするものが中心となっています。

そもそもプログラミング言語を学ぶ、と一口に言っても、「Ruby」や「Python」「Java」「PHP」など、いろいろな言語があります。多くの教材はこうした「テキスト言語」を直接学ぶことを目的としていません。前もって用意されている命令文のかたまり(ブロック)を組み合わせてプログラミングする「ビジュアル言語」を通じて「論理的思考」ないし「プログラミング」を習得します。

例えばスクラッチも「スクイーク(Squeak)」というプログラミング言語で書かれています。

ソフト/ハード

  • ソフトウェア(アプリ):画面上での動作を実現
  • ハードウェア(タンジブル):物体の動作を実現
  • アンプラグド:電子機器を用いずに論理的思考を学ぶ

プログラムの実行によって実現される結果にしたがって、教材を「ソフト」と「ハード」に分類できます。コンピューターやタブレット、スマートフォンなどの機器のモニタ上の変化が中心の場合、「ソフト(ウェア)」(またはアプリ)と呼び、ロボットやセンサなど、物体の操作や動作を行う場合、「ハード(ウェア)」と呼びます。

ハードは、ある意味では「ブロック」のような玩具や基板、ロボットなど(厳密に言うとアクチュエータ)を動かすためのプログラミングを行うもので、パソコンやタブレットがコントローラーのような関係になっています。見るだけでなく触れることができることから「タンジブル」や「フィジカルプログラミング」と呼ばれます。

「ソフト」の例としては、マインクラフトやスクラッチが挙げられます。マインクラフトはコンピューター内で自分の世界をつくりだしてゆくゲームのようなソフトです。スクラッチは今や代表的なソフトで、命令文のブロックを組み合わせてゲームやアニメ、プレゼンテーション、ストーリーなどを作り出すことができます。

「ハード」の例としては、micro:bit(マイクロビット)が挙げられます。micro:bitはパソコンの専用アプリで作ったプログラムを転送すると,音や文字などを表示してくれます。LEDで光らせる、光や温度センサ、動きセンサ、無線通信などがあり,単純に文字を映し出すようなものから,ラジコンなどのロボットまで作れます。

micro:bitをはじめとしたハード教材は、自分の作ったプログラムによって物が実際に動くという体験ができるため、子どもたちが能動的にプログラミング学習に取り組む機会をつくることができます。

ほか、パズルやカードゲームのように、コンピューターなど電子機器を用いない(=プラグを挿さない)場合には「アンプラグド」という言い方もされます。アンプラグドの例としては『ルビィのぼうけん』や『ローリーとふしぎな国の物語』といった書籍が挙げられます。

インターネット

  • オンライン:インターネットに接続して利用
  • オフライン:電子機器にインストールされたソフトウェアで利用

ソフトウェアのように、電子機器のモニター上で行うものは、さらに細かく分けることができます。インターネットにつなげてブラウザーを使ってプログラミングを行う場合には「オンライン」と呼び、インターネットに接続しないで機器にインストールされているソフトウェアでプログラミングを行う場合は「オフライン」と言います。

例えばスクラッチは、インターネットに接続していれば使えるオンライン版がメインですが、インストールはオンラインで行うものの、その後はオフラインで使えるデスクトップ版も用意されています。

料金

  • 有料:料金が発生する
  • 無料:料金が発生しない

費用の面から分類すると、教材を利用するうえで料金が発生する「有料」のものと、お金のかからない「無料」のものに分かれます。有料の場合、利用開始時点で支払う場合と、月額など、細かく支払いが分かれている場合があります。

スクラッチは無料で提供されていますが、マインクラフトやmicro:bitは有料です。

動作環境

  • Windows:Microsoft社のOS
  • iOS:pple社のOS
  • Linux:無償でユーザーたちがつくりあげたオープンソースのOS
  • Android:Google社のOS

画面上でプログラムを作成する場合には、その動作環境(OS)によって教材を分類することも可能です。コンピューターならば、「Windows」か「Mac」という選択肢です。ほかに「Linux」上で動作する教材もあり、「マインクラフト」のように、Windows、Mac、LinuxいずれのOSでも動作する場合には「マルチプラットフォーム」と言います。スマートフォンやタブレットであれば「iOS」か「Android」ということになります。

スクラッチ(Scratch2.0)の場合、WindowsとMac、そして、一部のLinuxで動作します。マインクラフトの場合、パソコンやタブレット、パソコン以外でも、プレイステーションやXbox、Wii、Nintendo Switch、Kindle Fireといった機種にも対応しています。ゲーム機になじんでいるお子さんには、これらの機種から入るというのも手ではないでしょうか。

ブラウザー

  • Edge:Microsoft社のブラウザー(かつてはInternet Explorer)
  • Chrome:Google社のブラウザー
  • Safari:Apple社のブラウザー
  • Firefox:Mozilla社のオープンソースのブラウザー
  • Opera:Android用ブラウザー

インターネットに接続しブラウザー上で作業を行うのであれば「Edge」や「Chrome」「Safari」といったブラウザー(ほか「Firefox」「Opera」など)に対応しているかどうか、という分類も成立します。もちろんこの場合は、ブラウザーを立ち上げて利用します。

スクラッチの場合、パソコンでは、Edge(バージョン15以降)、Chrome(バージョン63以降)、Safari(バージョン11以降)、Firefox(バージョン57以降)に対応しています。Internet ExplorerやOperaには対応していません。タブレットでは、Chrome(バージョン63以降)とSafari(バージョン11以降)に対応しています。

日本語言語

  • 日本語対応:国内で開発または日本語に対応した製品
  • 日本語非対応:各国で開発された製品

教材は各国で開発されているため、対応言語もさまざまです。国内で知られているものは大半が日本語に対応しています。

日本語版がなく英語表記だけのものでは、「ライトボット(LightBot)」という無料アプリが今も人気です。インストールさえ終われば、特に英語が分からなくてもゲーム感覚で楽しめます。

ところで、プログラミング言語は、すべてが人工的に作られており、多くの人が使っている英語をベースにしています。そのため、プログラミング教育においては、ある程度の英語の理解力も必要とされます。

しかし、小学校におけるプログラミング教育は、ある特定のコンピューター言語を取得することを目的としていないため、いわゆる語学力を必要としません。こうした言語の違いにこだわらずに、日本語で書かれた教材を用いて、プログラミングの根底にある論理的思考力を身につけることを目指します。

もちろん、私たちがふだん使っている言語(=日常言語)は、長い年月をかけてできあがったために、必ずしも整然としておらず、合理性や論理性に欠ける場合もありますし、簡潔にまとめるのも骨が折れます。そもそも構文や文法も複雑です。

他方、プログラミング言語は、数学の式がそうであるように、文字や記号をうまく使って、最小限の内容で的確に目的を達成することが目的であるため、論理的な矛盾が一切なく、できるだけ冗長性をなくしています。当然、構文や文法もシンプルです。

すでに特定のプログラミング言語を使いこなしている人にとっては、やや遠回りに見えるかもしれませんが、小学校におけるプログラミング教育は、あくまでも日本語でプログラムをつくることに主眼があります。これは、日本語による論理性や合理性を学んでいる、と言い換えることができます。

小学生のためのプログラミング教材

以上のように、ここでは「小学校」に限定してプログラミング教材の分類を見てきましたが、教材には、有意義に活用できる対象年代というものが設定されています。年齢で区分される場合もあれば、大雑把に「低学年」と表記される場合もあります。プログラミング教育目的の教材であれば、3歳くらいからスタートして、5歳、7歳(小1)~、10歳~、といった分け方がなされる場合が大半です。もちろん、中高生向け、一般向けなどもありますが、このあたりは教材よりも、そのまま各プログラミング言語を学んでいったほうがいいでしょう。

今のところ、小学校で実際に採用される教材については、1.ソフトウェア、2.ロボットまたは基板が有力です。実際の教材利用のイメージとしては、プログラミング(2020年12月31日まで利用可能)や「プログラミングゼミ」などを小学1、2年生頃に用いると、プログラミングになじみやすくなるでしょう。そしてスクラッチを3~5年生に利用し、算数の図形を描いたり、理科や社会のクイズを作成したりと、実際の使い方を学んでゆきます。そして、いよいよ6年生になるとmicro:bitを使ってセンサなどを物理的動作と関連付けたプログラミングを学べるようになります。

また、一方で「マインクラフト」や「マインドストーム」あたりが自宅での知育に利用するといいのではないでしょうか。これらをゲームだからと言って侮ってはなりません。特にマインクラフトはプログラミングを学ぶというよりも、自分の力で生きてゆく能力を磨くという姿勢が全面に押し出されており、非常に創造性の高い内容になっています。

ここでとりあげたもの以外も含め、いずれの教材もとても工夫が凝らされていますので、とにかくお子さんにはまずは楽しんで使ってもらえるのが一番だと思います。

【プログラミング教育】についてはこちらも合わせてご覧ください。

2020年「プログラミング教育」の必修化で何が変わるのか? - バレッドプレス(VALED PRESS)

プログラミング教育の目的とは? 論理的思考力ってなに? - バレッドプレス(VALED PRESS)

プログラミング教育が抱える3つの課題「ICT環境」「教師」「カリキュラム」 - バレッドプレス(VALED PRESS)

この記事が気に入ったら「フォロー」&「いいね!」をクリック!バレッドプレス(VALED PRESS)の最新情報をお届けします!

© Valed.press