プログラミング教育のおススメ準備 ~楽しみながらプログラムを学ぶ~

プログラミング教育のおススメ準備法

2020年からのプログラミング教育必修化に備えて

2020年からプログラミング教育が必修化します。
その準備を不安視しているのは、小学生のお子さんをお持ちのお父さん・お母さんのみならず、プログラミングに触れてこなかった先生方にも及ぶのではないのでしょうか。
今回は教員の方の学びなおし含め、プログラミング教育のおすすめ準備法をご紹介いたします。

プログラミング教育の概要

プログラミング教育必修化の目的

そもそも文部科学省はプログラミング教育に対してどのような要請をしているのでしょうか。
プログラミング教育の詳しい内容に入る前に、まずは文部科学省がプログラミング教育に対してどのような効果とカリキュラムを期待しているかを見ていきましょう。

プログラミング教育とは、子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育むことであり、コーディングを覚えることが目的ではない。

――小学校段階におけるプログラミング教育の在り方について(議論の取りまとめ):文部科学省

また、『小学校プログラミング教育の手引き(第二版)』ではプログラミング教育の目的を以下のようにまとめています(『小学校プログラミング教育の手引き(第二版)』、11頁)。

プログラミング教育の目的

  1. 「プログラミング的思考」を育むこと
  2. プログラムの働きやよさ、情報社会がコンピュータ等の情報技術によって支えられていることなどに気付くことができるようにするとともに、コンピュータ等を上手に活用して身近な問題を解決したり、よりよい社会を築いたりしようとする態度を育むこと
  3. 各教科等の内容を指導する中で実施する場合には、各教科等での学びをより確実なものとすること

このように、プログラミング教育は「プログラミング的思考」を養うことを第一の目的とし、周囲のコンピュータの利用を促進させるきっかけとなることが期待されています。

実施内容は各学校の先生にゆだねられている

プログラミング教育は算数や理科などのように、学習指導要領があるわけではありません
そのため、プログラミング教育で何をするのかは各学校の先生に大きく委ねられていると言えます。

プログラミング教育の準備はできないのか?

プログラミング教育の指針が各学校の先生の裁量になってしまうため、プログラミング教育の準備は難しそうに思えますが、「プログラミングとは何か?」を抑えておけば、どのようなカリキュラムになっても案ずることはありません。
これからは「プログラミングとは何か?」を考えながら、プログラミング教育の準備を考えていきます。

プログラミングとは何か?

そもそもプログラミングとは何か?

プログラミングを辞書でひくとどのような解説がでてくるでしょうか。例えばASCII.jpデジタル用語辞典では以下のように紹介されています。

コンピューターに処理を行わせるためのプログラムを、プログラミング言語を用いて作成すること。または、プログラムの仕様の設計からテストまでの一連の工程のこと。
――ASCII.jpデジタル用語辞典

小さな差異はあれど、どの解説文でもプログラミングとは「コンピュータに処理させるプログラムを書くこと」としています。
ではそのプログラムとは何かを見ていくと以下のようになります。

コンピューターが解釈・動作できるデータ。コンピューターに対する命令をプログラムとして記述すると、コンピューターはプログラムに指示された手順で計算、入出力などの処理を実行していく。
――ASCII.jpデジタル用語辞典

簡単にまとめると、プログラムとはコンピュータにしてほしい動作を、その処理の手順にそって書いた命令だといえます。

プログラミング的思考とは何か?

それではプログラミング教育で対象としている「プログラミング的思考」とは何なのでしょうか?『小学校プログラミング教育の手引き(第二版)』は以下のように述べています。

「プログラミング的思考」は、「自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力」
――『小学校プログラミング教育の手引き(第二版)』、13頁。

このように、プログラミング教育では実際にプログラミング言語を使ってプログラミングをしていくというわけではなく、コンピュータが理解できる処理の手順を命令できるようになろうということだと言い換えられます。。

おススメのプログラミング教育への準備

前置きが長くなってしまいましたが、プログラミング教育のおすすめの勉強法をご紹介していきます。

小学生までであれば、論理パズルを解こう

プログラミング教育の準備をする場合は、難しいことからはじめずに、まずは「論理的思考」を培うことからはじめたほうがよいでしょう。
子供というのは中学校くらいになるまでは、論理的な思考がなかなかできなかったりします。
前述の通り、プログラムとはコンピュータが理解できるような論理的な言葉で書かれた命令のことです。
命令が論理的でなければ、コンピュータはすぐに誤作動を起こしてしまいます。
では論理的な思考をどのようにしたら養えるのでしょうか。
小学校くらいの子供と楽しめて、論理的思考を身に着けるのにお薦めなのが、「ピクロス」などの論理パズルです。

スクラッチで実際にプログラミングに触れてみる

スクラッチの画面

スクラッチの画面

実際に触れてプログラミングの世界を楽しめるのが「スクラッチ」です。
プログラミングを書くことによって、ねこを動かすことができます。
「○○になるまで左へ進む」や「○○の場合は止まる」など、プログラミングの世界でよく使う命令を出すこともできるので、奥が深く、親子そろって楽しむことができます。

マインクラフトで街をつくってみる

ゲームの「マインクラフト」も「プログラミングとは何か?」を体験するにはちょうど良いかもしれません。
世間には「マインクラフトでプログラミングを学ぼう」という本があり、実際にコードを書くことをすすめるものもあるのですが、ここでご紹介するのはもっとシンプルな方法です。
それは「マインクラフト」の醍醐味でもある街づくりをすることです。
とくにギミックを使った設備を作る際には、「スイッチを押したら○○が動く。○○が動くから床が動く……」などのアイデアはプログラミングのなかでも有効な考え方です。

中古品が手に入れば「リトルビッグプラネット」もお薦め

マインクラフトよりももっとプログラミングに近いことをしたければ、「リトルビッグプラネット」シリーズがおススメです。
このゲームでは実際にゲームのステージを作ることができますが、トラップなどのギミックを作る過程はプログラミングそのものです。
このゲームの猛者はまったく本編と関係ないシューティングゲームやパズルゲームが作れてしまうほど、設計次第でなんでもありなゲームです。
アイデア次第で何でもできるというプログラミングの醍醐味を一番味わえるゲームかもしれませんね。

プログラミング教育の準備の注意事項

実際にきれいな文章を書ける人が必ずしも国語の点数が良く無いように、プログラミングができても実際のプログラミング教育で出題されるテストでいい点数がとれるとは限りません。
プログラマーの方でもプログラムは作れても、IPAが提供している「基本情報技術者試験」で出題されるようなアルゴリズムについてはあまり知らないという方も少なからずいます。
プログラミング教育が始まるからと言ってプログラミング教室に通わせるのはやや早計かもしれません。
まずは今回ご紹介したプログラミングの準備法を試してみて、子供が「プログラミングって面白いな」と思った場合のみ、プログラミング教室に見学されることをおすすめいたします。