2024年5月30日i-learn2018年ももうすぐ終わり・・・いよいよ2020年まであと1年ほど。2020年はオリンピックよりももっともっと重要な教育改革元年!このサイトでも、2020年の教育改革に盛り込まれた「プログラミング教育」について、文科省の資料および未来の学びコンソーシアムのサイトの情報をまとめてわかりやすく解説していこうと思いま・・・・す(←ちょっと弱気)。本日のテーマは「プログラミング的思考より大事な『コンピュテーショナル・シンキング』」です。プログラミング教育の目的はプログラミング的思考を育てること、となっていますが・・・さて肝心の「プログラミング的思考」とは一体なんなのでしょうか?今回は、「プログラミング的思考」の定義と、その言葉の語源(?)と、子供達にとって本当に大切な力は何かを考えてみたいと思います。プログラミング思考とはまずは文科省の定義からおさらいしていきましょう。プログラミング教育の目的、プログラミング思考については次の資料から確認できます。▼プログラミング教育の目的についてはこちらプログラミング教育とは、子供たちに、コンピュータに意図した処理を行うよう指示することができるということを体験させながら、将来どのような職業に就くとしても、時代を超えて普遍的に求められる力としての「プログラミング的思考」などを育むことであり、コーディングを覚えることが目的ではない。前文よりこの文章によれば、プログラミング教育の目的は、「プログラミング的思考」を育むこと、ということになります。▼プログラミング思考の定義はこちら自分が意図する一連の活動を実現するために、どのような動きの組合せが必要であり、一つ一つの動きに対応した記号を、どのように組み合わせたらいいのか、記号の組合せをどのように改善していけば、より意図した活動に近づくのか、といったことを論理的に考えていく力[※1][※]いわゆる「コンピュテーショナル・シンキング」の考え方を踏まえつつ、プログラミングと論理的思考との関係を整理しながら提言された定義である。(2)より「プログラミング的思考」はどうやら「コンピュテーショナル・シンキング」と「論理的思考」という言葉を元に作られた言葉だということがわかりました。コンピュテーショナル・シンキングとはでは、コンピュテーショナル・シンキングとはどのような思考法なのでしょうか?コンピューテショナル・シンキングについて調べてみると、この言葉が有名になったきっかけとされる論文があり、日本語訳が公開されていました。※少々、難しい内容の論文なのでp.586「したがって計算論的思考は以下の特徴を持つ:」以降だけ読まれてもいいでしょう。この論文によれば、「コンピューター科学者のように考える方法」がコンピュテーショナル・シンキングだそうです。コンピューテショナル・シンキングは「一見難しそうな問題を我々がすでに解き方を知っている問題に変換する」ことを可能にしてくれるということがわかりました。コンピューテショナルシンキングがものすごく重要で、この思考法ができるようになれば様々な問題解決に役立つだということがわかりました。あるならば、現代人にとって大事なのは・プログラミングができるようになることではなく、コンピューター科学者のように考えること。・そのためにコンピューターとその周辺のシステムの仕組みを知ること。・そして、そのコンピューターを使った問題解決方法を、現実に応用する力を身に付けること。本当に必要な力はプログラミングじゃ身につかないここから先は論文を読んだ、私の感想になります。プログラミング的思考は、コンピューテショナル・シンキングよりかなり矮小化された概念である、という印象を持ちました。図にするとこんな感じです。「コンピューテショナル・シンキング」を教えるのは現実的ではないだろう・・・と文科省は判断し、「プログラミング的思考」というかなり範囲を限定した言葉を定義したのかもしれません。2020年は改革内容が盛りだくさんなので、現場からの反発を考えてちょっと弱気になったのでしょうか?親として考えること子供達に身につけてもらいたい能力を「プログラミング的思考」に限定してしまうのは、非常にもったいないと思いました。子供に関わる大人たちがコンピューテショナル・シンキングを身につけるのが第一歩でしょう。以前、「スティーブ・ジョブズ、ホリエモンはプログラミングができるから、すごいんだ。プログラミングを学ばせれば、彼らのようになれる」と言っている人がいました。それはかなり違うということもわかりました。GAFAを始めとする現代の有力企業の成長は、プログラミングによるものではなく「コンピューテショナル・シンキング」によるものでしょう。プログラミングはあくまで部分でしかないのです。「部分」をさも「全体」かのように言うのは、正確ではないですよね。・コンピューターとその周辺分野の仕組みを理解すること・その仕組みを抽象化して思考し、現実世界にも応用できることこれこそが子供に身につけさせたい能力であり、21世紀を生き延びるために必要な力だと思います。プログラミングももちろん楽しんでもらいたいと思います。プログラミングは通過点でありゴールではないということを、指導する側の大人は認識しておくべきだと思いました。コンピューテショナル・シンキングを身に付ける方法を、私もこれから試行錯誤していこうと思った2018年末でした。割り算は2種類あるって知っていますか?ー算数嫌いの子のための算数プログラミング初心者のためのScratch(スクラッチ)入門-四捨五入テクニックこのサイトについて。今、注目されている考えさせる教育、アクティブラーニング。AI時代に教えるべき教育とは何か。2020年に教育必修化するプログラミング教育を交えながら、これからの教育シーンに必要な情報をお届けします。