今、エデュケーション系(オンライン教育関連)の界隈が騒がしいです。
特にEdTech (エドテック)と言う造語もうまれています。
EdTechは、Education(教育)とTechnology(技術)を組み合わせた造語で、テクノロジーを用いて教育を支援する仕組みやサービスを指します。
やはり話題の牽引役としては「小学校でのプログラミング教育の必修化」
などの影響も強いのでしょう。
プログラミング教育必修化にはどんな背景があるのか?
世界から少し遅れた、IT系のデジタル人材に育成に対して
将来的な投資として子ども世代から育てて行きましょう」
との思惑が見え隠れしています。
ネット上では賛否もあるようですが、実は議論が偏っており
「プログラミング教育」と括ってしまうと
プログラミングが書ける(コーディングが出来る)プログラマー養成
と短絡的に思ってしまう部分がありますが
実はこれはかなり違う部分で
プログラミング=プログラマー では無くて
プログラミング=システム思考としてロジカルな人材育成が根底にあります。
ロジカルな人材育成とは
物事を行う際に、一つ一つの事柄(行為)を分解して
それを順序立てて組み立てるイメージです。
これをアルゴリズムと表現して良いと思います。
旅や遠足で言うところの「旅のしおり」見たいなもので
それを他人にも解るように言語化して組み立てる能力
それをシステム思考と考えて良いと思います。
ここだけ捉えると「そんな事は普通に出来るじゃん」と思いがちですが
これは意外にも特別なスキルが必要です。
①人に課題を満足させるスキル
・参加者に楽しんでもらうために魅力的な内容を考える
・トラブルが起きないように細心の注意を払う
・参加者に年齢、性別諸々に配慮した計画
②手段の組立スキル
・どのようなスケジュールで無理の無い計画で
・どのような手段(移動方法)で予約をして
諸々あげるとキリがないですが
これをシステム化思考で考えると、一つ一つの行為をアルゴリズムと捉え
これをフローチャート(時間軸)に並び替えて
プログラミング言語に置き換えたモノがプログラミングになります。
なんとなく理解出来ましたか?
プログラミングは最後の形にする手段で
大事なのはここに至るプロセスの言語化(一般的には仕様書と言います)
この様な、ここではイベントを例に取りましたが
様々な事象は全てアルゴリズムの上で成り立っており
それは皆んなの頭の中で「アナログ」状態で組立られていますが
これを言語化表現したモノが「デジタル」になります。
そこで冒頭のプログラミング教室の本質は
幼少期から、このアルゴリズムを意識して言語化する知識を学び
デジタル社会に適用(順応)出来る人材を育成しましょう。
につながります。
プログラミング=プログラマー では無くて
プログラミング=システム思考としてロジカルな人材育成
これがこれから進む「プログラミング教育」の肝になります。
あくまでもプログラミング言語は仕様を形にする一つの手段と言う事です。
その様な目線で教育用ツール選定を行うと良いと思います。
ここからはPRですが
数多あるプログラミング教材(幼児教育用)の中で注目しているのが
「コードアベンジャーズ」と言う仕組みになります。
この教材の魅力は幅広い年代(初等からプロまで)を網羅的に展開されており
年代によって考え方(アルゴリズム)から組み立て方まで理解して
各種複数のプログラミング言語(自身が選択)でコーディング技術まで学べる
総合教材になっている所です。