「プログラミング教育」における「~思考」という用語について探求してみたいと思います。
目次
「論理的思考」「プログラミング的思考」「計算論的思考」の比較
「論理的思考」という用語がありますが、この「思考」とはどういうものなのでしょうか?
ここでは、世の中で使われている似通った用語と比較しながら、これらの用語について解説していきたいと思います。
用語の揺れ
文部科学省が発信している情報を見ているだけでも、『「論理的思考」力を身に付ける』『「プログラミング的思考」の育成』などという表記があり、使われている用語が揺れています。
一方、「計算論的思考」という用語もあり、初めて接する人にとっては説明を聞く前に心が萎えてしまいそうです。
そもそも、これらの用語は同一の意味を持つものなのか、異なるものなのか、児童や我々親はどれを意識すればいいのかを考えていきたいと思います。
各用語の使われ方の状況
「論理的思考」に対する英語は、「Logical Thinking」という言葉があります。筆者もわりと使う用語であり、「ロジカル・シンキング」という片仮名英語も世の中で使われることが多くなってきたように思います。
また、「プログラミング的思考」と直訳されるような英語はないもよう。
一方、世界的には、提唱された歴史も含め「Computational Thinking」という言葉がよく用いられています。これを日本語に訳した場合、「計算論的思考」と呼ぶことが多いようです。
日本の教育で取り組もうとしている「プログラミング的思考」は、用語の位置付け的には、ほぼ「計算論的思考」(Computational Thinking)と考えてよい気がします。
参考サイト
これらの用語の関係性について、よくまとめられている先達がいらっしゃるので、筆者の認識にとても近い方のサイトを以下に紹介しておきます。
各「思考」の意味
論理的思考(Logical Thinking)
「論理的思考」は「論理に則った考え方」の意です。
辞書から言葉を考えてみると、『「論理的」は「すじ道の通ったようす」』(出典:新選国語辞典第六版 小学館)ですので、『「論理的思考」は「すじ道の通った考え方」』という意味になります。
プログラミング的思考
「プログラミング的思考」は、「計算論的思考」と同義と考えますので、以下「計算論的思考」にて解説することとします。
計算論的思考(Computational Thinking)
「計算論的思考」は、「コンピュータ科学者のように考えること」です(詳細は後述)。
わからん人にはわかるようなわからんような。。。
この意味や定義を気軽に書けないぐらい論争の起きそうな言葉ですが、ここは、あくまで日本で導入しようとしている「プログラミング教育」についての文章なので、多少ずれていてもわかりやすいように表現しようと思います。
すなわち、「計算論的思考」は、「コンピュータを使ったり、プログラミングをしたりする研究や仕事をしている人たちが、その研究や仕事において日頃やっている考え方」という感じでしょうか。
結局、「プログラミング的思考」という表現のほうが直観的にわかりやすいのかもしれません。
また、BBC発信の情報(詳細は後述)をもとにすると、「計算論的思考」とは、『ある目的や課題に取り組むにあたって、「どのような作業が必要か」「似たような作業はあるか」「どの情報や作業が必要でどれが不要か」「作業をどう組み合わせればよいか」などを考えること、または、その思考力』のような意味になります。
計算論的思考の具体例
「ハムエッグを作る」という目的に対して「計算論的思考」で考えてみました。
「計算論的思考」とは、以下のようなことを分析し、考える力と言えます。
どうでしょうか?
「忙しくてこんなこと考えてられへんわ!」「こんなことを考えながら作ってたら美味しくないわ!」という印象が勝つかもしれませんが、実際は、ハムエッグを作ったことがある多くの人が、暗黙のうちに考えたり、やったりしていることだと思います。
ただ、こういうことを分析したり、考えて調理することで、「調理」という範疇だけでも、以下のような場合に、より効率よく作業ができる可能性があります。
- 複数の料理を調理する。
- レシピをアレンジして調理する。
- 複数の家電を並行して使って調理する。
- 洗いものをしながら調理する。
- 別の家事をしながら調理する。
なお、もっと細かく分析していくならば、以下のようなことも考慮できるかもしれません。
- 鉄やステンレスのフライパンの場合には・・・
- 「コンロでフライパンを加熱する」と「フライパンにハムを入れて焼く」の間に「煙が出るまで待つ」があったほうがよいかもしれない。
- コーティングされたフライパンの場合には、「コンロでフライパンを加熱する」と「フライパンにハムを入れて焼く」は逆のほうがよいかもしれない。
- より美味しいハムエッグを作るためには・・・
- 調理前に玉子を常温に戻しておいたほうがよいかもしれない。
- 玉子の割り入れ方について「フライパンにより近い高さで」など条件が入るかもしれない。
- 塩とコショウについては・・・
- 人によっては醤油であるべきかもしれないし、盛り付け後にかけるべきかもしれない。
- レシピの材料や工程には、これらを包含する「調味料」という単語を用いるほうが、より汎用的になって、万人がわかりやすいものになるかもしれない。
計算論的思考を深く探求(さらに興味ある人用)
Wing氏のエッセー「Computational Thinking」
「計算論的思考(Computational Thinking)」の定義は、人によって差異がありますが、Wing氏のエッセー「Computational Thinking」が有名で、その文中に書かれている表現がいろんな人の指標になっています。
日本語訳は、こちら。
原文の文中に、「Thinking like a computer scientist」という表現があります。上述の「コンピュータ科学者のように考えること」という解釈はこれに準じました。
BBC(英国放送協会)の解釈
情報教育が進んでいるイギリスでは、イギリスの公共放送局であるBBCが「Computational Thinking」の基本的な考え方を次のように定義付けています。
上述の「BBC発信の情報」は、これを指しています。
ICT CONECT21主催のシンポジウム(2017年9月)(以下リンク)でも講演者が同礎石を解説しています。