プログラミング教育とは?必修化の理由と学習による狙いのまとめ!

プログラミング教育って何?理由、目的は?

 

  • プログラミング教育とは…いったい何?
  • プログラミング教育ってなぜ必要なの?狙いは?

 

2020年からプログラミング教育が必修化されます。ですが、そもそもプログラミング教育って何?なぜプログラミング教育が必修化なの?

みんながみんな、プログラミングをするようなエンジニアになるとは思えませんし、将来の仕事によってはパソコンすら一切使わないかもしれません。

それでもプログラミングが必修化される理由とは?学ぶことによってどんなことが身につくのか?その狙いは?調べた内容をまとめました。

プログラミング教育とは?

まず最初に、プログラミング教育とはいったい何者なのでしょうか?簡単に説明しますと…

ポイント
プログラミング教育とは、プログラミング的思考力・論理思考力を身につけるための教育

私は現役のエンジニアなのですがパパ友・ママ友から、

おたくはいいですね~。親が現役のエンジニアさんだなんて…プログラミング教育が始まっても子どもに教えてあげられるじゃないですか~。英才教育ですねぇ!

 

と言われることがあります。

誤解されている方も多いのですが、

  • プログラミング教育は実際にプログラマーを育成することを目的とした教育ではない
  • 本場エンジニアのようにプログラミングコーディングを行うわけではないよう

ということです。

プログラミング教育の目的、狙いは?

文科省には、プログラミング的思考については下記のようにあります。

自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力。

引用:小学校プログラミング教育の手引 | 文部科学省

よくわからないと思いますので、ITの現場での一例をあげてみます。

たとえば、ITの現場では、プログラミング・ソフトウェアの開発は下記のような流れで行っていきます。

STEP.1
要件定義
STEP.2
設計
STEP.3
プログラミング
STEP.4
テスト
STEP.5
保守

物を作る作業の前には入念な計画があります。いきあたりばったりで作って出来上がってから、

全然違うものができてしまった…

となってしまっては出戻りが発生して損失が大きいです。

そのようなことにならないように『自分が意図する完成・ゴールに向けて、どのような作業が必要で、どのように組み合わせれば、実現することができるのか』という考え方が必要になります。

これはプログラミング、ソフトウェアの開発に限った話ではありませんよね。どんな仕事…仕事に限らず勉強、たとえば受験でも同じことが言えます。

プログラミング教育必修化の理由

そもそもなぜ、プログラミング教育が必修化となったのか?その背景事情には下記があります。

第4次産業革命

第4次産業革命とは、

第四次産業革命 は、18世紀の最初の産業革命以降の4番目の主要な産業時代を指す。それは物理、デジタル、生物圏の間の境界を曖昧にする技術の融合によって特徴づけられる。

引用:第四次産業革命 | wikipedia

人工知能の発達やモノがインターネットにつながるIoT、新興技術の革新によって、近い将来の労働形態は変わっていくことが考えられます。

たとえば、AIの発達で人間の仕事が奪われてしまうということはよく言われています。IoTの発展により、車が自動運転になってタクシードライバーやバス・電車の運転手、は仕事を失うかもしれません。

自動運転なんて結局のところ夢物語でしょ~

そう思っていませんか?IT最先端の現場では、V2Xという言葉があります。簡単に説明すると、乗り物がインターネットにつながる、というもの。自動車の自動運転については自動車メーカーが5Gなど多額の投資を行っており、実現する可能性は高いと考えています。

そういった将来展望がある中で、学校の教育が今のままで良いのでしょうか?人の仕事がAI・ロボットに奪われるのであれば、AI・ロボットを使う側、作る側になる必要があります。

IT人材の不足

IT業界は慢性的な人材不足です。経済産業省の統計によると2030年には約80万人もの人材が不足するという見通しです。

IT業界の人材不足 見通し

IT業界の人材不足 見通し

出典:IT 人材の最新動向と将来推計に関する調査結果を取りまとめました | 経済産業省

子どもたちが将来何の仕事をするかはそれぞれですが、小学校のうちから、

…なるほど、将来の仕事にエンジニアやプログラマーといった選択肢もあるんだなぁ

などと思わせられるだけでも効果はあると考えられます。キッザニアでお仕事の体験をするようなイメージです。

100社受けたけど全滅…就職できなかった…

となるぐらいなら、就職活動の滑り止めとしてエンジニア・プログラマーを候補としておくのも良いでしょう。

プログラミングそのものを学ぶことが目的ではない

記事の先頭のほうでも書いていますが、プログラミング教育はプログラミングそのものを学ぶことが目的ではないようです。

実際の授業内容についてはプログラミング教育が開始されてからでなければわかりません。ですが、1人1台パソコンが支給されるのか?と考えると予算的にむずかしそうです。

では、自分でパソコンを用意するのか?というと、家庭によっては負担の感じ方が異なるため、こちらも現実的ではなさそう。

となると、プログラミングについては机の上で勉強するしかないように思います。よって、エンジニアのように毎日ガシガシとプログラミング・コーディングをすることはないはずです。

プログラミングしないでプログラミンミングって学べるの?

はるき

複数の国家資格を保有するエンジニアの見解としましては…学べます。

情報処理の国家試験ではテスト用紙の上でプログラミングの問題が出てきます。その代表と言えるのが『擬似言語』というもの。

プログラミングにはプログラミング言語といって、様々な種類の言語があります。現実世界で例えるなら、

  • 日本語
  • 英語
  • 中国語
  • etc…

というイメージ。ITの世界では全部のプログラミング言語を覚えることはできませんし、言語が違う人同士ではお話することができません。

ですが、プログラミングの基本はどの言語でも共通です。例えるならプログラミング教育で学ぶ基礎・基本は『ボディランゲージ』です。擬似言語もボディランゲージに近いものです。

つまり、プログラミングは物を作ることができなくても、ボディランゲージのように基礎・基本さえわかればOKだということです。

まとめ

以上のことをまとめると下記の通りです。

  • プログラミング教育とは、プログラミング的思考・論理思考など、考え方を身につける教育。
  • 自分が意図した完成・ゴールに向けて一連の作業に組み立て、実現させていく力を身につける。
  • 決してプログラマー養成のための教育というわけではない。
  • しかし、第四次産業革命やIT業界の人材不足を考えると、プログラミングを始めIT技術の関心は高めたほうが良い。
  • AI・ロボットに仕事を奪われる側ではなく、AI・ロボットを使う側、作る側に回れば子供の将来もある程度安心。

私は現役のエンジニアとして働いていますが、学校の教育でこれほど将来の仕事に直結して役立ちそうな教育はないと感じています。事務作業から技術職、汎用性は高いです。