擬人化
意味論的に見ると、ジャーゴンの構文の豊かな源泉の一つは、ハードウェアやソフトウェアを擬人化するというハッカー的傾向だ。英語の純粋主義者や学界のコンピューター科学者は、ハードウェアやソフトウェアを擬人化する者をしばしば見下し、この種の振る舞いを素朴な誤解の特徴と見なす。しかしほとんどのハッカーは自由に擬人化し、プログラムの振る舞いを欲求や願望の言葉でしばしば描写する。
したがって、ハードウェアやソフトウェアが、まるでその内部で意図や願望を持った小人たちが互いに語り合っているかのように語られるのはよくあることだ。こうして「The protocol handler got confused」と耳にしたり、プログラムが何かを「are trying」しているとか、あるルーチンについて「its goal in life is to X」と言うのを耳にしたりする。あるいは「You can't run those two cards on the same bus; they fight over interrupt 9.」と。
「... and its poor little brain couldn't understand X, and it died.」のような説明さえ耳にする。物事をこのようにモデル化すると、実際それらが理解しやすくなるように思えることがある。おそらく、本当に複雑な行動レパートリーを持つものを‘モノのようなもの’ではなく‘人のようなもの’と考えるのが本能的に自然だからだろう。
これらのプログラムが実際どう動くかを理解している者にとって、一見これは不条理に思える。ハッカーはこうした現象がどう動くかを最もよく知る人々の一員なので、それらに意識を帰すように見える言葉を使うのは奇妙に思える。したがって、この傾向の背後にある心の持ちようは検討を要する。
この種の用法を理解する鍵は、それが素朴な仕方で行われているのではないということだ。ハッカーは、自分のものに感情移入するという意味でそれを人格化しているのではないし、日々取り組んでいるものが‘生きている’と神秘的に信じているのでもない。それどころか、擬人化するハッカーが表現しているのは、プログラムの振る舞いについての生気論的な見方ではなく、人間の振る舞いについての機械論的な見方なのである。
ほとんどすべてのハッカーは、科学の機械論的・唯物論的な存在論を信奉している(これは実際、相反する宗教的理論を持つ少数派の大半についてさえ真である)。この見方では、人間は生物学的な機械である——意識は興味深く価値ある随伴現象だが、心は、情報処理能力においてコンピューターと根本的には異ならない機構の中に実装されている。
ハッカーはこれをさらに一歩進めて、CHON原子と水の基質と、シリコンと金属の基質の違いは比較的重要でないものだと論じる傾向がある。重要なのは、何かを‘生きている’ものにするのは、情報とパターンの豊かさだ、と。これは裏側から見たアニミズムである。それは、人間もコンピューターもイルカも岩も、情報処理能力に応じた‘意識’のあり方の連続体を示す機械だ、ということを含意する。
ハッカーは人間という機械が意図を持ちうると認めるので、コンピューターのような他の複雑なパターン化されたシステムに意識と意図を帰すのは彼らにとって容易だ。もし意識が機械的なものなら、「The program wants to go into an infinite loop」と言うことは、「I want to go eat some chocolate」と言うことと比べて不条理さにおいて勝りも劣りもしない——そして「The stone, once dropped, wants to move towards the center of the earth」と言うことすら擁護できる。
この観点は学界の哲学にれっきとした仲間を持つ。Daniel Dennettは、振る舞いの説明を3つの構え(スタンス)を用いて整理する。「物理的構え」(説明されるべきものを物理的対象として)、「設計的構え」(説明されるべきものを人工物として)、そして「志向的構え」(説明されるべきものを欲求と意図を持つエージェントとして)である。どの構えが適切かは、抽象的な真理ではなく有用性の問題だ。ハッカーは通常、単純なプログラムを設計的構えから見るが、より複雑なものは志向的構えを使ってモデル化されることが多い。
ソフトウェアやハードウェアの擬人化は、プログラマーとその人工物の間の境界の曖昧化を反映している、とも論じられてきた——人間的な性質はプログラマーに属し、コードはこれらの性質を彼/彼女の代理として表現するにすぎない、と。この見方では、ハッカーがあるコード片について‘got confused’と言うとき、実のところそれは、コンピューターに何をさせたいのかについて彼(または彼女)自身が混乱しており、コードが自然にこの混乱を取り込み、実行されたときにクラッシュその他の誤動作によってプログラマーの混乱を表現した、と言っているのである。
「I got confused」から「It got confused」へとずらすことで、プログラマーは責任を回避しているのではなく、むしろバグを冷静に考察できるように分析的な距離を取っているのだ、ということに注意してほしい。
複雑なシステムを擬人化することは、実のところ謙虚さの表れだ——私たちが理解している(あるいは私たちが発明した)単純な規則が、私たちが完全には理解していない創発的な振る舞いの複雑さを生みうる、と認めるやり方だ——とも示唆されている。
これら3つの説明はすべてハッカーの心理を正確にモデル化しており、競合するものというより補完し合うものと見なされるべきである。