まつもとゆきひろのハッカーズライフ:第1回 ハッカーとの遭遇 (2/2)


前のページへ 1|2       

あなたはハッカーか

 さて、「あなた」はハッカーでしょうか。こんなサイト(といっては失礼ですね)に訪れるくらいですから、あなたはきっとコンピュータのことが好きで、プログラミングにも関心があるでしょう。また、単なるコンピュータユーザーにとどまらず(そうだったら、Windows雑誌を読んでいるはずです)、ハッカー的特質を備えたUNIX系OSのユーザーであるということは、あなたがハッカーである可能性は十分に高いと言っても良いと思います。

 わたしの仮説によると、ハッカー的素質を持つかどうかは、以下の2つの条件を満たしているかどうかで決まります。

 1つは「クリエイターであるかどうか」です。マニア的要素を持つ人材は「コレクター」タイプと「クリエイター」タイプに分かれる傾向があります。もちろん、両方の特質を備えている人もいますが、この場合問題になるのは「プログラミングに対してどちらがより強く表れるか」です。コレクタータイプはマシンスペックや最新の機器に関心を持ち、コンピュータやソフトウェアの使い方には関心を寄せますが、クリエイタータイプは「ないなら作ってしまおう」、「ここが気に入らないから直そう」などと自分でばりばり「世界」を変えてしまいます。ですから、自分の好みにいろいろ設定できるようなソフトウェア、特にプログラミングできるようなソフトウェアを好みます。「もの作り」への情熱、それがハッカー的素質の第1要素ではないでしょうか。

 もう1つは「ブレーキが壊れていること」です。こういう言い方は変かもしれませんが、わたしが知っているハッカーのほとんどは、何らかの形でブレーキが壊れています。普通の人が「あ、これ無理そう、やめよう」と思うところで、ハッカーは「やればできるかも、やってみよう」と思うようです。その理由は、単なる無知だったり、無謀、根拠のない自信、あるいは人並み外れた能力だったりするのですが、とにかく人よりはあきらめが悪い、遅い傾向が見受けられます。だからこそ人のできないことができたりするわけです。最も、いつも成功するというわけではありません。しかし、ハッカー予備軍は人知れぬ失敗を繰り返しつつ、いつかハッカーへと成長するのです。

ハッカー三大美徳

 今や知らぬ人などいないスクリプト言語であるPerlの作者、ラリー・ウォール(Larry Wall)は、当代一流のハッカーです。彼によれば、プログラマーの三大美徳は、

  • 無精
  • 短気
  • 傲慢

なのだそうです。もちろん、ここでの「プログラマー」はハッカー的特質を備えた人のことです。

 しかし、「無精」だの「短気」だの「傲慢」など、どう考えても短所にしか思えないような特質が「美徳」とはいったいどういうことでしょう。ラリー自身の言葉を引用すれば、これらの定義はリスト2のようになっています。「楽をするためには苦労をいとわない」という変な話なのですが、ハッカーは自分の知的欲求を満たさないことには指一本動かすのも嫌がる一方で、自分のやりたいことにはどんな苦労も苦労と思わない傾向があります。また、短気と傲慢のせいで、自分がコンピュータのために働かされていることを嫌います。コンピュータに与えるデータを作るために機械的作業を繰り返すくらいなら、機械的作業をコンピュータにやらせるスクリプトを作ろうとします。あるいは、今後そのような作業を一切しなくても良いようなツールの開発を開始するかもしれません。普通の人には本末転倒に見えるかもしれません。でも、それがハッカーなのです。

 この連載では、そんなハッカーたちの生態や心理を観察していこうと思います。ハッカーの生き方は、あなたがより良いプログラマーになるのに役立つかもしれません。保証はできませんけど。

  • 無精(laziness)

トータルで見たエネルギーの支出を減らすために、多大な努力をするようにあなたを駆り立てる性質。こうして労力を省くために書いたプログラムは他人も使うようになり、そのプログラムに関する質問にいちいち答えずにすますためにドキュメントを書くようになる。そのために、プログラマーにとって最も重要な素質である。またそれゆえ、この本が存在するのである。

  • 短気(impatience)

コンピュータがサボっているときに感じる怒り。あなたの指令に反応するだけでなく、実際に指令を予測する──あるいは、少なくともそのようなふりをする──プログラムを書く原動力になる。それゆえに、プログラマーにとって2番目に重要な素質である。

  • 傲慢(hubris)

ゼウスの怒りに触れるほど、プライドが高いこと。また、他人にケチをつけられないようなプログラムを書く(そして維持する)ための原動力になるもの。それゆえ、プログラマーにとって3番目に重要な素質である。


リスト2 ハッカー三大美徳(『プログラミングPerl』、オライリー・ジャパン、ISBN4-8731-1096-3の掲載要旨)

本記事は、オープンソースマガジン2005年4月号「まつもとゆきひろのハッカーズライフ」を再構成したものです。


前のページへ 1|2       

Copyright© 2010 ITmedia, Inc. All Rights Reserved.




キャリアアップ



エンタープライズ・ピックアップ

news004.jpg 世界で勝つ 強い日本企業のつくり方:利用契約の検討――グローバルクラウドで失敗しないために(前編)
2010年以降、クラウドサービスの利用がさらに加速する。サービスを利用する企業はプロバイダーのデータセンターに預けた自社情報を保護するために、法的な要素を理解しておかなければならない。企業が注意を払うべき法的な検討事項を整理する。

news001.jpg IT投資の新方程式:「Twitter使ってます」――現役MS社員が“社員力”を語る(前編)
マイクロソフトが掲げるプロモーションメッセージ「社員にチカラを。ITで企業力を。(以下、BIEB)」からは、ITで社員の生産性を向上することが業績の拡大につながる、といったニュアンスを感じる。そこで気になるのが「じゃあ、マイクロソフトの社員自身はどうなのよ?」ということ。3人の現役MS社員により実態が明らかになる……?

news010.jpg 産業構造を変えるか:「住宅クラウド」の衝撃
住宅都市工学研究所が進める「住宅クラウド」は、クラウドが企業のIT領域にとどまらず、ビジネスのやり方自体を変える可能性を示している。

news010.jpg オルタナティブな生き方 栗原進さん:ネットでリアルを楽しくしたい
SE出身の企業広報マンでありながら、趣味は落語で憧れの人はインディ・ジョーンズとアナログ全開の栗原さんに、ブログを書く理由やネットからはじまるコミュニケーションについて伺った。

news001.jpg 最強最速アルゴリズマー養成講座:トップクラスだけが知る「このアルゴリズムがすごい」――「探索」基礎最速マスター
プログラミングにおける重要な概念である「探索」を最速でマスターするために、今回は少し応用となる探索手法などを紹介しながら、その実践力を育成します。問題をグラフとして表現し、効率よく探索する方法をぜひ日常に生かしてみましょう。