※ 当ページには【広告/PR】を含む場合があります。
2020/04/28
2020年から小学校でプログラミング教育が必修科目としていよいよ本格始動します。また2021年度には、中学校でも新学習指導要領の全面実施が始まり、今年(2019年)に中学校入学した生徒さんは2年後に履修漏れにならないように、既に新しいカリキュラムにてプログラミング学習がスタートしているとのことで、ますます教育としてのプログラミングの存在感がまして来そうです。やはり最初に手に触れるプログラミング教材は、プログラミングを始める上でその後の将来のキャリアを大きく左右するので、難易度は少々高くても質の高い教材を選んだほうが良いのでは...というのが個人的な意見です。首題にもあるように、下は初頭教育分野からデータサイエンス・機械学習まで扱えるpythonで最初から教育カリキュラムを組んでみたらどうなの?という素朴な疑問をとりあえず考察してみます。
【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選
【Pschool厳選】お子様に通わせたいロボットプログラミング教室&教材・学習サービスまとめ
【Pschool厳選】Scratchをしっかり学ぶためのオススメ書籍まとめ
TL;DR
まずこの記事での結論ありきで...小学校ではScratch
をしっかり学習されるべき、と思います。大きな理由としては、やはり言語力が思考力と直結するのがプログラミング学習に大きな影を落とします。要は、英語教育とプログラミング教育は運命共同体というか、小学生低学年の時分にいかに英語に慣れ親しむことができるかが、大きなカギとなると思われます。
初等教育向けのプログラミング言語
現在、小学生向けのプログラミング学習用アプリケーションにあたりそうなものをザッっと手元で検索しただけでも、以下の多様な選択肢を見つけることができます。※各プログラミング言語の公式サイトはこのページ下の参考
パートを参照ください。どのアプリケーションも、立派に出来ておりますし、どれを使っても小学生向けの学習教材として効果があるものでしょう。逆に考えると、どの教材を使っても、児童教育に期待される効果がほぼ同程度見込めるからこそ、いまのような学習用ソフト群雄割拠
時代になってしまっているわけです。とりわけ、弊社はscratch
に絞ったプログラミング学習環境の構築を推進しております。その理由は次の節でまとめます。
Scratch 3
細かいことは文科省のサイトページに色々と掲載されておりますが、盛んに教育教材として取り上げられている学習用アプリケーションの一つにscratch
があります。子供さん向けのGUI型ビジュアルプログラミング言語の位置づけで、(学習用途ではキーボードもあったほうがいいですが...)マウス操作で完結する仕様になっております。現状はScratch 3
がリリースされたため、以前のバーションであるScratch
/Scratch 2
はそれ以降開発されていませんが、未だに根強く利用され続けているようです。強調すべきはバージョン3になってから、React Components
として再構築されており、よりフロントエンドエンジニアに嬉しい
仕様になりました。この点が大きく他のプログラミング学習用アプリケーションと違う点であり、アプリケーション開発者側の力量次第で、より簡単に児童の学習意欲をそそるようなコンテンツを積極的にカスタマイズできるようになりました。githubに置かれているソースコードをだれでも覗くことができて、プロジェクトごとフォークして、3-clause BSD license
のライセンス範囲でなら、開発者のローカル環境で独自ソースコードを改変できるのも魅力です。ちなみに、MITの開発者20人近くと多くのディストリビュータがゴリゴリと日々開発されており、かなり活発かつ規模の大きいプロジェクトであり、世界中のプログラミング教育の場にこれほど浸透しているのも納得です。LLK/scratch-guiまた現在ではインターネットの接続できる環境であれば、オンラインからScratch gui | github.ioへアクセスしてScratch GUI
のサービスが無償で利用でき、すぐさま学習を開始できるようになったのも大きな利点です。他方で、当然日本の教育現場どこでもインターネットに繋げることのできる環境がある訳ではなく、インターネットインフラの整わない地域が日本も例外ではなく世界各地に存在しています。そのような状況下では、オフラインでもScrach3を使おうと思うと、このリモートのレポジトリからフォークして、ソースビルドすることになります。ローカルにインストール (nodejsが利用できる環境)
もっとも手っ取り早く、ローカルでscratch3
を利用できる方法は、npm
パッケージを利用することです。この場合、scratch-gui
のパッケージが正常にビルドできるようなOSでプログラムを走らせるかお手元のPCなどのハード側での検証も必要です。オフラインでもScratch3
が動作できればインターネット環境が不要ですので、インターネットを敷設していないご家庭にでもよりリーズナブルな学習環境が構築可能です。それでは手始めに基本の型
から、やってみます。公式のREADMEにしたがって、npmでインストールしてみます。とするとインストールが完了し、これを起動するには、とこれだけでGUIが起動できます。この記事内ではScratch3を起動してみた記事となりましたが、別記事でラズパイOS上でのオフライン版Scratch3の起動方法を検証しておりますのでそちらもご参考にどうぞ。
学習用教材としてのpython
他方でpython
はどうなのかといえば、アメリカやインドなどの英語公用圏では、お父さんお母さんが積極的に地元のプログラミング教室に通わせたり、色々とお盛んにやられているわけですが、当然pythonも小学生から教えているようです。そちらのお子さん達からしてみたら、import ...
とか打ち込んでも何を処理しているのか、わざわざGUIでビジュアル化しなくても直接頭に情報が入ってくるわけで、そこには言語の壁が大きく立ちはだかっております。昔から日本人の英語能力は国際的にみても高いとはいえず、毎年下位のほうへズルズルと下がっていっているらしいので、英語の文法がかろうじて理解できる中学生からpython
に取り組むほうが好ましい気がします。(逆に言えば、英語が得意なお子さんには、はやめにpython
を学習されておくのが良いかもしれません。現代の英才教育と揶揄されるかもしれませんが...)ということで首題にもどると、英語もままならないと思われる一般小学生の児童向けに、いきなりpython
をやらせようとすると、プログラミングやらず嫌いを引き起こす可能性があるかもしれません。(子供に身体に良いからといって、ピーマンやブロッコリーを無理やり食べさせようとしてすると、大きくなってからの食わず嫌いを治すのに一苦労する感じに似ているような...)なので、子供心は複雑ですので、中学生まではpython
をやらないほうが無難でしょう。
【Pschool厳選】Scratchを学べるオンライン・駅前プログラミングスクール5選
【Pschool厳選】お子様に通わせたいロボットプログラミング教室&教材・学習サービスまとめ
【Pschool厳選】Scratchをしっかり学ぶためのオススメ書籍まとめ
参考
文科省-小学校プログラミング教育の手引scratchviscuitspringin'tynkerプログラミンLINE entryプログラミングゼミ