294、プログラミング Programming

日本でも、論理的思考を育むために、プログラミング教育が始まった。In Japan as well, programming education has begun to foster logical thinking.

手続きや条件分岐、そして繰り返しと変数への代入など。そもそもプログラミング言語は、論理的にしか記述できない。Procedures, conditional branching, repetition and assignment to variables, etc. Programming languages can only be described logically.

だから、論理的思考を育むのではなく、論理的に制限された人工言語を学ぶのだ。So instead of fostering logical thinking, learn a logically restricted artificial language.

プログラミングをすると、子どもたちは「楽しかった」と感想を言うが、プログラム言語に「楽しい」という感情の入る余地はない。When programming, children say that it was “fun”, but there is no room for the feeling of “fun” in the programming language.

プログラミング言語はAIロボットの思考言語である。だから、極端に例えれば、プログラミングで論理的思考を学ぶことは、「ロボットの言語を学ぶこと」と同じことだ。The programming language is the thinking language of AI robots. So, in the extreme, learning logical thinking in programming is the same as “learning the language of a robot.”

本来、論理的思考とは哲学の領域である。そして、人間の話す自然言語に基づく。Originally, logical thinking is the realm of philosophy. And it is based on the natural language spoken by humans.

しかし、自然言語は論理的ではない。矛盾も生じるし、感情などの主観を取り除くことが難しい。But natural language is not logical. Inconsistencies also occur, and it is difficult to remove subjectivity such as emotions.

だから、コンピュータ用に、BASICやCなどの人工的言語が開発されたのである。That’s why artificial languages such as BASIC and C were developed for computers.

本当に論理的思考を育むのであれば、自然言語による思考を鍛えなければならない。If you really want to develop logical thinking, you have to train your thinking in natural language.

例えば、時系列など出来事の順に話すこと。自分と相手、第三者を分けること。事実と推測とを区別すること。For example, speak in chronological order of events. Separate yourself from the other person and a third party. Distinguish between facts and speculations.

そして、接続詞の使い方や演繹的思考、帰納的思考や仮説形成力、バラドックスを見抜く力などである。Then, how to use conjunctions, deductive thinking, inductive thinking, hypothesis-forming thinking, and the ability to see through balladox.

これらによって、初めて自然言語を論理的思考の道具として扱えるようになるのだ。Only then can natural language be treated as a tool for logical thinking.

今回のプログラミング教育の開始は、ある面、「お前たちは非論理的だから、ロボットの言語を学ぶべきだ。」と言われているようでさみしく感じる。On the one hand, the start of programming education this time seems to be lonely, as it is said that “you should learn the language of robots because you are illogical.”

人間の言語はプログラミング言語の何兆倍も豊かで美しく、そして、奥深い。Human languages are trillions of times richer, more beautiful, and more profound than programming languages.

文学や詩歌にある比喩的な表現。それらをメロディに載せた時に心をゆさぶる唄。頭の中でふくらみ限界のない想像力など。A metaphorical expression in literature and poetry. A song that shakes your heart when you put them on the melody. The limitless imagination in my head.

そもそも、人類が「言語」を扱えるように進化したことが奇跡的、かつ神秘的である。In the first place, it is miraculous and mysterious that human beings have evolved to be able to handle “language”.

証明されてはいないが、言語こそ「心の豊かさ」の源だと信じる。Although not proven, I believe that language is the source of “richness of mind.”

技術として、コンピュータに話しかけ、コンピュータを道具として利用するためにプログラミング言語は必要だ。As a technology, you need a programming language to talk to your computer and use it as a tool.

しかし、プログラミング言語を学べば論理的思考が育まれるという考えは、根本的に間違っている。However, the idea that learning a programming language fosters logical thinking is fundamentally wrong.

あなたは、どう考えるだろうか。What do you think?

(2020年12月21日@nortan)

コメントを残す