他人のエントリーにトラックバックを打っておいて文脈上とは言え「内容はどうでもいい」ってのは失礼なやつ > 自分でした^^;
あらためて「内容」について。
Ringo's Weblog「ハッカーという言葉の意味」からです。
今後、ハッカーを雇いたいソフト開発会社の経営者は、面接のときに「コミュニケーション力」を見るのではなく、「人間に対する興味」を見るようにすればいいのではないかと思う。
私たちは、全く同じ考え方で「プログラマ」を採用しています。私たちの考えるプログラマは、Ringoさんの定義される「ハッカー」とほぼ同義でして、プログラムに関してプログラマは、その外部仕様まで全面的に責任を持つべきであると言う考えです。
詳細を説明すると長くなるので端折りますが、ソフトウェアの進化によって、昔から求められてきたプログラマの役割と言うものが大きく質的に変化してきていることが、この話の背景にあります。プログラムを組むのがプログラマの仕事であることは昔も今も変わりはありません。問題は、対象とするプログラムの中身の質的な変化です。この変化に対応できるだけの技量が、プログラムを作る仕事に求められていると言うことです。
つまり、昔プログラムと言っていたものと今プログラムと呼んでいるものとは、本質的に中身が違ってきています。実際今のプログラムはますます人間領域に深く関わりだしていて、この人間領域に対する興味と理解が、プログラマと言う仕事に携わる者に強く求められる時代になっているのです。まさに「人間に対する興味」が大前提になります。
具体的には、ゲームであろうがビジネスであろうが組み込みであろうが、プログラムで実現される内容は、人間領域つまり社会生活に深く関わっていると言うのは誰でも理解できると思います。これを、作れと言われるものを作りましたとか、仕様書に書いてありませんとか言って押し問答している日にゃ、まったく仕事になりません。よくオフショア開発などと言ってやっている話を聞きますが、なんで仕様書を書いているやつがそのままプログラムを作らないのか、筆者からすれば不思議で仕方ありません。
で、上記の「プログラマが外部仕様まで責任を持つ」ですが、外部仕様を誰が作成するかは関係ありません。それをプログラムとして組むプログラマ自身が、そのプログラムの持つ意味を理解しないままプログラムを作成するなど考えられないと言うことです。すなわち、プログラムの意味を理解すると言うことはそのまま、そのプログラムで実現されるべき機能である外部仕様に対して責任を持つと言うことなのです。
そう言う意味の役割を担ったプログラマでは荷が重すぎると、もし思うなら、プログラマと言う職業を選択せず、直ちに他のやりがいを感じる仕事を選ぶ方が賢明です。逆に、そう言った責任を負うことにこそやりがいを感じて初めて、プログラマと言う職業のすばらしさを実感できるのだと、筆者は信じています。 KAI