小学校でのプログラミング教育の必修化に思う事

雑記

文部科学省が2020年から小学校でのプログラミング教育の必修化を検討しています。エンジニアの数が圧倒的に足りなくなり生産力が低下する事を予測されているからだそうです。

今後、ITは経済の中心になっていくのは明白で、ITが絡まない職業は皆無になる勢いです。益々エンジニアの需要増えますし、エンジニア不足としては国としても機会損失と言えるのでしょう。

さてさて、プログラミング教育となると小学校の学科としては職業に直接的に結びつく学科となる訳で、他の学科と比べるとかなり異質です。

「おか~さ~ん、これおしえて~!」

「パパ!この部分がよくわからなくて・・・」

等となった時の親の威厳を保つために、2020年に小学生の親となっている人たちは今から勉強しておいた方が良いかもしれません。

「あ、いや・・・あははは」なんて事にならない為に!

プログラミングとは

プログラミングと言うのは基本的に、「実行させたい処理を手順化し、その手順をコンピュータに実行させる」です。大別する2つの過程が存在する事になります(実際はもっと複雑ですが、極論この2つの過程で成り立つと思います)。

  1. 処理を手順化する
  2. 手順をコンピュータにインプットする

処理を手順化するとは、例えば「変数Aと変数Bの中身を入れ替える」処理をさせるために、変数Aの中身を変数Cに退避させ、変数Bの中身をAに移してから、変数Cの中身を変数Bに移す・・・と言った手順を考える訳です。

次に手順をコンピュータにインプットする為のプログラム言語として記述をしていきます。

C=A

A=B

B=C

かなり乱暴な記述ですが、先ほどの変数Aと変数Bの中身を入れ替えるをプログラミング言語で表記するとこうなります。一般的にプログラミングとは2番目の過程を想像されるのではないでしょうか?

しかしプログラミングに接した事がある人は、2番目の過程より1番目の過程の方がプログラミングとしての認識するのでは無いでしょうか?

処理を手順化する事がプログラミングの第一歩と言えます。

「プログラミング教育」

ここで注目すべきは「コンピューターサイエンス」であったり「情報処理工学」ではなく「プログラミング教育」と謳っている点です。コンピューターが動く仕組み等ではなく、プログラミングに焦点を当てている事が明確になっています。

先ほども書いた通り、プログラミングとは究極的に手順化です。処理を手順化していく事です。最短の手順で手順化していく事になりますが、手順の塊を一つの手続きとしてまとめて置いたりする事もできたりするので、実際の書き方は千差万別となります。

この正解のない問題を子供たちにどうやって教えていくのか?非常に注目です。

講師はどうするのか?

プログラミングの講師は実際に誰がやるのか?と言う疑問です。

プログラミングとは専門性の高い分野です。今の教師に任せるのは難しいと思います。となると専門の講師が必要になってきます。講師の確保が問題になってきます。民間から呼び寄せると言うのもあるのかもしれません。

レビューを中心に考えを発表させる

基本的な事を学んだあとは、自主的に考えてプログラミングをさせ、なぜその様に作ったかを発表させる。なぜ、こういう風に作ったのか、自主性と創造性を育むような教育をお願いしたい。プログラミングは様々なパターンがあり、ある程度お作法的な型はありますが、自分なりに考えたて作っていきながらしっかりと考えを発表出来る事が大切だと思います。また、人の考えを聞き理解すると言うのは、人のコードを見て理解することにも繋がります。コードを読む力はプログラミングにおいて非常に重要なスキルです。

変な型にはめた教育をして、凝り固まったエンジニアだらけになるのではなく、自分の考え方をしっかりと表現できる独創的なエンジニアを育てるカリキュラムをお願いしたい。

そうなると、講師も現場もある程度経験した方が必要になるのではないでしょうか?

プログラム=エンジニアではない教育を

冒頭にも書きましたが、ITが絡まない職業は今後皆無に近い状態になるでしょう。農業は既にIT化が進んでいます。今後は自動運転によりタクシーやバスなども更に高度なIT化が進みます。きっと家事も更にIT化が進むはず。ITが身近になる、それはプログラミングがもっと身近になる事も意味しています。

自分たちの仕事をプログラムを自分たちで作る事で更に生産性を上げていく。プログラミングがエンジニアのものだけでなく、日曜大工の様な生活に溶け込み更に暮らしを便利にしていく。プログラミング教育を受けた子供たちが、大人になって社会に出た時に、この様な考え方で活躍できるような教育をお願いしたいです。

コメント