プログラミングに数学は不要?

あなたがプログラムを理解できない10の理由:第2回 - builder by ZDNet Japanより。

しかし、本当に数学の知識が必要になってくるのは、ゲームのプログラムや科学技術計算をするような高度なプログラムが必要になった時だ。PHPJavaScriptActionScriptなどでちょっとしたWebのスクリプトを作りたいといった程度であれば、必ずしも数学の知識は必要ない。

あなたがプログラムを理解できない10の理由:第2回 - builder by ZDNet Japan

ここで言われてる「数学の知識」っていうのは、数値計算的なものを指しているらしい。たしかに、そういう利用範囲が限られるような専門的な計算のための知識は必ずしも必要ないけど、作るプログラムが複雑になればなるほど数学的な抽象化能力は必要になってくると思う。もちろん数学でなくとも抽象化能力を養うことができる分野があるだろうけれど、少なくとも数学(特に代数とか?いや、あんまり詳しくないけど)は抽象化するセンスを磨くいい練習台にはなるはず。

継続とかモナドとかいったワケの分からん概念がいろんなシチュエーションで使えるのは、それが素人の思いつきで編み出されたものじゃなくて理論的な背景を持ったものだからだろう。それらを「発明」するのは難しいし、そこまで出来るほどの抽象化能力が万人に必要だとは思わないけれど、それらを使いこなせるようになるためには使う側にもある程度の力が必要なんじゃないかと。だから結局、必要なのは数学じゃなくて抽象化能力なのか。あれ?

このように、プログラマがよく使う「業界用語」のようなものが当然のように使われているため、入門者は疎外感を感じてしまうのだ。

あなたがプログラムを理解できない10の理由:第2回 - builder by ZDNet Japan

個人的には、bufという変数名に戸惑ってた覚えがある。