Loading...

PYTHONの逆説

Original

2004年8月

最近の講演で、私は多くの人を不快にさせることを言いました。それは、Pythonプロジェクトに取り組むプログラマーは、Javaプロジェクトに取り組むプログラマーよりも賢いということです。

私がこれを言ったからといって、Javaプログラマーが愚かだという意味ではありません。私は、Pythonプログラマーが賢いという意味です。新しいプログラミング言語を学ぶのは大変な作業です。そして、人々は仕事を得るためにPythonを学ぶのではなく、プログラミングが本当に好きで、すでに知っている言語に満足していないから学ぶのです。

これにより、彼らは企業が雇いたいと思うプログラマーのまさにそのタイプになります。したがって、より良い名前がないために、私はこれをPythonの逆説と呼びます。企業が比較的難解な言語でソフトウェアを書くことを選ぶと、彼らはより優れたプログラマーを雇うことができるでしょう。なぜなら、彼らはそれを学ぶことに十分に関心を持った人々だけを引き寄せるからです。そして、プログラマーにとってこの逆説はさらに顕著です。良い仕事を得たいのであれば、学ぶべき言語は、単に仕事を得るために学ばれる言語ではないのです。

これまでのところ、これを理解するのが十分に賢い企業はほんの数社です。しかし、ここでも一種の選択が行われています。彼らはまさにプログラマーが最も働きたいと思う企業です。たとえばGoogleです。彼らがJavaプログラミングの仕事を広告する際、Pythonの経験も求めています。

私の友人は、広く使われているほとんどすべての言語を知っていて、ほとんどのプロジェクトにPythonを使用しています。彼は、主な理由はソースコードの見た目が好きだからだと言います。それは、一つの言語を別の言語より選ぶための軽薄な理由のように思えるかもしれません。しかし、それは聞こえるほど軽薄ではありません。プログラミングをするとき、あなたは書くよりもコードを読む時間の方が多いのです。あなたは彫刻家が粘土の塊を扱うように、ソースコードの塊を扱います。したがって、ソースコードを醜くする言語は、厳格なプログラマーにとっては苛立たしいものであり、塊のある粘土が彫刻家にとって苛立たしいのと同じです。

醜いソースコードの話が出ると、人々はもちろんPerlを思い浮かべるでしょう。しかし、私が言う醜さの表面的なものはPerlのそれではありません。本当の醜さは、厳しい見た目の構文ではなく、間違った概念からプログラムを構築しなければならないことです。Perlは、まるでカートゥーンキャラクターが罵っているように見えるかもしれませんが、Pythonを概念的に上回るケースもあります。

とにかく、今のところ。両方の言語はもちろん、動いているターゲットです。しかし、Ruby(およびIcon、Joy、J、Lisp、Smalltalk)と共に、彼らは本当にプログラミングを大切にする人々によって作られ、使用されています。そして、それらはうまくやる傾向のある人々です。