プログラミングは、あくまでも自分のやりたいこと・やるべきことを実現する手段にしか過ぎません。プログラミングができれば間違いなく自分の武器のひとつにはなりますが、もしできなかったとしても、自分のもっている別の武器を選べばいいだけです。
逆に言うと、大事なのは、目の前にやりたいこと・やるべきことなどの課題が現れた際に、どういう手段を用いて取り組んでいけば良いかを考えられる力なのです。
論理的思考力とは、次の2つの「力」だと言えるでしょう。
・課題や目的を分解して考えることができる力
・答えに行き着くまでの道筋を定めることができる力
どちらも大前提となるのは、(少なくとも自分にとって)大きな課題、難しそうな課題が来たときに、決してそこから逃げないこと。「あらゆる課題は解くことができる」と思うことができるかどうかが出発点になります。
そして、それを支えるのが論理的思考力という、いわばフレームワークです。大きな課題を小さな課題に分解し、それぞれに対して答えを出していく枠組みを意識することで、どんな課題にも取り組めるようになります。
もうお気づきのように、これらの力はプログラミングがあろうとなかろうと、特にビジネスの場において必要な力だと言えます。
先に述べた通り、プログラミングもひとつの課題解決の手段にしか過ぎません。ではなぜ、こうもプログラミングが叫ばれているのかというと、圧倒的に社会の情報化が進んだことによって、情報活用能力が必要となる場面もまた圧倒的に多くなっただけなのです。
一方、そこから言えることは、「プログラミング的思考」は論理的思考力と完全にイコールではなく、論理的思考力に加えて、次のような「力」が大事な要素となります。
・プログラミングによって、何をどこまで実現できるかを考えることができる力
冒頭で、小学校のプログラミング教育では、プログラミングを「体験してもらう」と書きました。これはつまり、今の子供たちは、この「力」を体験によって修得して育つことになります。反対に、今の大人たちは、意識的にこの「力」を手に入れていかなければなりません。
幸か不幸か、今の世の中には「AI」という言葉が溢れ、様々な商品に「AI」が使われています。私などは職業柄、「AI」という言葉を見かけたら、それがいつの時代の技術に基づく「AI」なのかを考えるクセがついています。そしてこれはなかなか良い思考訓練になっています。
「AI」もプログラミングよって実現されているものですから、「AI」を見かけたら、これがどんな技術に基づいているかを考える──これだけでずいぶんと「プログラミング的思考」が鍛えられるのではないでしょうか。
*1 プログラミング教育に関して、文部科学省が公開している資料はこちら。
(http://www.mext.go.jp/component/a_menu/education/micro_detail/__icsFiles/afieldfile/2018/03/30/1375607_01.pdf)