ハッカーの芸術性

ハッカーと画家という本を読んだ。

誰もやらないことをあえてやって、ベンチャー会社の競争優位を築いた話がおもしろかった。自分の武器は何だろうか?と考えさせられる。

ハッカーには、画家と同じようにデザインのセンスが重要と書かれていた。

ソフトウェア開発は、建築に例えることが多い。そこでは、属人性をいかに排除するかが一つのテーマとなる。それを考えると、画家というのは大胆な比喩だ。新しいものを創る人は、芸術的なセンスが必要だということか。少し勇気付けられる。

あまり関係ないが思い出したこと。以前、ある組織のトップが、「うちのプロジェクトのプログラムは芸術だ」と外部の人に言っていたのを聞いたことがある。僕はそれを聞いたとき、内心で「それは違うだろう」と思っていた。ソフトウェア開発で芸術性を持ち出したらいけない。それはいかにも「我々はCMMレベルの低い組織です」と言っているようなものだ。

しかし今になって思うと、芸術的なプログラムはある。

ソフトウェア開発とは、結局は、複雑さとの戦いだと思う。少しでも油断すると、複雑さが発散する。当時の僕は、複雑さが発散したプロジェクトを経験したことがなかった。だから、その中で仕事をする感覚、まるでパチンコですり続けるようなふわふわした感覚、を味わったことがなかった。

ソフトウェア開発では、複雑さの発散に対し、必勝形を組んで立ち向かわなければならない。チームのあり方もそうだし、ドキュメントもそうだし、コーディングスタイルもそうだ。僕は、C++を勉強しながら、C++の必勝形を探していることに気づく。もしかして、自分の強みはこういうところにあるのかもしれない。

噂では、ストールマンは完璧に整然としたコードを書くらしい。どんなコードなんだろうか。気になる。

ハッカーと画家 コンピュータ時代の創造者たち

ハッカーと画家 コンピュータ時代の創造者たち