2020年度から始まる、小学校のプログラミング教育の本質とは?
コメント
注目のコメント
命令以外の動作しない何かを用意して、目的や自分の考えることを実現するためにそれを配置し、アルゴリズムを学ぶのが目的でしょうか。アルゴリズム自体は、算数の筆算もその一種ですので、正直、目新しいことではないと認識しています。敢えて「プログラミング教育」と銘打っているのは、それがGUIを用いてインタラクティブに取り組めること、目的を叶える手段の自由度が比較的高いといった点にあるのでしょう。ただし、こうした取り組みが高度なAI人材に結びつくことには懐疑的です。新たな手法の開発には微積分や線形代数などの数学の理解が欠かせません。現実的には裾野を広げる、プログラミングに抵抗感をなくす程度のものでしかないと思います。
こういうの懐疑的だったんですが、うちの大学院に来る (けっこういいレベルですよ) マスター1年生の子たちのprogramming literacy の低下を見ると、少しは必要なのかなぁ、と思っちゃいますねぇ あ、ニホンのハナシではないですが
多分、スキルが低いというより、きれいなボタンをタッチパネルで触る以上の、"内側" のことに対する、心理的障壁が高すぎるんだと思うんです 普段使ってるモノの (見た目の) 完成度が高すぎて、なにか内側いじってイタズラしてやろう、って気をはじめっから持たないんでしょうねぇ コレは、完成度の高い量産機械製品、特に分解できないIT機器、に触れて育ってきた現代っ子(フルイ?)たちの、機械を前にした時の反応とも似ていますねぇ
まあ、小学生からでなくても、もう少しあとでも良いかもですがプログラミング能力=論理的能力
とされることが多いです。それについては否定しませんが、そうであるなら国語力、数学力で十分であるとも考えます。
そのほかに
・大きなタスクをクラスや関数に分割・設計する能力
・アルゴリズムの理解・設計力(同じ結果を得るのにも処理の仕方によってかかる時間に雲泥の差が出ることを体感)
・バージョン管理能力(管理・把握、巻き戻し)
・チーム連携能力(複数の人間で1つのシステムを作ると何が起こるか)
・デバッグ能力(問題が発生したときに闇雲ではなくいかに戦略的に潰すか)
・プロファイリング力(どこが本当のボトルネックになっていて、それをどのように解決できるか)
・ドキュメント生成力(未来の自分(笑)や他人がきちんと理解し、流用できるようにするにはどのような情報量や記述が必要か)
なども学べると面白いのにと思っていますが、too muchか?
学校での教育では簡単なゲーム作成やロボット制御などがメインになると思いますが、それも残念。