謎?わかりにくい?プログラミング教育、5つの疑問に答える。

①2020年、小学校でのプログラミングの必修化について

「学校でプログラミングが始まるということは、プログラミングという教科ができて、教科書ができるのでしょうか?」

いいえ、

プログラミングという授業は始まりません。文科省から小学校などの教育現場に送られた指導要領を見ると既存の教科の中で体験させると記されています。

つまり「プログラミング」という教科が追加されるわけではありません。プログラミングの教科書もできません。

授業のレベルも内容も各学校の取り組みにゆだねられているので、地域や学校によってかなりプログラミングについての教育水準の差が出てくると思います。

日本の教育現場は非常に保守的です。さらに、プログラミング教育をするためのPCを準備する費用や先生たちの労力を考えると、日本の教育現場がプログラミング教育を本格的に導入し、一括して水準を上げるのは難しい状況だと思います。

https://www.mext.go.jp/a_menu/shotou/zyouhou/detail/1403162.htm
文部科学省ホームページより抜粋

なので、民間のプログラミング教室を選んで通わせたほうが、プログラミング的思考は確実に身に付きます。

小学校に通っているだけでは「条件分岐」や「繰り返し」、「乱数」、「変数」を「論理演算」で組み合わせて…プログラミングする。というレベルにはいかないかもしれません。

英語教育と同じで親の意識次第で、子供の学習レベルが大きく変わってくるのがプログラミング学習です。

②ITエンジニアの育成のためのプログラミング教育なのか?

「ウチの子は理系ではないので…プログラミング教育はあんまり関係ないのではないでしょうか?」

もちろんプログラミング教育を受けてエンジニアになるという道も開けます。そして、IT人材不足の観点から小学生からITエンジニアを目指す子が増えてくるのは望ましいことです。

ただ、プログラミング教育の本質はエンジニア育成ではありません。 文部科学省が小学校にプログラミング教育を取り入れたのは

  • ITに対するリテラシーを高める。
  • たくましい思考力・判断力を鍛える。
  • テクノロジーを正しく使う人格を育てる。

という3点を満たすことができるのがプログラミング教育だからと判断したからです。

つまり、「家の子はエンジニア志望ではないから、理系じゃないから…関係ない」ということではなく、英語教育と同等に、すべての小学生にプログラミング教育は推奨されていますよ!ということなんです。

ちなみに、英語はなぜ、必修化したかというと、世界的な競争に日本が置いて行かれないためです。プログラミング教育も日本が世界に後れを取っていることは間違いありません。

イギリスのプログラミング教育

イギリスでは、 2014年からコンピュタープログラムを書くような実用的な取り組みを積極的に行う「Computing教育」がなされています。

その結果、「問題解決力」「算数力」「読み書き能力」においてプラスの効果が得られたとのことです。

エストニアのプログラミング教育

Skypeが生まれた国としても有名 なエストニアでは、プログラミング教育の取組は2012年から始まっています。

パソコンでプログラムを組み、レゴで組み立てたロボットを動かすという「ロボット開発の授業」が必修科目の小学校もあります。

フィンランドのプログラミング教育

フィンランドでは、2016年からプログラミング教育が小学校の必修科目となっています。

プログラミングは算数の授業に導入されており、規則的な数列やパーツ分けなどをゆっくりと時間をかけて学ぶスタイルです。

また、フィンランドはプログラミング教室も人気で、親子で習える子ども向けのプログラミング・ワークショップを開催しているとのことです。

イスラエルのプログラミング教育

イスラエルは国民1人当たりのエンジニア数が世界一と言われる程のICT大国で、1990年から、プログラミングをはじめとするICT教育を実施しています。

高校では全員にプログラミングを90時間(週1~2時間程度)、中学生ではセキュリティやアプリ開発を、小学校ではプログラミング・デバックなどを学習させるようになっています。

韓国のプログラミング教育

韓国でのプログラミング教育の開始は早く、2007年から行われています。

さらに2011年からはイギリスと同様の「Computing教育」が実施されていて、小学校では情報のモラルや倫理意識を、中学校ではプログラミングを通した問題解決や簡単なアルゴリズムの開発を勉強します。

そして高校では、より専門的な内容になり、アルゴリズムやプログラムの設計、プログラマー等の職業に必要な技術などについても学びます。

ちなみに、韓国では小学校のデジタル化も非常に進んでおり、政府が「デジタル教科書」「スマート教室」「スマートラーニング」の導入を推進した結果、現在では韓国の小中学校のほとんどがスマート教室を持っているとのことです。

中国のプログラミング教育

中国では、2017年に一部の小中学校にプログラミングの授業が加わり、2018年には高校でプログラミング教育が必修となっています。

プログラミング教育を行う目的も日本とは大きく異なり、中国ではAIを扱える人材の養成を目的としています。

そのため、学校は企業などの外部機関に依頼し、専門家にプログラミング教育を行ってもらうのが一般的です。

このように世界は戦略的にプログラミング教育を進めていますが、日本のプログラミング教育は世界の中で出遅れているのは否めないです。

エンジニアになるかならないか?ということではなく、プログラミングがこれからの未来に必要だから学ぶという認識でよいと思います。

③プログラミング教育を受けての成長過程がわからない。

HTML5 CSS3 ANDROID IOS PHP

「水泳とか公文式だったら進級とかがあるけど、プログラミングは親がやったことないから、どんなふうに成長するかイメージできない。」

そうですよね。確かに、プログラミングは水泳や公文式などと比べて学習進捗がわかりずらいと思います。

そのため、プログラミングを子供に習わせたいと思っていてもに踏み出せないという親御様も多いです。

基本的に最初は、scratchと言われるビジュアルプログラミング言語から入るのですが、これはブロックを組み合わせてプログラミングしていくものです。

最初は、このscratchで単純な動きを命令していきます。たとえば「 キャラクターを上に3歩動かしてみよう」という感じです。そして徐々に複雑なゲームを作っていくことができるようになり、そのなかでプログラミングの基本が身についていきます。

ただ、この段階ではやっていることがキャラクターを動かしたり、ゲームを作ることなので親としては学習しているというより、たのしく遊んでいるだけでは?勘違いされる方も多いと思います。

ゲームを作っていく中で子供たちはしっかりとプログラミングの考え方を学んでいるということを知ってほしいです。

プログラミングの基本的な考え方には

  • 条件分岐 if
  • 繰り返し roop
  • 乱数  
  • 変数
  • 論理演算式
  • データの受け渡し

などがあります。

実はscratchのブロックを組み合わせたプログラムと英語のプログラミングコードは似ています。scratchでプログラミングの基礎を理解している子供たちは、ITエンジニアが使うようなプログラミング言語にスムーズに移行できます。

scratchで書いたプログラムをjavascriptで書いてみたら…

プログラミング学習の成長7段階

プログラミングの学習の成長段階は7段解あると考えられます。

これは私が2年間小学校、中学校の子供たちにプログラミング教育を行ってきてつかんだ成長の7段階です。

  1. 視点の変化(パラダイムシフト)
    ビジュアルプログラミング言語でプログラミングに触れてテクノロジーを使う側の視点を持つこと
  2. 基礎学習
    scratchのゲーム作成を通じて「条件分岐」「乱数」「変数」「論理演算」「定義」「データの受け渡し」等のプログラミングの基礎を学ぶ段階。
  3. 試行錯誤(PDCAサイクル)
    デバッグの作業やプログラムの再構築を繰り返し、たくましい知性を身に着ける。自立駆動でプログラミング学習をする段階。
  4. コードタイピング
    タイピングをしてコードを書くことに慣れていく。 ビジュアルプログラミングから英語でコーディングする言語に移行する段階。
  5. フロントエンド言語で学習
    WEB上で表示できるわかりやすいプログラミング言語である、HTML、CSS、JavaScript等の言語を学ぶ段階。
  6. プログラミング言語の選択
    多数のプログラミング言語の中から将来自分の活躍したい分野で必要な言語を知り、学習する段階。
  7. アプリ・サービス開発
    自分のアイディアをプログラミングで形にすることができ、アプリやサービスなどをリリースできる状態

親としてお子様がプログラミング学習のどの段階にいるのかを理解しておくのも重要ですよね。

成長段階の7段階目にいった場合は、大学の推薦入試でプログラミングの作品を提出できたりします。

そして、就職などの際には多くの企業が欲しがる優秀な人材として成長していることでしょう。また、

自分のアイディアを形にできるので、起業したりする子供たちも出てくるかもしれません。

せっかく、プログラミングを学ばせるなら、7段階目の状態を目指して子供に投資をしてあげることが望ましいのではないかと考えます。

④プログラミングは優秀なエンジニアに習ったほうがいいですか?

プログラミングを学んだリーダーたち

「プログラミングはやっぱり優秀なエンジニアの方に教えてもらったほうが、いいのよね?」

これは、難しいですが、優秀なエンジニアでも職人肌の人だと教育には向かないかもしれません。

教える人というより、教え方がとても大切だと感じます。

例えば、コードの書き方(答え)をただをこうやればいいと言って教えてしまうケースがあります。それだとコードをコピーすることにしかならないので自分で考えたものではないです。

本物の思考力として定着させるためには、自分で考えることがとても大切です。なので答えを教えないでヒントを与えて待ってあげる教育スタンスが有効です。

実はプログラミングというのは、同じ動きをさせるためにいくつもコードの書き方があるので「絶対的正解」はないのです。

だから、子供がオリジナルで書いたコードで正解の場合もあります。そのうえで、「こうやるともっとシンプルにコードが書き直せるよ」と助言するような指導をするのが良いと思います。

もちろんヒントとなるような基礎知識は教えるべきだと思います。そこからは、どうやったら目的の動きをさせることができるのか?ひたすら試行錯誤するのですが、この過程で「たくましい思考力」が育つと思っています。

ちなみに、プログラミング学習を挫折する理由で一番多いのは、「デバッグ」というコードの修正作業が難しい、退屈だという点ですと言われています。

デバッグ作業を、誰の力も借りずに一人でやるのはかなりキツイです。ここでつまずいてプログラミングが嫌いになってしまったらいけないので、私たちのスクールではデバッグのやり方を教えたり、一緒にバグの原因を探したりします。

デバッグが慣れてくると、プログラムの修正がうまくできるようになって自立駆動で学習が進んでいきます。

うまく動かないときに粘り強く考えて、先生と一緒になって解決した経験があるお子様は自立駆動で学習に取り組み自信を持てます。

そのためコードの修正作業はとても重要なポイントであり、先生がコーチングをして一緒に乗り越えるべき部分だと感じています。

当スクールでは、IT専門知識を持つだけでなくコーチングスキルを持ったスタッフの育成をしていますので、

子供たちの才能を伸ばせる最高の環境だと思います。

⑤タブレットでもプログラミング学習できますか?

「うちの子タブレットは使い慣れているから、タブレットでプログラミング学習させればいいわね。」

タブレットでもプログラミング学習はできることはできます。ただ、本格的にプログラミング学習をするのならやはりパソコンがいいと思います。

なぜならタブレットで学習できるのはプログラミングの中でも「順番にならべるという概念」を学習できる知育アプリのようなものが多いからです。

せっかくプログラミングを学ぶなら知育レベルで終わらせるのではなく、コードを書けるところまで成長してほしいと思います。

コードを書くのはパソコンにテキストエディターというソフトを入れてキーボードでタイピングしてプログラミングするというのが一般的です。

お子様の学習用なら「リノベーションPC」という安価なものでも十分です。お子様の将来のためPCを購入しプログラミング教育を受けさせることはとても良い投資だと思います。

最後に

コロナ後の世界はこれまでとは比べ物にならないくらい価値観が変化することが予想されます。そして、どのような方向に価値観が変化していくのかを誰も正確に予想することができません。

むしろ無責任な情報があふれかえって混とんとしている現状ではないでしょうか?

このような時代を生き抜くためにはテクノロジーを使い価値を創造する能力が必要です。AIによって合理化される世の中では決められた答えを暗記するような学習方法は無力となります。

プログラミング学び、自ら価値を創造することができる人間は混沌の世界でも希望をもって生きていけるでしょう。

八王子プログラミングキッズは「テクノロジーをハートで使う主人公を育てる」をモットーに小学生から中高生までプログラミングを教えています。

ぜひ、大切なお子様の才能を伸ばし、変動の時代でも生き抜いていく力を身につけさせてあげてください。

随時オンラインの体験レッスンを行ってます。

皆さまとお会いできることを心より、お待ちしております。

中高生 プログラミング AI

関連記事

「マツコの知らない世界」に隠された、これからの教育のヒント。

子供に身につけさせたい「21世紀型スキル」はどうしたら身につく!?

「プログラミング的思考」ってなに!?一番わかりやすい解説

八王子 プログラミング IT革命

【注目】IT革命後に大人になる子供たちに持たせるべきスキルとは!?

現役SE(システムエンジニア)が教える。小学校の「2020年プログラミング教育必...

プログラミング 子供 オンライン ゲーム依存

ゲーム依存、YouTube奴隷からの脱却!自分で未来を切り開く子供へ!