嫌われプログラミングの代弁者

「何で頭ごなしに嫌う人間が居るのか」を色々考える

語ることが出来ない 3

初めて言い出したのは

私の記憶では、ウィトゲンシュタイン(語ることが出来ない)をソフトウェア開発と絡めて言い出したのは、(初期の)(形而上)関数型プログラミングを信望していた人たちだったと思います。

関数型という事で、

  • プログラミングの中身は語ることが出来ないが、
  • それは有利な事である。

と言う主張だったと思います。

 

それで、その様な「⚫︎ー⚪︎の内、⚫︎と⚪︎の中身は語ってはいけない」と言うシバリを加える事で、

  • (一人前は無理でも)簡単に半人前になれる

のなら、教育的にも意義の有る話だったと思いますが、

 

そんなシバリでは、

  • 何も出来ない
  • 本当にやろうとするとよっぽどの熟練者がようやく出来、出来たものも、手続き型でやったものと比べて、労力の割に合わない
  • なんとか(形而上)関数型に寄り添って、完遂させたいと思う有為の人でも、余りの酷すぎるシバリの為に、諦めざるを得ない

と言う結果になります。これは空想では無く、変え難いファクトです。*1

  • プログラミングの中身を語ることが出来ない場合、
  • それは致命的に不利な事である。

と言うのが結論で、ソフトウェア開発に絡めてウィトゲンシュタインについて言及するとは、

事を意味します。すなわち、簡単に言うと、

  • 「語ることが出来ない」部分を持った手法は
  • そういう部分が無い手法より
  • 原理的に劣らざるを得ない

と言うことです。

 

なんでこの様な事になったのか?

専門職では、

  • 似たような分野の仕事は手を抜いてしまう

傾向に有ります。

  • プログラミングと似た様な仕事をしていた人が、
  • 手を抜きつつ、日々の実践を欠落させつつ、精緻な考察も欠いた結果、
  • 利点が厳密にゼロ(どんな人が取り成しても、格好がつかない)

な手法を編み出したのだと思います。似たような分野の仕事に対するリスペクトを専門職では持つべきだったと思います。

 

結論

これからも「語ることが出来ない」事でプログラミングが嫌いになる人は存在し続けることでしょう。  

 

*1:また逆に、⚫︎と⚪︎、そしてそれらの相互作用側にこそプログラミングの本質が有る(関数では無く)可能性が有ります。

*2:手続き型よりも形而下関数型よりもオブジェクト指向よりも優れていて、しかもプログラミングの中身を見なくても良い、と言う特徴を持った仮想の、の意味