Desenvolver e Download de Software Open Source

View 第一章

category(Tag) tree

file info

category(Tag)
第一章
訳文(draft)
file name
faif_02
última actualização
2002-07-15 12:34
tipo
HTML
editor
八木都志郎
descrição
「Free as in Freedom」の第一章です。
linguagem
Japanese
translate
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> Go to the first, previous, next, last section,table of contents.

1. プリンタがなかったばっかりに

私はギリシア人(Greek)を恐れる。たとえ彼らが贈り物を携えて来たとしても。
--- ヴェルギリウス『アイネーイス』


新品のプリンタが紙づまりになった。またもや。

Richard M. Stallman, a staff software programmer at the Massachusetts Institute of Technology's Artificial Intelligence Laboratory (AI Lab), discovered the malfunction the hard way. An hour after sending off a 50-page file to the office laser printer, Stallman, 27, broke off a productive work session to retrieve his documents. Upon arrival, he found only four pages in the printer's tray. To make matters even more frustrating, the four pages belonged to another user, meaning that Stallman's print job and the unfinished portion of somebody else's print job were still trapped somewhere within the electrical plumbing of the lab's computer network.
マサチューセッツ工科大学の人工知能研究所(AI 研)のソフトウェア・プログラマ、リチャード・M・ストールマンはようやくマシンの不調を発見した。オフィスのレーザープリンタに50ページのファイルを送信してから1時間後、27歳のストールマンは自分の文書を回収しようと仕事の手を休めた。だが、近付いてみると、プリンタのトレーの中にはたった4ページしか見つからない。さらに腹立たしいことに、その4ページは誰か他の人のもので、つまりストールマンの印刷ジョブや他の誰かの残りの印刷は研究所のコンピュータ・ネットワークの配線のどこかにいまだにひっかかったままなのだ。

マシンに待たされるのは、ソフトウェアのプログラマならよくあることだ。だからストールマンもそれほど苦にはしていない。だが、マシンを待つのとマシンの世話を焼くのとでははっきりとした違いがある。プリンタの側に立って紙が一枚また一枚と印刷されて出てくるのを眺めるのはこれが初めてというわけではない。マシンとそれを制御するソフトウェアの効率を上げるため日夜掛かり切りの人間として、ストールマンはそのマシンを開け、中身を見て、問題の根源を見つけたいというごく自然な欲求を覚えた。

残念なことに、コンピューター・プログラマとしてのストールマンの技術は機械工学の世界にまでは及んでいなかった。印刷された文書がしれっとした顔でマシンから吐き出されると、ストールマンは印刷時の紙づまり問題を回避する別の手段をじっくり考える機会を得た。

AI 研のスタッフメンバーが新しいプリンタを心から歓迎したのは、いったいどれくらい前だったろう?ストールマンは思い馳せた。このマシンはゼロックス社からの寄贈品だった。最新のプロトタイプで、人気の高かったゼロックスのコピー機を改良したバージョンだ。たんにコピーを取るだけでなく、コンピューター・ネットワーク越しに繋がったソフトウェアのデータを元に、そのデータをプロの手になるような見栄えのする文書に仕立て上げる。世界的に有名なゼロックスのパロアルト研究所でエンジニアたちによって開発された、単純にいうならばその数年後に他のコンピュータ産業にも根付くことになるデスクトップ・プリンティング革命の初期のスタイルだった。

最高の新機種をいじってみたいという本能的な欲求に動かされ、AI 研のプログラマたちはすぐに新しいマシンを研究所の洗練されたコンピュータのインフラに組み入れた。結果はただちに満足いくものになった。研究所にあった古いレーザープリンタと違って、新しいゼロックスのマシンは速かったのだ。秒毎に飛ぶように印刷され、20分かかっていた印刷が2分になった。新しいマシンはさらに正確な再現性もあった。円は楕円ではなくちゃんと円のように見える。直線は振り幅の小さい波形ではなくちゃんと直線になっていた。

どの点からみても、拒むには惜しい寄贈品だったのだ。

マシンの欠陥が表面化したのは、登場から数週間も経たない頃だった。不具合の中でもひどかったのはマシンに固有の紙づまりの発生率の高さだ。機械いじりの腕に覚えのあるプログラマはすぐに欠陥の真の理由を理解した。コピー機の場合、通常マシンは操作する人間が直接管理する必要がある。もし紙づまりが起きれば、操作する人間がその場に居て直すと見積もって、ゼロックスのエンジニアは自分たちの時間と精力を他の厄介な問題を消すために振り分けたのだ。エンジニアリングの世界では、ユーザー側の努力はシステムに折り込み済のものとされる。

In modifying the machine for printer use, Xerox engineers had changed the user-machine relationship in a subtle but profound way. Instead of making the machine subservient to an individual human operator, they made it subservient to an entire networked population of human operators. Instead of standing directly over the machine, a human user on one end of the network sent his print command through an extended bucket-brigade of machines, expecting the desired content to arrive at the targeted destination and in proper form. It wasn't until he finally went to check up on the final output that he realized how little of the desired content had made it through.
プリンタとして使用するためにマシンを改造するにあたって、ゼロックスのエンジニアたちはユーザとマシンの関係を微妙ではあるが難しいものに変えてしまった。操作する人間の補助をするものから、ネットワークで繋がった全員の仕事をこなすものになったのだ。マシンの側に立っているかわりに、ネットワークの端にいる人間のユーザーマシンを大規模なバケツリレー方式で望みのコンテンツが狙った目的地まで届いて仕上がってくれるのを期待しながら印刷コマンドを送る。希望した文書がほとんど仕上がらなかったのが分かるのは、最後に出力されたものをチェックしに行ってからだ。

ストールマン自身、最初に問題を確認して、改善手段を提案した一人だった。何年か前、研究所がまだ古いプリンタを使っていた時代、ストールマンは同じような問題をプリンタの制御に利用されていた PDP-11 上のソフトウェアの中を開いて解決したことがあった。紙づまりは駆逐できなかったが、 PDP-11 にプリンタを定期的にチェックして研究所のセントラル・コンピュータ PDP-10 にレポートを送信させるコマンドを挿入することは出来た。あるユーザーの怠慢により一連の印刷ジョブが全てダウンしてしまわないよう、彼は PDP-10 がどのユーザーにもプリンタが詰まっているので印刷ジョブは待つようにと知らせるように命令するコマンドも挟んでおいた。このお知らせは、例えば「プリンタに紙が詰まっています。直してください」といったようなシンプルなもので、問題を修復する必要に最も迫られた人に届くため、それなりの時間内に解決される確率が高い。

改良が進むにつれ、ストールマンの方法は遠回しではあるが洗練されたものになった。問題の機械的な部分については直さないが、ユーザーとマシンの間の情報ループを閉じることによって次善の策の役目は果たす。ソフトウェアのコードに追加された数行のおかげで、AI 研の職員はプリンタまで行ったり来たりしてチェックするために毎週費やしていた時間の10分か15分を省くことができるようになった。プログラミングの用語でいうなら、ストールマンの修復方法はネットワーク全体の知恵を寄せ集めて利用するものだ。

「そのメッセージを受け取れば、誰かが直してくれるだろうとはいっていられなくなるんだ」この仕組みを思い出しながらストールマンは言った。「自分がプリンタのところに行かなきゃならない。プリンタにトラブルが起こって1、2分もすれば、メッセージを受け取った2人か3人がやって来てマシンを直す。この2、3人の中の少なくとも1人くらいは、たいてい直し方を知っている」

この手の見事な解決手段は AI 研とそこに生息するプログラマのトレードマークだった。実際、AI 研でも最高のプログラマはプログラマ用語を嫌い、その代わりにもっと俗語めいたハッカーという職業名を好んだ。この仕事名がカバーする活動は非常に多く、クリエイティブで愉快なものから既存のソフトウェアやコンピュータ・システムの改善までのあらゆるところまで及んでいる。だが、この名前が暗に意味しているのは、古風なヤンキー的創意工夫の概念だ。ハッカーになるためには、ソフトウェアのプログラムを書くのはただの始まりに過ぎないという哲学を受け入れなければならない。真のハッカーの技量が試されるのはプログラムの改良なのだ。 (1)


ゼロックスのような大企業が自分たちのマシンやソフトウェアをハッカーたちがいつも集まっている場所に寄贈していのは、主にこの哲学がその理由だった。ハッカーがソフトウェアを改良すれば、企業はそれを借用して販売する市場向けのアップデート版に取り入れることができる。企業の側からすれば、ハッカーは利用可能なコミュニティという資産であり、最小限のコストで利用できる研究開発補助部門だったのだ。

It was because of this give-and-take philosophy that when Stallman spotted the print-jam defect in the Xerox laser printer, he didn't panic. He simply looked for a way to update the old fix or "hack" for the new system. In the course of looking up the Xerox laser-printer software, however, Stallman made a troubling discovery. The printer didn't have any software, at least nothing Stallman or a fellow programmer could read. Until then, most companies had made it a form of courtesy to publish source-code files--readable text files that documented the individual software commands that told a machine what to do. Xerox, in this instance, had provided software files in precompiled, or binary, form. Programmers were free to open the files up if they wanted to, but unless they were an expert in deciphering an endless stream of ones and zeroes, the resulting text was pure gibberish.
ストールマンがゼロックスのレーザープリンタの紙づまり問題を発見したときにパニックを起こさなかったのは、このギブアンドテイクの哲学があったからだ。彼は単純に新しいシステムのために古い改良箇所や「ハック」をアップデートする方法を探そうとした。だが、ゼロックスのレーザープリンタ用ソフトウエアを調べてみると、ストールマンは厄介なことを発見した。プリンタにはソフトウェアがないのだ。とにかく、ストールマンや仲間のプログラマにも読めるものが何もない。それまではどの企業もソフトウェア毎にマシンに命令を伝えるコマンドの書かれたソースコードを読めるテキストファイルを出すくらいのことはしてくれていた。今回、ゼロックスはソフトウェアをコンパイルされた、いわゆるバイナリ形式で提供していたのだ。プログラマは好きなときにファイルを開いても構わなかったが、1と0が延々と続くのを解読する専門家でもない限り、出力されるテキストはまったく訳の分からない代物だった。

Although Stallman knew plenty about computers, he was not an expert in translating binary files. As a hacker, however, he had other resources at his disposal. The notion of information sharing was so central to the hacker culture that Stallman knew it was only a matter of time before some hacker in some university lab or corporate computer room proffered a version of the laser-printer source code with the desired source-code files.
ストールマンはコンピュータの知識は豊富だったが、バイナリファイルを解読するのは専門外だった。だが、ハッカーとして彼には好きにできるリソースがあった。情報の共有という考えはハッカー文化の中心をなすものなので、時間さえ過ぎればどこかの大学の研究所か企業のコンピュータ室のハッカーが立派なソースコードのファイルと一緒にいずれかのバージョンのレーザープリンタのソースコードを提供してくれるだろうと分かっていた。

After the first few printer jams, Stallman comforted himself with the memory of a similar situation years before. The lab had needed a cross-network program to help the PDP-11 work more efficiently with the PDP-10. The lab's hackers were more than up to the task, but Stallman, a Harvard alumnus, recalled a similar program written by programmers at the Harvard computer-science department. The Harvard computer lab used the same model computer, the PDP-10, albeit with a different operating system. The Harvard computer lab also had a policy requiring that all programs installed on the PDP-10 had to come with published source-code files.
最初の何度目かの紙づまりの後で、ストールマンは何年か前にも似たような状況があったことを思い出して気を粉らせた。研究所で PDP-11 をもっと効率よく PDP-10 と連動させるためのクロスネットワークプログラムが必要になったことがあった。研究所のハッカーには手に負えなかったが、ハーバード大学の卒業生だったストールマンはハーバード大のコンピューターサイエンス学部のプログラマが書いた似たようなプログラムがあったのを思い出した。ハーバード大のコンピュータ研究所はオペレーティング・システムは別だが同じ PDP-10 を使っていた。またハーバード・コンピュータ研究所には PDP-10 にインストールされるあらゆるプログラムは公開されたソースコードと一緒でなければならないというポリシーがあった。

Taking advantage of his access to the Harvard computer lab, Stallman dropped in, made a copy of the cross-network source code, and brought it back to the AI Lab. He then rewrote the source code to make it more suitable for the AI Lab's operating system. With no muss and little fuss, the AI Lab shored up a major gap in its software infrastructure. Stallman even added a few features not found in the original Harvard program, making the program even more useful. "We wound up using it for several years," Stallman says.
ハーバードのコンピュータ研究所に出入りできる立場を活かして、ストールマンはちょっと立ち寄ってクロスネットワークのソースコードのコピーを取り、AI 研に戻った。そのとき彼は AI 研のオペレーティング・システムにより適合するようソースコードを書き直した。特にたいしたごたごたもなく、AI 研 はソフトウェア・インフラ格差を埋めることが出来た。ストールマンはさらにオリジナルのハーヴァードのプログラムにはなかった機能をいくつか付け加えて、プログラムをより便利なものに仕上げた。「僕らは大喜びで何年もそいつを使い続けたよ」とストールマンは語っている。

From the perspective of a 1970s-era programmer, the transaction was the software equivalent of a neighbor stopping by to borrow a power tool or a cup of sugar from a neighbor. The only difference was that in borrowing a copy of the software for the AI Lab, Stallman had done nothing to deprive Harvard hackers the use of their original program. If anything, Harvard hackers gained in the process, because Stallman had introduced his own additional features to the program, features that hackers at Harvard were perfectly free to borrow in return. Although nobody at Harvard ever came over to borrow the program back, Stallman does recall a programmer at the private engineering firm, Bolt, Beranek & Newman, borrowing the program and adding a few additional features, which Stallman eventually reintegrated into the AI Lab's own source-code archive.
1970年代のプログラマの見方では、ソフトウェアのやり取りは近所に寄ってお隣から工具や砂糖を借りてくるのに等しい行為だった。唯一の違いは、AI 研のためにソフトウェアをコピーさせてもらうのにストールマンはハーヴァードのハッカーが自分たちのオリジナルのプログラムを使えなくしてしまうことはないという点だけだ。むしろハーヴァードのハッカーはこの場合は得をしているる。なぜなら、ストールマンは自分でそのプログラムに追加の機能を導入し、ハーヴァードのハッカーはそれを完全に自由にまた借りてくることができるのだから。ハーヴァードからは誰もプログラムを借り出しに来た人はいなかったが、民間の建設会社 Bolt, Beranek & Newman のプログラマがやって来てプログラムを借り出し、いくつか機能を追加したものをすぐに AI 研のソースコード・アーカイヴに取り込んだことをストールマンは覚えていた。

"A program would develop the way a city develops," says Stallman, recalling the software infrastructure of the AI Lab. "Parts would get replaced and rebuilt. New things would get added on. But you could always look at a certain part and say, `Hmm, by the style, I see this part was written back in the early 60s and this part was written in the mid-1970s.'"
「プログラムは都市開発みたいに開発されていくものなんだ」AI 研のソフトウェア・インフラを思い起こしながらストールマンは語っている。「あちこちが差し換えられ、再構築されていく。新しいものも追加されていくだろう。でもいつでもどこかを見て『ほう、スタイルからすると、ここは60年代初期に書かれたんだな、それからこっちは70年代中頃のものだ』と分かるものなんだ」

Through this simple system of intellectual accretion, hackers at the AI Lab and other places built up robust creations. On the west coast, computer scientists at UC Berkeley, working in cooperation with a few low-level engineers at AT&T, had built up an entire operating system using this system. Dubbed Unix, a play on an older, more academically respectable operating system called Multics, the software system was available to any programmer willing to pay for the cost of copying the program onto a new magnetic tape and shipping it. Not every programmer participating in this culture described himself as a hacker, but most shared the sentiments of Richard M. Stallman. If a program or software fix was good enough to solve your problems, it was good enough to solve somebody else's problems. Why not share it out of a simple desire for good karma
知を増大させていくこのシンプルな手法を通じて、AI 研やその他の場所にいるハッカーたちは強力な作品を作り上げていた。西海岸では AT&T の下級エンジニアと共同作業していたカリフォルニア大学バークリー校のコンピュータ科学者たちがこの手法でオペレーティング・システムをまるごと完成させた。Unix を模倣して

The fact that Xerox had been unwilling to share its source-code files seemed a minor annoyance at first. In tracking down a copy of the source-code files, Stallman says he didn't even bother contacting Xerox. "They had already given us the laser printer," Stallman says. "Why should I bug them for more?"

When the desired files failed to surface, however, Stallman began to grow suspicious. The year before, Stallman had experienced a blow up with a doctoral student at Carnegie Mellon University. The student, Brian Reid, was the author of a useful text-formatting program dubbed Scribe. One of the first programs that gave a user the power to define fonts and type styles when sending a document over a computer network, the program was an early harbinger of HTML, the lingua franca of the World Wide Web. In 1979, Reid made the decision to sell Scribe to a Pittsburgh-area software company called Unilogic. His graduate-student career ending, Reid says he simply was looking for a way to unload the program on a set of developers that would take pains to keep it from slipping into the public domain. To sweeten the deal, Reid also agreed to insert a set of time-dependent functions---"time bombs" in software-programmer parlance--that deactivated freely copied versions of the program after a 90-day expiration date. To avoid deactivation, users paid the software company, which then issued a code that defused the internal time-bomb feature.

For Reid, the deal was a win-win. Scribe didn't fall into the public domain, and Unilogic recouped on its investment. For Stallman, it was a betrayal of the programmer ethos, pure and simple. Instead of honoring the notion of share-and-share alike, Reid had inserted a way for companies to compel programmers to pay for information access.

As the weeks passed and his attempts to track down Xerox laser-printer source code hit a brick wall, Stallman began to sense a similar money-for-code scenario at work. Before Stallman could do or say anything about it, however, good news finally trickled in via the programmer grapevine. Word had it that a scientist at the computer-science department at Carnegie Mellon University had just departed a job at the Xerox Palo Alto Research Center. Not only had the scientist worked on the laser printer in question, but according to rumor, he was still working on it as part of his research duties at Carnegie Mellon.

Casting aside his initial suspicion, Stallman made a firm resolution to seek out the person in question during his next visit to the Carnegie Mellon campus.

He didn't have to wait long. Carnegie Mellon also had a lab specializing in artificial-intelligence research, and within a few months, Stallman had a business-related reason to visit the Carnegie Mellon campus. During that visit, he made sure to stop by the computer-science department. Department employees directed him to the office of the faculty member leading the Xerox project. When Stallman reached the office, he found the professor working there.

In true engineer-to-engineer fashion, the conversation was cordial but blunt. After briefly introducing himself as a visitor from MIT, Stallman requested a copy of the laser-printer source code so that he could port it to the PDP-11. To his surprise, the professor refused to grant his request.

"He told me that he had promised not to give me a copy," Stallman says.

Memory is a funny thing. Twenty years after the fact, Stallman's mental history tape is notoriously blank in places. Not only does he not remember the motivating reason for the trip or even the time of year during which he took it, he also has no recollection of the professor or doctoral student on the other end of the conversation. According to Reid, the person most likely to have fielded Stallman's request is Robert Sproull, a former Xerox PARC researcher and current director of Sun Laboratories, a research division of the computer-technology conglomerate Sun Microsystems. During the 1970s, Sproull had been the primary developer of the laser-printer software in question while at Xerox PARC. Around 1980, Sproull took a faculty research position at Carnegie Mellon where he continued his laser-printer work amid other projects.

"The code that Stallman was asking for was leading-edge state-of-the-art code that Sproull had written in the year or so before going to Carnegie Mellon," recalls Reid. "I suspect that Sproull had been at Carnegie Mellon less than a month before this request came in."

When asked directly about the request, however, Sproull draws a blank. "I can't make a factual comment," writes Sproull via email. "I have absolutely no recollection of the incident."

With both participants in the brief conversation struggling to recall key details--including whether the conversation even took place--it's hard to gauge the bluntness of Sproull's refusal, at least as recalled by Stallman. In talking to audiences, Stallman has made repeated reference to the incident, noting that Sproull's unwillingness to hand over the source code stemmed from a nondisclosure agreement, a contractual agreement between Sproull and the Xerox Corporation giving Sproull, or any other signatory, access the software source code in exchange for a promise of secrecy. Now a standard item of business in the software industry, the nondisclosure agreement, or NDA, was a novel development at the time, a reflection of both the commercial value of the laser printer to Xerox and the information needed to run it. "Xerox was at the time trying to make a commercial product out of the laser printer," recalls Reid. "They would have been insane to give away the source code."

For Stallman, however, the NDA was something else entirely. It was a refusal on the part of Xerox and Sproull, or whomever the person was that turned down his source-code request that day, to participate in a system that, until then, had encouraged software programmers to regard programs as communal resources. Like a peasant whose centuries--old irrigation ditch had grown suddenly dry, Stallman had followed the ditch to its source only to find a brand-spanking--new hydroelectric dam bearing the Xerox logo.

For Stallman, the realization that Xerox had compelled a fellow programmer to participate in this newfangled system of compelled secrecy took a while to sink in. At first, all he could focus on was the personal nature of the refusal. As a person who felt awkward and out of sync in most face-to-face encounters, Stallman's attempt to drop in on a fellow programmer unannounced had been intended as a demonstration of neighborliness. Now that the request had been refused, it felt like a major blunder. "I was so angry I couldn't think of a way to express it. So I just turned away and walked out without another word," Stallman recalls. "I might have slammed the door. Who knows? All I remember is wanting to get out of there."

Twenty years after the fact, the anger still lingers, so much so that Stallman has elevated the event into a major turning point. Within the next few months, a series of events would befall both Stallman and the AI Lab hacker community that would make 30 seconds worth of tension in a remote Carnegie Mellon office seem trivial by comparison. Nevertheless, when it comes time to sort out the events that would transform Stallman from a lone hacker, instinctively suspicious of centralized authority, to a crusading activist applying traditional notions of liberty, equality, and fraternity to the world of software development, Stallman singles out the Carnegie Mellon encounter for special attention.

"It encouraged me to think about something that I'd already been thinking about," says Stallman. "I already had an idea that software should be shared, but I wasn't sure how to think about that. My thoughts weren't clear and organized to the point where I could express them in a concise fashion to the rest of the world."

Although previous events had raised Stallman's ire, he says it wasn't until his Carnegie Mellon encounter that he realized the events were beginning to intrude on a culture he had long considered sacrosanct. As an elite programmer at one of the world's elite institutions, Stallman had been perfectly willing to ignore the compromises and bargains of his fellow programmers just so long as they didn't interfere with his own work. Until the arrival of the Xerox laser printer, Stallman had been content to look down on the machines and programs other computer users grimly tolerated. On the rare occasion that such a program breached the AI Lab's walls--when the lab replaced its venerable Incompatible Time Sharing operating system with a commercial variant, the TOPS 20, for example--Stallman and his hacker colleagues had been free to rewrite, reshape, and rename the software according to personal taste.

Now that the laser printer had insinuated itself within the AI Lab's network, however, something had changed. The machine worked fine, barring the occasional paper jam, but the ability to modify according to personal taste had disappeared. From the viewpoint of the entire software industry, the printer was a wake-up call. Software had become such a valuable asset that companies no longer felt the need to publicize source code, especially when publication meant giving potential competitors a chance to duplicate something cheaply. From Stallman's viewpoint, the printer was a Trojan Horse. After a decade of failure, privately owned software--future hackers would use the term "proprietary" software--had gained a foothold inside the AI Lab through the sneakiest of methods. It had come disguised as a gift.

That Xerox had offered some programmers access to additional gifts in exchange for secrecy was also galling, but Stallman takes pains to note that, if presented with such a quid pro quo bargain at a younger age, he just might have taken the Xerox Corporation up on its offer. The awkwardness of the Carnegie Mellon encounter, however, had a firming effect on Stallman's own moral lassitude. Not only did it give him the necessary anger to view all future entreaties with suspicion, it also forced him to ask the uncomfortable question: what if a fellow hacker dropped into Stallman's office someday and it suddenly became Stallman's job to refuse the hacker's request for source code?

"It was my first encounter with a nondisclosure agreement, and it immediately taught me that nondisclosure agreements have victims," says Stallman, firmly. "In this case I was the victim. [My lab and I] were victims."

It was a lesson Stallman would carry with him through the tumultuous years of the 1980s, a decade during which many of his MIT colleagues would depart the AI Lab and sign nondisclosure agreements of their own. Because most nondisclosure aggreements (NDAs) had expiration dates, few hackers who did sign them saw little need for personal introspection. Sooner or later, they reasoned, the software would become public knowledge. In the meantime, promising to keep the software secret during its earliest development stages was all a part of the compromise deal that allowed hackers to work on the best projects. For Stallman, however, it was the first step down a slippery slope.

"When somebody invited me to betray all my colleagues in that way, I remembered how angry I was when somebody else had done that to me and my whole lab," Stallman says. "So I said, `Thank you very much for offering me this nice software package, but I can't accept it on the conditions that you're asking for, so I'm going to do without it.'"

As Stallman would quickly learn, refusing such requests involved more than personal sacrifice. It involved segregating himself from fellow hackers who, though sharing a similar distaste for secrecy, tended to express that distaste in a more morally flexible fashion. It wasn't long before Stallman, increasingly an outcast even within the AI Lab, began billing himself as "the last true hacker," isolating himself further and further from a marketplace dominated by proprietary software. Refusing another's request for source code, Stallman decided, was not only a betrayal of the scientific mission that had nurtured software development since the end of World War II, it was a violation of the Golden Rule, the baseline moral dictate to do unto others as you would have them do unto you.

Hence the importance of the laser printer and the encounter that resulted from it. Without it, Stallman says, his life might have followed a more ordinary path, one balancing the riches of a commercial programmer with the ultimate frustration of a life spent writing invisible software code. There would have been no sense of clarity, no urgency to address a problem others weren't addressing. Most importantly, there would have been no righteous anger, an emotion that, as we soon shall see, has propelled Stallman's career as surely as any political ideology or ethical belief.

"From that day forward, I decided this was something I could never participate in," says Stallman, alluding to the practice of trading personal liberty for the sake of convenience--Stallman's description of the NDA bargain--as well as the overall culture that encouraged such ethically suspect deal-making in the first place. "I decided never to make other people victims just like I had been a victim."

Go to the first, previous, next, last section,table of contents.