Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
c28614e841
|
|||
0b31cae82d
|
108
chap06.tex
108
chap06.tex
@ -7,117 +7,113 @@
|
|||||||
%% no Back-Cover Texts. A copy of the license is included in the
|
%% no Back-Cover Texts. A copy of the license is included in the
|
||||||
%% file called ``gfdl.tex''.
|
%% file called ``gfdl.tex''.
|
||||||
|
|
||||||
|
\chapter{Коммуна Emacs}
|
||||||
|
|
||||||
\chapter{The Emacs Commune}
|
Лаборатория ИИ в 70-х годах была особенным местом, в этом сходились все. Здесь проходили передовые исследования, здесь работали сильнейшие специалисты, так что в компьютерном мире Лаборатория была постоянно на слуху. А её хакерская культура и мятежный дух создавали вокруг неё ореол священного места. Только когда из Лаборатории ушли многие учёные и \enquote{рок-звёзды программирования}, хакеры ощутили всю мифологичность и эфемерность того мира, в котором они жили.
|
||||||
|
|
||||||
The AI Lab of the 1970s was by all accounts a special place. Cutting-edge projects and top-flight researchers gave it an esteemed position in the world of computer science. The internal hacker culture and its anarchic policies lent a rebellious mystique as well. Only later, when many of the lab's scientists and software superstars had departed, would hackers fully realize the unique and ephemeral world they had once inhabited.
|
\enquote{Лаборатория была для нас чем-то вроде Эдема, -- рассказывает Столлман в статье \textit{Forbes} 1998 года, -- никому даже в голову не приходило отгородиться от других сотрудников вместо того, чтобы работать сообща}.\endnote{Josh McHugh, \enquote{For the Love of Hacking,} \textit{Forbes} (August 10, 1998), \url{http://www.forbes.com/forbes/1998/0810/6203094a.html}.}
|
||||||
|
|
||||||
``It was a bit like the Garden of Eden,'' says Stallman, summing up the lab and its software-sharing ethos in a 1998 \textit{Forbes} article. ``It hadn't occurred to us not to cooperate.''\endnote{See Josh McHugh, ``For the Love of Hacking,'' \textit{Forbes} (August 10, 1998), \url{http://www.forbes.com/forbes/1998/0810/6203094a.html}.}
|
Такие описания в духе мифологии подчёркивают важный факт: 9 этаж Техносквера был для многих хакеров не только рабочим местом, но и родным домом.
|
||||||
|
|
||||||
Such mythological descriptions, while extreme, underline an important fact. The ninth floor of 545 Tech Square was more than a workplace for many. For hackers such as Stallman, it was home.
|
Слово \enquote{дом} использовал сам Ричард Столлман, а мы прекрасно знаем, насколько точен и осторожен он в высказываниях. Пройдя через \enquote{холодную войну} с собственными родителями, Ричард до сих пор считает, что до Карриер-Хауса, его Гарвардского общежития, родного дома у него просто не было. По его словам, в гарвардские годы его мучил только один страх -- оказаться исключённым. Я выразил сомнение, что у такого блестящего студента, как Столлман, был риск вылететь. Но Ричард напомнил мне о своих характерных проблемах с дисциплиной.
|
||||||
|
|
||||||
The word ``home'' is a weighted term in the Stallman lexicon. In a pointed swipe at his parents, Stallman, to this day, refuses to acknowledge any home before Currier House, the dorm he lived in during his days at Harvard. He has also been known to describe leaving that home in tragicomic terms. Once, while describing his years at Harvard, Stallman said his only regret was getting kicked out. It wasn't until I asked Stallman what precipitated his ouster, that I realized I had walked into a classic Stallman setup line.
|
\enquote{В Гарварде очень ценят дисциплину, и если ты пропускаешь пары, тебя быстро попросят на выход}, -- сказал он.
|
||||||
|
|
||||||
``At Harvard they have this policy where if you pass too many classes they ask you to leave,'' Stallman says.
|
После окончания Гарварда Столлман лишился права на общежитие, а желания возвращаться к родителям в Нью-Йорк у него никогда и не было. Так что он пошёл по дорожке, проторённой Гринблаттом, Госпером, Сассменом и многими другими хакерами -- поступил в аспирантуру МТИ, снял рядом комнату в Кембридже, и большую часть времени стал проводить в Лаборатории ИИ. В своей речи 1986 года Ричард так описал этот период:
|
||||||
|
|
||||||
With no dorm and no desire to return to New York, Stallman followed a path blazed by Greenblatt, Gosper, Sussman, and the many other hackers before him. Enrolling at MIT as a grad student, Stallman rented a room in an apartment in nearby Cambridge but soon viewed the AI Lab itself as his de facto home. In a 1986 speech, Stallman recalled his memories of the AI Lab during this period:
|
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
I may have done a little bit more living at the lab than most people, because every year or two for some reason or other I'd have no apartment and I would spend a few months living at the lab. And I've always found it very comfortable, as well as nice and cool in the summer. But it was not at all uncommon to find people falling asleep at the lab, again because of their enthusiasm; you stay up as long as you possibly can hacking, because you just don't want to stop. And then when you're completely exhausted, you climb over to the nearest soft horizontal surface. A very informal atmosphere.\endnote{See Stallman (1986).}
|
Наверное, я немного больше других имею оснований сказать, что жил в Лаборатории, потому что каждый год-два я по разным причинам лишался жилья, и в общем счёте я прожил в Лаборатории несколько месяцев. И мне там всегда было очень комфортно, особенно в жару летом, потому что внутри было прохладно. Но вообще это было в порядке вещей, что люди ночевали в Лаборатории, хотя бы из-за бешеного энтузиазма, что владел тогда всеми нами. Хакер порой просто не мог остановиться и работал за компьютером до полного истощения, после чего отползал на ближайшую мягкую горизонтальную поверхность. Словом, очень непринуждённая, домашняя атмосфера.\endnote{Stallman (1986).}
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
The lab's home-like atmosphere could be a problem at times. What some saw as a dorm, others viewed as an electronic opium den. In the 1976 book \textit{Computer Power and Human Reason}, MIT researcher Joseph Weizenbaum offered a withering critique of the ``computer bum,'' Weizenbaum's term for the hackers who populated computer rooms such as the AI Lab. ``Their rumpled clothes, their unwashed hair and unshaved faces, and their uncombed hair all testify that they are oblivious to their bodies and to the world in which they move,'' Weizenbaum wrote. ``[Computer bums] exist, at least when so engaged, only through and for the computers.''\endnote{See Joseph Weizenbaum, \textit{Computer Power and Human Reason: From Judgment to Calculation} (W. H. Freeman, 1976): 116.}
|
Но эта домашняя атмосфера порой создавала проблемы. В том, что некоторые считали домом, другие видели притон электронного опиума. В книге \enquote{Сила компьютера и мотивация человека} научный сотрудник МТИ Джозеф Вейзенбаум в резком тоне раскритиковал \enquote{компьютерный взрыв} -- так он назвал заселение хакерами компьютерных центров вроде Лаборатории ИИ. \enquote{Их мятая одежда, немытые волосы и небритые лица говорят о том, что они полностью забросили себя в пользу компьютеров, и не хотят видеть, к чему это может их привести, -- писал Вейзенбаум, -- эти компьютерные бичи живут только ради компьютеров}. \endnote{Joseph Weizenbaum, \textit{Computer Power and Human Reason: From Judgment to Calculation} (W. H. Freeman, 1976): 116.}
|
||||||
|
|
||||||
Almost a quarter century after its publication, Stallman still bristles when hearing Weizenbaum's ``computer bum'' description, discussing it in the present tense as if Weizenbaum himself was still in the room. ``He wants people to be just professionals, doing it for the money and wanting to get away from it and forget about it as soon as possible,'' Stallman says. ``What he sees as a normal state of affairs, I see as a tragedy.''
|
Спустя почти четверть века Столлман всё ещё выходит из себя, когда слышит выражение Вейзенбаума: \enquote{компьютерные бичи}. \enquote{Он хочет, чтобы мы все были всего лишь профессионалами -- делали работу ради денег, в означенное время вставали и уходили, выкинув из головы всё, что с нею связано, -- говорит Столлман так яростно, будто Вейзенбаум рядом и может его услышать, -- но то, что он считает нормальным порядком вещей, я считаю удручающей трагедией}.
|
||||||
|
|
||||||
Hacker life, however, was not without tragedy. Stallman characterizes his transition from weekend hacker to full-time AI Lab denizen as a series of painful misfortunes that could only be eased through the euphoria of hacking. As Stallman himself has said, the first misfortune was his graduation from Harvard. Eager to continue his studies in physics, Stallman enrolled as a graduate student at MIT. The choice of schools was a natural one. Not only did it give Stallman the chance to follow the footsteps of great MIT alumni: William Shockley ('36), Richard P. Feynman ('39), and Murray Gell-Mann ('51), it also put him two miles closer to the AI Lab and its new PDP-10 computer. ``My attention was going toward programming, but I still thought, well, maybe I can do both,'' Stallman says.
|
Впрочем, жизнь хакера тоже не лишена трагедии. Сам Ричард утверждает, что его превращение из хакера-по-выходным в хакера-24/7 -- результат целой череды болезненных эпизодов юношества, от которых получалось спастись лишь в эйфории хакерства. Первой такой болью стало окончание Гарварда, оно резко меняло привычный, спокойный уклад жизни. Столлман поступил в аспирантуру МТИ на отделение физики, чтобы пойти по стопам великих Ричарда Фейнмана, Вильяма Шокли и Мюррея Гел-Манна, и чтобы не пришлось ездить 2 лишних мили до Лаборатории ИИ и новенького PDP-10. \enquote{Почти всё своё внимание я по-прежнему уделял программированию, но думал, может, попутно смогу заниматься физикой}, -- рассказывает Столлман.
|
||||||
|
|
||||||
Toiling in the fields of graduate-level science by day and programming in the monastic confines of the AI Lab by night, Stallman tried to achieve a perfect balance. The fulcrum of this geek teeter-totter was his weekly outing with the Folk-Dance Club, his one social outlet that guaranteed at least a modicum of interaction with the opposite sex. Near the end of that first year at MIT, however, disaster struck. A knee injury forced Stallman to stop dancing. At first, Stallman viewed the injury as a temporary problem; he went to dancing and chatted with friends while listening to the music he loved. By the end of the summer, when the knee still ached and classes reconvened, Stallman began to worry. ``My knee wasn't getting any better,'' Stallman recalls, ``which meant I had to expect to be unable to dance, permanently. I was heartbroken.''
|
Изучая физику днём и хакерствуя ночью, Ричард старался достичь идеального баланса. Точкой опоры этих гиковских качелей были еженедельные встречи клуба народных танцев. Это была его единственная социальная связь с противоположным полом и вообще миром обычных людей. Однако ближе к концу первого курса в МТИ случилось несчастье -- Ричард повредил колено и не смог танцевать. Он думал, что это временно, и продолжал ходить в клуб, слушать музыку, болтать с друзьями. Но кончилось лето, колено всё ещё болело и нога плохо действовала. Тогда Столлман заподозрил неладное и забеспокоился. \enquote{Я понял, что лучше уже не станет, -- вспоминает он, -- и что я больше никогда не смогу танцевать. Меня это просто убило}.
|
||||||
|
|
||||||
With no dorm and no dancing, Stallman's social universe imploded. Dancing was the only situation in which he had found success in meeting women and occasionally even dating them. No more dancing ever was painful enough, but it also meant, it seemed, no more dates ever.
|
Без общежития Гарварда и без танцев вселенная социальной жизни Столлмана тут же схлопнулась. Танцы -- единственное, что не только связывало его с людьми, но и давало реальную возможность встречаться с женщинами. Нет танцев -- нет свиданий, и это особенно сильно расстроило Ричарда.
|
||||||
|
|
||||||
``I felt basically that I'd lost all my energy,'' Stallman recalls. ``I'd lost my energy to do anything but what was most immediately tempting. The energy to do something else was gone. I was in total despair.''
|
\enquote{Большую часть времени я был совершенно подавлен, -- описывает Ричард этот период, -- я ничего не мог и не хотел, кроме хакерства. Полнейшее отчаяние}.
|
||||||
|
|
||||||
Stallman retreated from the world even further, focusing entirely on his work at the AI Lab. By October, 1975, he dropped out of MIT and out of physics, never to return to studies. Software hacking, once a hobby, had become his calling.
|
Он почти перестал пересекаться с миром, полностью уйдя в работу. К октябрю 1975 года он фактически забросил физику и учёбу в МТИ. Программирование из хобби превратилось в главное и единственное занятие всей жизни.
|
||||||
|
|
||||||
Looking back on that period, Stallman sees the transition from full-time student to full-time hacker as inevitable. Sooner or later, he believes, the siren's call of computer hacking would have overpowered his interest in other professional pursuits. ``With physics and math, I could never figure out a way to contribute,'' says Stallman, recalling his struggles prior to the knee injury. ``I would have been proud to advance either one of those fields, but I could never see a way to do that. I didn't know where to start. With software, I saw right away how to write things that would run and be useful. The pleasure of that knowledge led me to want to do it more.''
|
Сейчас Ричард говорит, что это было неизбежно. Рано или поздно зов сирен хакерства пересилил бы все остальные влечения. \enquote{В математике и физике у меня не получалось создать что-то своё, я даже не представлял себе, как это делается. Я только комбинировал уже созданное, и меня это не устраивало. В программировании же я сразу понял, как создавать новые вещи, и самое главное -- ты сразу видишь, что они работают, и что они полезны. Это приносит огромное удовольствие, и программировать хочется снова и снова}.
|
||||||
|
|
||||||
Stallman wasn't the first to equate hacking with pleasure. Many of the hackers who staffed the AI Lab boasted similar, incomplete academic résumés. Most had come in pursuing degrees in math or electrical engineering only to surrender their academic careers and professional ambitions to the sheer exhilaration that came with solving problems never before addressed. Like St. Thomas Aquinas, the scholastic known for working so long on his theological summae that he sometimes achieved spiritual visions, hackers reached transcendent internal states through sheer mental focus and physical exhaustion. Although Stallman shunned drugs, like most hackers, he enjoyed the ``high'' that came near the end of a 20-hour coding bender.
|
Столлман не первый, кто связывает хакерство с сильнейшим удовольствием. Многие хакеры Лаборатории ИИ тоже могут похвастаться заброшенной учёбой и недополученными степенями в математике или электротехнических областях -- только потому, что в чистом восторге программирования утонули все академические амбиции. Говорят, что Фома Аквинский своими фанатичными занятиями схоластикой доводил себя до видений и ощущения бога. Хакеры достигали схожих состояний на грани неземной эйфории после многочасовой концентрации на виртуальных процессах. Наверное, поэтому Столлман и большинство хакеров избегали наркотиков -- после часов двадцати хакерства они были всё равно что \enquote{под кайфом}.
|
||||||
|
|
||||||
Perhaps the most enjoyable emotion, however, was the sense of personal fulfillment. When it came to hacking, Stallman was a natural. A childhood's worth of late-night study sessions gave him the ability to work long hours with little sleep. As a social outcast since age 10, he had little difficulty working alone. And as a mathematician with a built-in gift for logic and foresight, Stallman possessed the ability to circumvent design barriers that left most hackers spinning their wheels.
|
Но ещё приятнее было чувствовать себя успешным в любимой области. Хакерство было естественным продолжением Столлмана. В детстве он привык учить уроки по ночам, так что ему нужно было совсем немного времени для сна. Долгие годы на положении изгоя приучили его работать в одиночку. А мощное математическое мышление позволяло ему заранее видеть трудности и изящно обходить их на полном ходу, тогда как многие другие хакеры начинали буксовать.
|
||||||
|
|
||||||
``He was special,'' recalls Gerald Sussman, an AI Lab faculty member and (since 1985) board member of the Free Software Foundation. Describing Stallman as a ``clear thinker and a clear designer,'' Sussman invited Stallman to join him in AI research projects in 1973 and 1975, both aimed at making AI programs that could analyze circuits the way human engineers do it. The project required an expert's command of Lisp, a programming language built specifically for AI applications, as well as understanding (supplied by Sussman) of how a human might approach the same task. The 1975 project pioneered an AI technique called dependency-directed backtracking or truth maintenance, which consists of positing tentative assumptions, noticing if they lead to contradictions, and reconsidering the pertinent assumptions if that occurs.
|
\enquote{У Ричарда феноменальный интеллект. Он очень ясно мыслит и конструирует стройные системы}, -- говорит Джеральд Сассмен, сотрудник Лаборатории и с 1985 года -- участник фонда свободного ПО. Оценив Столлмана по достоинству, он приглашал его работать в исследовательских ИИ-проектах в 1973 и 1975 году. Там требовались глубокие познания языка LISP, а также понимание, как вообще можно подойти к задаче. В результате проекта 1975 года появился ИИ, основанный на откате с учётом зависимостей -- проверке высказываний на противоречия и их решении в случае обнаружения таковых.
|
||||||
|
|
||||||
When he wasn't working on official projects such as these, Stallman devoted his time to pet projects. It was in a hacker's best interest to improve the lab's software infrastructure, and one of Stallman's biggest pet projects during this period was the lab's editor program TECO.
|
В свободное от официальной работы время Столлман занимался личными проектами. Одним из главных желаний Ричарда было усовершенствовать программную инфраструктуру Лаборатории, в частности -- доработать текстовый редактор TECO.
|
||||||
|
|
||||||
The story of Stallman's work on TECO during the 1970s is inextricably linked with Stallman's later leadership of the free software movement. It is also a significant stage in the history of computer evolution, so much so that a brief recapitulation of that evolution is necessary. During the 1950s and 1960s, when computers were first appearing at universities, computer programming was an incredibly abstract pursuit. To communicate with the machine, programmers created a series of punch cards, with each card representing an individual software command. Programmers would then hand the cards over to a central system administrator who would then insert them, one by one, into the machine, waiting for the machine to spit out a new set of punch cards, which the programmer would then decipher as output. This process, known as ``batch processing,'' was cumbersome and time consuming. It was also prone to abuses of authority. One of the motivating factors behind hackers' inbred aversion to centralization was the power held by early system operators in dictating which jobs held top priority.
|
Эпопея Столлмана и TECO 70-х годов тесно связана с последующим основанием движения свободного софта. Это очень важный эпизод, так что стоит рассказать о нём подробнее. Прежде всего, нужно понять, что нынешняя лёгкость и простота написания текстов и программ на компьютерах была далеко не всегда. В 50-х, 60-х годах, когда компьютеры впервые появились в университетах, компьютерное программирование было очень абстрактным, долгим и утомительным занятием. Взаимодействие с компьютером проходило через огромные наборы перфокарт, на которых программист набирал программу, определённым образом пробивая отверстия на каждой перфокарте. Затем он передавал перфокарты системному администратору, тот вставлял их одну за одной в компьютер, ждал конца вычислений, получал перфокарты с набранным на них выводом программы и отдавал программисту. Этот процесс назывался \enquote{пакетной обработкой} и был очень медленным. К тому же, многие системные администраторы злоупотребляли своим положением, произвольно меняя очередь обработки или вовсе отказывая программистам. Именно из-за этого многие ранние хакеры возненавидели власть администраторов.
|
||||||
|
|
||||||
In 1962, computer scientists and hackers involved in MIT's Project MAC, an early forerunner of the AI Lab, took steps to alleviate this frustration. Time-sharing, originally known as ``time stealing,'' made it possible for multiple programs to take advantage of a machine's operational capabilities. Teletype interfaces also made it possible to communicate with a machine not through a series of punched holes but through actual text. A programmer typed in commands and read the line-by-line output generated by the machine.
|
В 1962 году хакеры и научные сотрудники, привлечённые к проекту MAC в Лаборатории ИИ, взялись за эту проблему. Принцип разделения времени, который поначалу называли \enquote{похищением времени}, делал возможным выполнять на компьютере сразу несколько процессов. Для вывода результатов приспособили телетайпы, чтобы программист сразу мог читать нормальный текст, а не расшифровывать таблицы с пробитыми отверстиями. Программист сам набирал команды и читал построчный текстовый вывод.
|
||||||
|
|
||||||
During the late 1960s, interface design made additional leaps. In a famous 1968 lecture, Doug Engelbart, a scientist then working at the Stanford Research Institute, unveiled a prototype of the modern graphical interface. Rigging up a television set to the computer and adding a pointer device which Engelbart dubbed a ``mouse,'' the scientist created a system even more interactive than the time-sharing system developed at MIT. Treating the video display like a high-speed printer, Engelbart's system gave a user the ability to move the cursor around the screen and see the cursor position updated by the computer in real time. The user suddenly had the ability to position text anywhere on the screen.
|
На исходе десятилетия в интерфейсах произошёл качественный скачок -- в 1968 году Дуглас Энгельбарт, учёный Стэнфордского института, представил прототип графического интерфейса. Подключив к компьютеру телевизор и специальный манипулятор, называнный \enquote{мышью}, Энгельбарт показал совершенно недосягаемый уровень интерактивности -- с компьютером можно было работать в режиме реального времени. Пользователь мог в любой момент добавить, изменить, удалить текст в любом месте экрана.
|
||||||
|
|
||||||
Such innovations would take another two decades to make their way into the commercial marketplace. Still, by the 1970s, video screens had started to replace teletypes as display terminals, creating the potential for full-screen -- as opposed to line-by-line -- editing capabilities.
|
Это изобретение могло бы ещё два десятка лет пробиваться на рынок, но уже в 70-х годах телеэкраны вовсю начали вытеснять телетайпы, реализуя полноэкранное редактирование вместо построчного.
|
||||||
|
|
||||||
One of the first programs to take advantage of this full-screen capability was the MIT AI Lab's TECO. Short for Text Editor and COrrector, the program had been upgraded by hackers from an old teletype line editor for the lab's PDP-6 machine.\endnote{According to the \textit{Jargon File}, TECO's name originally stood for Tape Editor and Corrector. See \url{http://www.catb.org/jargon/html/T/TECO.html}.}
|
TECO (сокращение от слов \enquote{текстовый редактор и корректор}) стал одной из первых программ с поддержкой полноэкранного редактирования. Её сделали из старого построчного редактора, разработанного под телетайпы на PDP-6. \endnote{Согласно \textit{Jargon File}, TECO поначалу означал \enquote{Tape Editor and Corrector\enquote{, т.е. ленточный редактор, а не текстовый.}}}
|
||||||
|
|
||||||
TECO was a substantial improvement over old editors, but it still had its drawbacks. To create and edit a document, a programmer had to enter a series of commands specifying each edit. It was an abstract process. Unlike modern word processors, which update text with each keystroke, TECO demanded that the user enter an extended series of editing instructions followed by an ``end of command string'' sequence just to change the text. Over time, a hacker grew proficient enough to make large changes elegantly in one command string, but as Stallman himself would later point out, the process required ``a mental skill like that of blindfold chess.''\endnote{See Richard Stallman, ``EMACS: The Extensible, Customizable, Display Editor,'' AI Lab Memo (1979). An updated HTML version of this memo, from which I am quoting, is available at \url{http://www.gnu.org/software/emacs/emacs-paper.html}.}
|
Этот редактор был мощнее и удобнее прежних, но всё ещё недостаточно удобным и мощным. Например, чтобы создать документ и начать работать над ним, нужно было ввести целую серию команд и символ конца строки. TECO не умел реагировать на каждое нажатие клавиши, как делают сегодняшние текстовые редакторы. Опытные хакеры наловчились вводить множество команд одной строкой, но назвать это удобным язык не поворачивался. Столлман сравнивал это с \enquote{игрой в шахматы с завязанными глазами}. \endnote{Источник: Richard Stallman, \enquote{EMACS: The Extensible, Customizable, Display Editor,} AI Lab Memo (1979), \url{http://www.gnu.org/software/emacs/emacs-paper.html}}.
|
||||||
|
|
||||||
To facilitate the process, AI Lab hackers had built a system that displayed both the text and the command string on a split screen. Despite this innovative hack, editing with TECO still required skill and planning.
|
Для упрощения работы хакеры Лаборатории ИИ изменили программу так, чтобы она делила экран на 2 части, в одной отображался текст, в другой -- командная строка. Но даже с этой удобной функцией работа в TECO была далека от комфортной.
|
||||||
|
|
||||||
TECO wasn't the only full-screen editor floating around the computer world at this time. During a visit to the Stanford Artificial Intelligence Lab in 1976, Stallman encountered an edit program named E. The program contained an internal feature, which allowed a user to update display text after each command keystroke. In the language of 1970s programming, E was one of the first rudimentary WYSIWYG editors. Short for ``what you see is what you get,'' WYSIWYG meant that a user could manipulate the file by moving through the displayed text, as opposed to working through a back-end editor program.''\endnote{See Richard Stallman, ``Emacs the Full Screen Editor'' (1987), \url{http://www.lysator.liu.se/history/garb/txt/87-1-emacs.txt}.}
|
TECO был не единственной программой с поддержкой полноэкранного редактирования. Когда Столлман посетил лабораторию информатики Стэнфорда в 1976 году, он увидел там редактор, который назывался просто Е. В нём была функция обновления экрана при нажатии на определённую клавишу. В мире программирования редактор Е был одним из первых, что работал по принципу \enquote{что ты видишь, то и получаешь} (WYSIWYG). Этот принцип позволял работать с файлом напрямую, а не через посредника, которому нужно отдавать команды. \endnote{Richard Stallman, \enquote{Emacs the Full Screen Editor} (1987)}.
|
||||||
|
|
||||||
Impressed by the hack, Stallman looked for ways to expand TECO's functionality in similar fashion upon his return to MIT. He found a TECO feature called Control-R, written by Carl Mikkelson and named after the two-key combination that triggered it. Mikkelson's hack switched TECO from its usual abstract command-execution mode to a more intuitive keystroke-by-keystroke mode. The only flaws were that it used just five lines of the screen and was too inefficient for real use. Stallman reimplemented the feature to use the whole screen efficiently, then
|
Впечатлённый этим изящным хаком, Столлман по возвращении в МТИ задумался о том, чтобы улучшить TECO в похожем ключе. В коде редактора он нашёл функцию Control-R, написанную Карлом Миккельсоном, которая вызывалась нажатием одноимённых клавиш. Эта функция переключала TECO в более интерактивный режим, но ограничивалась только 5 строками, и потому не давала заметной разницы с обычным режимом. Столлман отредактировал функцию так, чтобы можно было использовать весь экран, и расширил её одной небольшой, но очень мощной возможностью задавать произвольные команды TECO на произвольные комбинации клавиш -- то есть, добавил в редактор так называемые \enquote{макросы}. У опытных пользователей TECO уже скопились файлы с самыми актуальными и полезными командами, так что Ричард в своём хаке сделал возможным подключать и эти файлы в качестве макросов. В результате получился полноценный WYSIWYG-редактор, который можно было ещё и программировать. \enquote{Это был прорыв}, -- говорит Гай Стил, один из тогдашних хакеров Лаборатории. \endnote{\textit{Ibid.}}
|
||||||
extended it in a subtle but significant way. He made it possible to attach TECO command strings, or ``macros,'' to keystrokes. Advanced TECO users already saved macros in files; Stallman's hack made it possible to call them up fast. The result was a user-programmable WYSIWYG editor. ``That was the real breakthrough,'' says Guy Steele, a fellow AI Lab hacker at the time.\endnote{\textit{Ibid.}}
|
|
||||||
|
|
||||||
By Stallman's own recollection, the macro hack touched off an explosion of further innovation. ``Everybody and his brother was writing his own collection of redefined screen-editor commands, a command for everything he typically liked to do,'' Stallman would later recall. ``People would pass them around and improve them, making them more powerful and more general. The collections of redefinitions gradually became system programs in their own right.''\endnote{\textit{Ibid.}}
|
Столлман вспоминает, как внедрение макросов породило целый взрыв улучшений. \enquote{Каждый стремился автоматизировать свою работу наборами макросов. Ими постоянно обменивались и улучшали их, делая всё более мощными и универсальными. Наборы этих макросов мало-помалу становились самостоятельными системными программами}.\endnote{\textit{Ibid.}}
|
||||||
|
|
||||||
So many people found the macro innovations useful and had incorporated it into their own TECO programs that the TECO editor had become secondary to the macro mania it inspired. ``We started to categorize it mentally as a programming language rather than as an editor,'' Stallman says. Users were experiencing their own pleasure tweaking the software and trading new ideas.\endnote{\textit{Ibid.}}
|
Началась настоящая макросомания, даже сам редактор TECO стал восприниматься как придаток к макросам. \enquote{Мы уже считали его языком программирования, а не текстовым редактором}, -- рассказывает Столлман. Пользователи получали огромное удовольствие от написания макросов и их обсуждения. \endnote{\textit{Ibid.}}
|
||||||
|
|
||||||
Two years after the explosion, the rate of innovation began to exhibit inconvenient side effects. The explosive growth had provided an exciting validation of the collaborative hacker approach, but it had also led to incompatibility. ``We had a Tower of Babel effect,'' says Guy Steele.
|
Спустя пару лет начали проявляться негативные последствия неконтролируемого \enquote{макросного взрыва} -- в частности, огромное количество несовместимостей. \enquote{Это было вавилонское столпотворение}, -- говорит Гай Стил. По его словам, эти последствия угрожали основе хакерской этики -- коллективной работе над программами, когда каждый может открыть и улучшить программу любого другого хакера. \enquote{Иногда лучший способ показать кому-то, как надо написать тот или иной код -- просто сесть и написать его самому}, -- объясняет Стил.
|
||||||
|
|
||||||
The effect threatened to kill the spirit that had created it, Steele says. Hackers had designed ITS to facilitate programmers' ability to share knowledge and improve each other's work. That meant being able to sit down at another programmer's desk, open up a programmer's work and make comments and modifications directly within the software. ``Sometimes the easiest way to show somebody how to program or debug something was simply to sit down at the terminal and do it for them,'' explains Steele.
|
Возможность расширения функциональности через макросы стала мешать этому принципу. Стремясь облегчить свою работу, хакеры писали сложнейшие макросы для TECO, и чтобы начать работать за чужим терминалом, нужно было порой битый час сидеть вникать в то, что редактор, собственно, делает.
|
||||||
|
|
||||||
The macro feature, after its second year, began to foil this capability. In their eagerness to embrace the new full-screen capabilities, hackers had customized their versions of TECO to the point where a hacker sitting down at another hacker's terminal usually had to spend the first hour just figuring out what macro commands did what.
|
Это изрядно огорчало Ричарда, и он занялся решением проблемы. Он взял 4 разных комплекта макросов, проанализировал их и выстроил диаграмму популярности команд и их сочетаний. Также он начал наблюдать за работой других хакеров.
|
||||||
|
|
||||||
Frustrated, Steele took it upon himself to solve the problem. He gathered together the four different macro packages and began assembling a chart documenting the most useful macro commands. In the course of implementing the design specified by the chart, Steele says he attracted Stallman's attention.
|
\enquote{Он смотрел на мой экран из-за плеча и расспрашивал о моих действиях}, -- вспоминает Стил.
|
||||||
|
|
||||||
``He started looking over my shoulder, asking me what I was doing,'' recalls Steele.
|
Хотя наблюдения за чужой работой были в порядке вещей в Лаборатории, Стилу хорошо это запомнилось, потому что он был тихим замкнутым хакером и почти не общался со Столлманом. В итоге Ричард назвал работу Стила интересной и использовал её в своём решении.
|
||||||
|
|
||||||
For Steele, a soft-spoken hacker who interacted with Stallman infrequently, the memory still sticks out. Looking over another hacker's shoulder while he worked was a common activity at the AI Lab. Stallman, the TECO maintainer at the lab, deemed Steele's work ``interesting'' and quickly set off to complete it.
|
\enquote{Я обычно говорю, что первые 0,001 процента решения той проблемы -- моя заслуга, а Столлман лишь довёл дело до конца}, -- смеётся Стил.
|
||||||
|
|
||||||
``As I like to say, I did the first 0.001 percent of the implementation, and Stallman did the rest,'' says Steele with a laugh.
|
Столлман дал и название новому проекту: Emacs, сокращение от \enquote{editing macros} или \enquote{редактирование макросами}. Название отражало эволюционный скачок, который случился двумя годами ранее при изобретении макросов. Нашлось в названии место и чисто техническим соображениям удобства -- на компьютерах Лаборатории не было программ, название которых начиналось бы на \enquote{е}, поэтому достаточно было ввести одну эту букву, чтобы автодополнение вызвало Emacs. В очередной раз хакерская жажда эффективности оставила свой след.\endnote{\textit{Ibid.}}
|
||||||
|
|
||||||
The project's new name, Emacs, came courtesy of Stallman. Short for ``editing macros,'' it signified the evolutionary transcendence that had taken place during the macros explosion two years before. It also took advantage of a gap in the software programming lexicon. Noting a lack of programs on ITS starting with the letter ``E,'' Stallman chose Emacs, making it natural to reference the program with a single letter. Once again, the hacker lust for efficiency had left its mark.\endnote{\textit{Ibid.}}
|
Конечно, не все и не сразу перешли на Emacs. Некоторые пользователи продолжали работать в TECO и расширять его функциональность макросами, но многие всё-таки выбрали Emacs. Он обеспечивал унифицированную платформу, от которой можно было отталкиваться. К тому же, его функции можно было расширять без необходимости переписывать старые функции, что резко сокращало количество проблем с совместимостью.
|
||||||
|
|
||||||
Of course, not everyone switched to Emacs, or not immediately. Users were free to continue maintaining and running their own TECO-based editors as before. But most found it preferable to switch to Emacs, especially since Emacs was designed to make it easy to replace or add some parts while using others unchanged.
|
\enquote{С одной стороны, мы пытались создать единую систему команд, с другой -- не ограничивать её расширяемость, потому что программируемость была крайне важна для нас}, -- вспоминает Стил.
|
||||||
|
|
||||||
``On the one hand, we were trying to make a uniform command set again; on the other hand, we wanted to keep it open ended, because the programmability was important,'' recalls Steele.
|
Но проблема несовместимости скоро снова дала о себе знать уже в других местах. Главной причиной её возвращения были тихие модификации кода отдельных экземпляров Emacs, о которых авторы не рассказывали остальным хакерам. В результате поведение этих экземпляров шло вразрез с поведением общей версии Emacs. Тогда Столлман решил внести в код специальную функцию, реализующую один из основных постулатов хакерской этики: пользователь получал право изменять код только в том случае, если он обязывался возвращать свои изменения в общую версию Emacs. Столлман назвал это \enquote{вступлением в коммуну Emacs}. Так же, как и TECO ранее, Emacs стал чем-то большим, чем просто компьютерной программой. Для Столлмана это был общественный договор. В документации 1981 года Ричард изложил его условия: \enquote{Emacs распространяется как общественный продукт, это значит, что все свои улучшения вы должны выслать мне для их внедрения и распространения в основной версии Emacs}.\endnote{Stallman (1979): \#SEC34.}
|
||||||
|
|
||||||
Stallman now faced another conundrum: if users made changes but didn't communicate those changes back to the rest of the community, the Tower of Babel effect would simply emerge in other places. Falling back on the hacker doctrine of sharing innovation, Stallman embedded a statement within the source code that set the terms of use. Users were free to modify and redistribute the code on the condition that they gave back all the extensions they made. Stallman called this ``joining the Emacs Commune.'' Just as TECO had become more than a simple editor, Emacs had become more than a simple software program. To Stallman, it was a social contract. In a 1981 memo documenting the project, Stallman spelled out the contract terms. ``EMACS,'' he wrote, ``was distributed on a basis of communal sharing, which means that all improvements must be given back to me to be incorporated and distributed.''\endnote{See Stallman (1979): \#SEC34.}
|
Оригинальный Emacs работал только на PDP-10, но скоро пользователи захотели работать в нём на других компьютерах. Снова произошёл взрывной рост, только теперь уже не макросов, а версий редактора, похожих на Emacs, с очень разным уровнем совместимости. Правила коммуны Emacs на них не распространялись, потому что те редакторы были написаны с нуля. Некоторые из них в названии иронично обыгрывали название оригинала: Sine (\enquote{Sine is not Emacs} или \enquote{Sine это не Emacs}), Eine (\enquote{Eine is not Emacs}), и даже Zwei (\enquote{Zwei was Eine initially} или \enquote{Zwei поначалу был Eine}). Оригинальный Emacs был полностью программируемым, но некоторые клоны предоставляли лишь ограниченный набор команд без возможности расширения, такие версии назывались \enquote{эрзац-Emacs}. Таким был Mince (\enquote{Mince is Not Complete Emacs} или \enquote{Mince это не совсем Emacs}).
|
||||||
|
|
||||||
The original Emacs ran only on the PDP-10 computer, but soon users of other computers wanted an Emacs to edit with. The explosive innovation continued throughout the decade, resulting in a host of Emacs-like programs with varying degrees of cross-compatibility. The Emacs Commune's rules did not apply to them, since their code was separate. A few cited their relation to Stallman's original Emacs with humorously recursive names: Sine (Sine is not Emacs), Eine (Eine is not Emacs), and Zwei (Zwei was Eine initially). A true Emacs had to provide user-programmability like the original; editors with similar keyword commands but without the user-programmability were called ``ersatz Emacs.'' One example was Mince (Mince is Not Complete Emacs).
|
В то время как Ричард разрабатывал Emacs в Лаборатории, хакерское сообщество потрясали тревожные известия. В 1979 году Брайан Рид встроил \enquote{тайм-бомбы} в Scribe, чтобы воспрепятствовать свободной раздаче редактора, и это ужаснуло Столлмана. \enquote{Он называл это самым фашистским поступком, который он только видел в своей жизни}, -- вспоминает сам Рид. Даже после того, как благодаря усилиям Рида появилась иерархия \textit{alt} в Usenet, поступок 1979 года продолжал омрачать его репутацию, по крайней мере, в глазах Столлмана. \enquote{Он говорил, что все программы должны быть бесплатными, и что взимание денег за ПО это преступление против человечества}.\endnote{В интервью 1996 года интернет-журналу \textit{MEME} Столлман назвал историю вокруг Scribe раздражающей, и даже не захотел называть Рида по имени. \enquote{Проблема в том, что никто не осудил и не наказал этого студента за то, что он сделал, -- сказал Столлман, -- в результате другие люди стали брать его поступок за пример}. \textit{MEME} 2.04, \url{http://memex.org/meme2-04.html}.}
|
||||||
|
|
||||||
While Stallman was developing Emacs in the AI Lab, there were other, unsettling developments elsewhere in the hacker community. Brian Reid's 1979 decision to embed ``time bombs'' in Scribe, making it possible for Unilogic to limit unpaid user access to the software, was a dark omen to Stallman. ``He considered it the most Nazi thing he ever saw in his life,'' recalls Reid. Despite going on to later Internet fame as the co-creator of the Usenet \textit{alt} hierarchy, Reid says he still has yet to live down that 1979 decision, at least in Stallman's eyes. ``He said that all software should be free and the prospect of charging money for software was a crime against humanity.''\endnote{In a 1996 interview with online magazine \textit{MEME}, Stallman cited Scribe's sale as irksome, but declined to mention Reid by name. ``The problem was nobody censured or punished this student for what he did,'' Stallman said. ``The result was other people got tempted to follow his example.'' See \textit{MEME} 2.04, \url{http://memex.org/meme2-04.html}.}
|
Столлман был не в силах помешать действиям Рида, но он мог бороться с другими формами поведения, которые противоречили хакерской этике. Будучи главным сопровождающим разработки Emacs, Ричард начал вовсю пользоваться своим положением для продвижения своих идей. На последнем этапе долгого конфликта хакеров с управляющими Лаборатории, когда дело дошло до реального внедрения систем безопасности с паролями, Столлман забастовал, отказываясь раздать этим сотрудникам последнюю версию Emacs, пока они не откажутся от своих намерений. \endnote{Steven Levy, \textit{Hackers} (Penguin USA [paperback], 1984): 419.} Это был скорее жест, чем реальное ограничение, потому что этим сотрудникам ничего не мешало самим скопировать и установить последнюю версию Emacs. Но посыл Ричарда был очевиден всем.
|
||||||
|
|
||||||
Although Stallman had been powerless to head off Reid's sale, he did possess the ability to curtail other forms of behavior deemed contrary to the hacker ethos. As central source-code maintainer for the original Emacs, Stallman began to wield his power for political effect. During his final stages of conflict with the administrators at the Laboratory for Computer Science over password systems, Stallman initiated a software ``strike,'' refusing to send lab members the latest version of Emacs until they rejected the security system on the lab's computers.\endnote{See Steven Levy, \textit{Hackers} (Penguin USA [paperback], 1984): 419.} This was more gesture than sanction, since nothing could stop them from installing it themselves. But it got the point across: putting passwords on an ITS system would lead to condemnation and reaction.
|
\enquote{Многие на меня рассердились, говорили что я взял их в заложники, что я шантажирую их, и действительно так и было, -- рассказывает Столлман, -- я прибегнул к насилию над ними в ответ на их насилие надо мной}.\endnote{\textit{Ibid.}}
|
||||||
|
|
||||||
``A lot of people were angry with me, saying I was trying to hold them hostage or blackmail them, which in a sense I was,'' Stallman would later tell author Steven Levy. ``I was engaging in violence against them because I thought they were engaging in violence to everyone at large.''\endnote{\textit{Ibid.}}
|
Со временем Emacs стал платформой для продвижения хакерской этики. Уровень гибкости, заданный Столлманом, не только поощрял сотрудничество, но даже требовал его. Пользователи, которые отстранялись от сообщества Emacs, не получали важных изменений -- новых возможностей и исправлений ошибок. При этом история развития Emacs впечатляет. За 20 лет GNU Emacs научился быть электронной таблицей, базой данных, веб-браузером, личным психиатром, и даже простым текстовым редактором, и разработчики даже не думают удалять какие-то функции, заботливо перенося их в код новых версий. \enquote{Это наше видение идеального текстового редактора, -- говорит Столлман, -- его возможности восхищают и ужасают одновременно}.
|
||||||
|
|
||||||
Over time, Emacs became a sales tool for the hacker ethic. The flexibility Stallman had built into the software not only encouraged collaboration, it demanded it. Users who didn't keep abreast of the latest developments in Emacs evolution or didn't contribute their contributions back to Stallman ran the risk of missing out on the latest breakthroughs. And the breakthroughs were many. Twenty years later, users of GNU Emacs (a second implementation started in 1984) have modified it for so many different uses -- using it as a spreadsheet, calculator, database, and web browser -- that later Emacs developers adopted an overflowing sink to represent its versatile functionality. ``That's the idea that we wanted to convey,'' says Stallman. ``The amount of stuff it has contained within it is both wonderful and awful at the same time.''
|
Другие работники Лаборатории отзываются о редакторе куда милосерднее. Хэл Абельсон, аспирант МТИ, который работал с Сассменом в 70-х, и позже стал участником фонда свободного ПО, называет Emacs \enquote{совершенно гениальным творением}. Дав свободу программистам конструировать какие угодно функции, не нарушая работу системы, Столлман проложил путь к сложным программным проектам, над которыми работали огромные коллективы. \enquote{Структура редактора оказалась достаточно устойчивой, чтобы тысячи людей со всего мира развивали его согласно своим вкусам, -- сказал Абельсон, -- даже не знаю, бывало ли такое раньше.}\endnote{В этой главе я уделил больше внимания социальной значимости Emacs, нежели технической. Чтобы оценить уровень программной части, рекомендую прочитать заметку Столлмана 1979 года, особенно обратить внимание на раздел \enquote{Исследования в разработке программных инструментов} (\enquote{Research Through Development of Installed Tools} \#SEC27). Раздел не только понятен неспециалисту, но и показывает, как сильно связана политическая философия Столлмана с его философией программирования. Например:
|
||||||
|
|
||||||
Stallman's AI Lab contemporaries are more charitable. Hal Abelson, an MIT grad student who worked with Sussman during the 1970s and would later assist Stallman as a charter board member of the Free Software Foundation, describes Emacs as ``an absolutely brilliant creation.'' In giving programmers a way to add new software libraries and features without messing up the system, Abelson says, Stallman paved the way for future large-scale collaborative software projects. ``Its structure was robust enough that you'd have people all over the world who were loosely collaborating [and] contributing to it,'' Abelson says. ``I don't know if that had been done before.''\endnote{In writing this chapter, I've elected to focus more on the social significance of Emacs than the software significance. To read more about the software side, I recommend Stallman's 1979 memo. I particularly recommend the section titled ``Research Through Development of Installed Tools'' (\#SEC27). Not only is it accessible to the nontechnical reader, it also sheds light on how closely intertwined Stallman's political philosophies are with his software-design philosophies. A sample excerpt follows:
|
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
EMACS could not have been reached by a process of careful design, because such processes arrive only at goals which are visible at the outset, and whose desirability is established on the bottom line at the outset. Neither I nor anyone else visualized an extensible editor until I had made one, nor appreciated its value until he had experienced it. EMACS exists because I felt free to make individually useful small improvements on a path whose end was not in sight.
|
Функциональность Emacs невозможно было создать заранее продуманным проектированием, потому что такой подход достигает целей, которые видны только поначалу, и устанавливает априорный ценз на присутствие каких-то функций в программе. Ни я, ни кто-либо другой не мог заранее представить себе все возможности Emacs, их можно только увидеть по мере их появления в реальности. Emacs это бесконечный процесс улучшений.
|
||||||
\end{quote}}
|
\end{quote}}
|
||||||
|
|
||||||
Guy Steele expresses similar admiration. Currently a research scientist for Sun Microsystems, he remembers Stallman primarily as a ``brilliant programmer with the ability to generate large quantities of relatively bug-free code.'' Although their personalities didn't exactly mesh, Steele and Stallman collaborated long enough for Steele to get a glimpse of Stallman's intense coding style. He recalls a notable episode in the late 1970s when the two programmers banded together to write the editor's ``pretty print'' feature. Originally conceived by Steele, pretty print was another keystroke-triggered feature that reformatted Emacs' source code so that it was both more readable and took up less space, further bolstering the program's WYSIWYG qualities. The feature was strategic enough to attract Stallman's active interest, and it wasn't long before Steele wrote that he and Stallman were planning an improved version.
|
Гай Стил выражает похожее мнение. Он помнит Столлмана как \enquote{гениального программиста, который способен был без устали и ошибок генерировать огромное количество кода}. Хотя их характеры во многом не сходились, они успели поработать вместе, и Стил получил хорошее представление об интенсивности программирования Ричарда. Однажды Стил задумал создать функцию \enquote{приятной печати} для Emacs, чтобы при нажатии некоторой комбинации клавиш она преображала исходный код в компактную форму. Функция заинтересовала и Столлмана.
|
||||||
|
|
||||||
``We sat down one morning,'' recalls Steele. ``I was at the keyboard, and he was at my elbow,'' says Steele. ``He was perfectly willing to let me type, but he was also telling me what to type.
|
\enquote{Утром мы сели за терминал, я за клавиатуру, а Столлман -- рядом, чтобы говорить мне что печатать}.
|
||||||
|
|
||||||
The programming session lasted 10 hours. Throughout that entire time, Steele says, neither he nor Stallman took a break or made any small talk. By the end of the session, they had managed to hack the pretty print source code to just under 100 lines. ``My fingers were on the keyboard the whole time,'' Steele recalls, ``but it felt like both of our ideas were flowing onto the screen. He told me what to type, and I typed it.''
|
Около десяти часов подряд они занимались кодом, и за всё это время они не делали перерыва и не болтали о посторонних вещах. В итоге им удалось создать красивую функцию, которая занимала меньше 100 строк. \enquote{На клавишах были мои пальцы, но мне казалось, что мысли обеих наших голов перетекали на экран. Он говорил мне, что набирать, и я набирал}.
|
||||||
|
|
||||||
The length of the session revealed itself when Steele finally left the AI Lab. Standing outside the building at 545 Tech Square, he was surprised to find himself surrounded by nighttime darkness. As a programmer, Steele was used to marathon coding sessions. Still, something about this session was different. Working with Stallman had forced Steele to block out all external stimuli and focus his entire mental energies on the task at hand. Looking back, Steele says he found the Stallman mind-meld both exhilarating and scary at the same time. ``My first thought afterward was [that] it was a great experience, very intense, and that I never wanted to do it again in my life.''
|
Выйдя из здания Техносквера на улицу, Стил удивился наступившей темноте. Он привык работать в марафонском стиле, а в этот раз всё прошло как-то слишком быстро, слишком интенсивно. Это было полное отключение от окружающих раздражителей и погружение в задачу. Стил признаётся, что такое мощное мышление Столлмана одновременно восхищает и пугает его. \enquote{Я впервые в жизни работал настолько интенсивно, почти яростно, и для меня это чересчур. Не хотелось бы снова через это пройти}.
|
||||||
|
|
||||||
\theendnotes
|
\theendnotes
|
||||||
\setcounter{endnote}{0}
|
\setcounter{endnote}{0}
|
||||||
|
162
chap07.tex
162
chap07.tex
@ -7,176 +7,172 @@
|
|||||||
%% no Back-Cover Texts. A copy of the license is included in the
|
%% no Back-Cover Texts. A copy of the license is included in the
|
||||||
%% file called ``gfdl.tex''.
|
%% file called ``gfdl.tex''.
|
||||||
|
|
||||||
|
\chapter{Дилемма абсолютной морали}
|
||||||
|
|
||||||
\chapter{A Stark Moral Choice}
|
В половину первого ночи 27 сентября 1983 года в Usenet-группе net.unix-wizards появилось необычное сообщение за подписью \url{rms@mit-oz}. Сообщение называлось коротко и крайне заманчиво: \enquote{Новая реализация UNIX}. Но вместо некой готовой новой версии Unix читатель обнаруживал призыв:
|
||||||
|
|
||||||
On September 27, 1983, computer programmers logging on to the Usenet newsgroup net.unix-wizards encountered an unusual message. Posted in the small hours of the morning, 12:30 a.m. to be exact, and signed by \url{rms@mit-oz}, the message's subject line was terse but attention-grabbing. ``New UNIX implementation,'' it read. Instead of introducing a newly released version of Unix, however, the message's opening paragraph issued a call to arms:
|
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
Starting this Thanksgiving I am going to write a complete Unix-compatible software system called GNU (for Gnu's Not Unix), and give it away free to everyone who can use it. Contributions of time, money, programs and equipment are greatly needed.\endnote{See Richard Stallman, ``Initial GNU Announcement'' (September 1983).}
|
В этот День Благодарения я начинаю писать новую, полностью совместимую с Unix операционную систему, которая будет называться GNU (GNU's Not Unix). Я буду свободно раздавать её всем желающим. Мне очень нужны ваше время, деньги, код, оборудование -- любая помощь. \endnote{Richard Stallman, \enquote{Initial GNU Announcement} (September 1983).}
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
To an experienced Unix developer, the message was a mixture of idealism and hubris. Not only did the author pledge to rebuild the already mature Unix operating system from the ground up, he also proposed to improve it in places. The new GNU system, the author predicted, would carry all the usual components -- a text editor, a shell program to run Unix-compatible applications, a compiler, ``and a few other things.''\endnote{\textit{Ibid.}} It would also contain many enticing features that other Unix systems didn't yet offer: a graphic user interface based on the Lisp programming language, a crash-proof file system, and networking protocols built according to MIT's internal networking system.
|
В глазах опытного Unix-разработчика сообщение выглядело смесью идеализма с высоким самомнением. Автор не просто брался воссоздать с нуля целую операционную систему, весьма развитую и мощную, но ещё и улучшить её. Система GNU должна была вмещать в себя все нужные компоненты вроде текстового редактора, командной оболочки, компилятора, а также \enquote{ряд других вещей}. \endnote{\textit{Ibid.}} Обещались и крайне привлекательные возможности, которых не было в существующих Unix-системах: графический интерфейс на языке программирования Lisp, устойчивая к сбоям файловая система, сетевые протоколы на основе сетевой архитектуры МТИ.
|
||||||
|
|
||||||
``GNU will be able to run Unix programs, but will not be identical to Unix,'' the author wrote. ``We will make all improvements that are convenient, based on our experience with other operating systems.''
|
\enquote{GNU сможет запускать Unix-программы, но не будет идентичен системе Unix, -- писал автор, -- мы сделаем все нужные улучшения, которые назрели за годы работы в различных операционных системах}.
|
||||||
|
|
||||||
Anticipating a skeptical response on some readers' part, the author made sure to follow up his operating-system outline with a brief biographical sketch titled, ``Who am I?'':
|
Предвидя скептическую реакцию на своё сообщение, автор дополнил его кратким автобиографическим отступлением под заголовком: \enquote{Кто я такой?}:
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
I am Richard Stallman, inventor of the original much-imitated EMACS editor, now at the Artificial Intelligence Lab at MIT. I have worked extensively on compilers, editors, debuggers, command interpreters, the Incompatible Timesharing System and the Lisp Machine operating system. I pioneered terminal-independent display support in ITS. In addition I have implemented one crashproof file system and two window systems for Lisp machines.\endnote{\textit{Ibid.}}
|
Я Ричард Столлман, создатель оригинального редактора EMACS, один из клонов которого вы наверняка встречали. Работаю в Лаборатории ИИ Массачусетского технологического института. Имею большой опыт разработки компиляторов, редакторов, отладчиков, командных интерпретаторов, операционных систем ITS и Lisp Machine. Реализовал независимую от терминалов поддержку экрана в ITS, а также отказоустойчивую файловую систему и две оконные системы для Lisp-машин.\endnote{\textit{Ibid.}}
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
As fate would have it, Stallman's fanciful GNU Project missed its Thanksgiving launch date. By January, 1984, however, Stallman made good on his promise and fully immersed himself in the world of Unix software development. For a software architect raised on ITS, it was like designing suburban shopping malls instead of Moorish palaces. Even so, building a Unix-like operating system had its hidden advantages. ITS had been powerful, but it also possessed an Achilles' heel: MIT hackers had written it specifically to run on the powerful DEC-built PDP-10 computer. When AI Lab administrators elected to phase out the lab's PDP-10 machine in the early 1980s, the operating system that hackers once likened to a vibrant city became an instant ghost town. Unix, on the other hand, was designed for portability, which made it immune to such dangers. Originally developed by junior scientists at AT\&T, the program had slipped out under corporate-management radar, finding a happy home in the cash-strapped world of academic computer systems. With fewer resources than their MIT brethren, Unix developers had customized the software to ride atop a motley assortment of hardware systems, primarily the 16-bit PDP-11 -- a machine considered fit for only small tasks by most AI Lab hackers -- but later also 32-bit mainframes such as the VAX 11/780. By 1983, a few companies, most notably Sun Microsystems, were developing a more powerful generation of desktop computers, dubbed ``workstations,'' to take advantage of that increasingly ubiquitous operating system on machines comparable in power to the much older PDP-10.
|
Так уж вышло, что затейливый проект Столлмана стартовал не в День Благодарения, как обещалось. Только в январе 1984 года Ричард с головой погрузился в разработку программного обеспечения в стиле Unix. С точки зрения системного архитектора ITS, это было всё равно что перейти от возведения мавританских дворцов к строительству пригородных торговых центров. Впрочем, разработка Unix-системы открывала и преимущества. ITS, при всей своей мощи, имела слабое место -- работала лишь на компьютере PDP-10 от компании DEC. В начале 80-х годов Лаборатория отказалась от PDP-10, и ITS, которую хакеры сравнивали с оживлённым городом, превратилась в город-призрак. Unix же был изначально разработан с прицелом на переносимость с одной компьютерной архитектуры на другую, так что подобные беды ему не грозили. Разработанный младшими научными сотрудниками AT\&T, Unix проскользнул мимо корпоративных радаров и нашёл спокойное пристанище в некоммерческом мире научных центров. Имея меньше ресурсов, чем их собратья-хакеры в МТИ, разработчики Unix приспособили свою систему к работе на зоопарке разносортного оборудования. Главным образом -- на 16-битной PDP-11, которую хакеры Лаборатории считали непригодной для серьёзных задач, но также и на 32-битных мейнфреймах вроде VAX 11/780. К 1983 году такие компании, как Sun Microsystems, создали относительно компактные настольные компьютеры -- \enquote{рабочие станции}, сравнимые по мощности со старым мейнфреймом PDP-10. На этих рабочих станциях тоже поселился вездесущий Unix.
|
||||||
|
|
||||||
To facilitate portability, the developers of Unix had put an extra layer of abstraction between the software and the machine. Rather than writing it in the instructions of a specific machine type -- as the AI Lab hackers had done with ITS and the PDP-10 -- Unix developers wrote in a high-level language, called C. Focusing more on the interlocking interfaces and specifications that held the operating system's many subcomponents together, rather than the actual components themselves, they created a system that could be quickly modified to run on any machine. If a user disliked a certain component, the interface specifications made it possible to pull out an individual subcomponent and either fix it or replace it with something better. Simply put, the Unix approach promoted flexibility and economy, hence its rapid adoption.\endnote{See Marshall Kirk McKusick, ``Twenty Years of Berkeley Unix,'' \textit{Open Sources} (O'Reilly \& Associates, Inc., 1999): 38.}
|
Переносимость Unix обеспечивалась дополнительным слоем абстракции между приложениями и оборудованием. Вместо того, чтобы писать программы в машинных кодах конкретного компьютера, как это делали хакеры Лаборатории, разрабатывая программы для ITS на PDP-10, разработчики Unix использовали высокоуровневый язык программирования С, который не был привязан к конкретной аппаратной платформе. При этом разработчики сосредоточили внимание на стандартизации интерфейсов, через которые части операционной системы взаимодействовали друг с другом. В итоге получилась система, где любую часть можно было переделать, не затрагивая все остальные части и не нарушая их работу. И чтобы перенести систему с одной аппаратной архитектуры на другую, тоже достаточно было переделать только одну часть системы, а не переписывать её всю целиком. Специалисты по достоинству оценили такой фантастический уровень гибкости и удобства, поэтому Unix быстро распространился по компьютерному миру. \endnote{Marshall Kirk McKusick, \enquote{Twenty Years of Berkeley Unix,} \textit{Open Sources} (O'Reilly \& Associates, Inc., 1999): 38.}
|
||||||
|
|
||||||
Stallman's decision to start developing the GNU system was triggered by the end of the ITS system that the AI Lab hackers had nurtured for so long. The demise of ITS, and the AI Lab hacker community which had sustained it, had been a traumatic blow to Stallman. If the Xerox laser printer episode had taught him to recognize the injustice of proprietary software, the community's death forced him to choose between surrendering to proprietary software and opposing it.
|
Столлман решил создать систему GNU из-за кончины ITS, любимого детища хакеров Лаборатории ИИ. Смерть ITS была ударом для них, в том числе и для Ричарда. Если история с лазерным принтером Xerox открыла ему глаза на несправедливость собственнических лицензий, то кончина ITS подтолкнула его от неприятия закрытого софта к активному противодействию ему.
|
||||||
|
|
||||||
Like the software code that composed it, the roots of ITS' demise stretched way back. By 1980, most of the lab's hackers were working on developing the Lisp Machine and its operating system.
|
Причины гибели ITS, как и её код, уходили далеко в прошлое. К 1980 году большинство хакеров Лаборатории уже работали над Lisp-машиной и операционной системой для неё.
|
||||||
|
|
||||||
Created by artificial-intelligence research pioneer John McCarthy, a MIT artificial-intelligence researcher during the late 1950s, Lisp is an elegant language, well-suited for writing complex programs to operate on data with irregular structure. The language's name is a shortened version of LISt Processing. Following McCarthy's departure to the Stanford Artificial Intelligence Laboratory, MIT hackers refined the language into a local dialect dubbed MACLISP. The ``MAC'' stood for Project MAC, the DARPA-funded research project that gave birth to the AI Lab and the Laboratory for Computer Science. Led by AI Lab arch-hacker Richard Greenblatt, the AI Lab hackers during the late 1970s designed a computer specialized for running Lisp efficiently and conveniently, the Lisp Machine, then developed an entire Lisp-based operating system for it.
|
Lisp -- элегантный язык программирования, прекрасно подходящий для работы с данными, структура которых заранее неизвестна. Его создал пионер исследований искусственного интеллекта и создатель самого термина \enquote{искусственный интеллект} Джон Маккарти, который работал в МТИ во второй половине 50-х годов. Название языка -- сокращение от \enquote{LISt Processing} или \enquote{обработка списков}. После того, как Маккарти ушёл из МТИ в Стэнфорд, хакеры Лаборатории несколько изменили Lisp, создав его местечковый диалект MACLISP, где первые 3 буквы обозначали проект MAC, благодаря которому, собственно, и появилась Лаборатория ИИ в МТИ. Под руководством системного архитектора Ричарда Гринблатта хакеры Лаборатории разработали Lisp-машину -- специальный компьютер для выполнения программ на языке Lisp, а также операционную систему для этого компьютера -- тоже, конечно, написанную на Lisp.
|
||||||
|
|
||||||
By 1980, two rival groups of hackers had formed two companies to manufacture and sell copies of the Lisp Machine. Greenblatt started Lisp Machines Incorporated. He planned to avoid outside investment and make a ``hacker company.'' Most of the hackers joined Symbolics, a conventional startup. In 1982 they entirely ceased to work at MIT.
|
К началу 80-х годов конкурирующие группы хакеров основали две компании по производству и продаже Lisp-машин. Компания Гринблатта называлась Lisp Machines Incorporated или просто LMI. Он рассчитывал обойтись без внешних инвестиций и создать чисто \enquote{хакерскую компанию}. Но большинство хакеров присоединились к Symbolics, обычному коммерческому стартапу. В 1982 году они уже полностью покинули МТИ.
|
||||||
|
|
||||||
With few hackers left to mind the shop, programs and machines took longer to fix -- or were not fixed at all. Even worse, Stallman says, the lab began to undergo a ``demographic change.'' The hackers who had once formed a vocal minority within the AI Lab were almost gone while ``the professors and the students who didn't really love the [PDP-10] were just as numerous as before.''\endnote{See Richard Stallman (1986).}
|
Тех, кто остался, можно было по пальцам одной руки пересчитать, так что программы и машины чинились всё дольше и дольше, или не чинились вовсе. И что хуже всего, по словам Столлмана -- в Лаборатории начались \enquote{демографические изменения}. Хакеры, которые и раньше были в меньшинстве, почти исчезли, оставив Лабораторию в полное распоряжение преподавателей и студентов, чьё отношение к PDP-10 было откровенно неприязненным.
|
||||||
|
|
||||||
In 1982, the AI Lab received the replacement for its main computer, the PDP-10, which was over 12 years old. Digital's current model, the Decsystem 20, was compatible for user programs but would have required a drastic rewrite or ``port'' of ITS if hackers wanted to continue running the same operating system. Fearful that the lab had lost its critical mass of in-house programming talent, AI Lab faculty members pressed for Twenex, a commercial operating system developed by Digital. Outnumbered, the hackers had no choice but to comply.
|
В 1982 году Лаборатория ИИ получила замену своему 12-летнему PDP-10 -- DECSYSTEM 20. Приложения, написанные для PDP-10, работали на новом компьютере без проблем, потому что DECSYSTEM 20 был, по сути, обновлённым PDP-10, но вот прежняя операционная система совсем не подходила -- ITS нужно было портировать на новый компьютер, а значит -- почти полностью переписать. И это в то время, когда из Лаборатории ушли почти все хакеры, которые могли бы этим заняться. Так что на новом компьютере быстро воцарилась коммерческая операционная система Twenex. Немногие хакеры, что остались в МТИ, могли только смириться с этим.
|
||||||
|
|
||||||
\begin{figure}[ht] \centering
|
\begin{figure}[ht] \centering
|
||||||
\includegraphics[width=0.9\textwidth]{KL10_1979}
|
\includegraphics{KL10_1979}
|
||||||
\caption{PDP-10 processor with KL-10 (a PDP-10 similar to that of the AI Lab), Stanford Artificial Intelligence Laboratory, 1979.}
|
\caption{Компьютер PDP-10 с процессором KL-10, Стэнфордская лаборатория ИИ, 1979 год. Такая же машина была в Лаборатории МТИ.}
|
||||||
\end{figure}
|
\end{figure}
|
||||||
|
|
||||||
``Without hackers to maintain the system, [faculty members] said, `We're going to have a disaster; we must have commercial software,'\hspace{0.01in}'' Stallman would recall a few years later. ``They said, `We can expect the company to maintain it.' It proved that they were utterly wrong, but that's what they did.''\endnote{\textit{Ibid.}}
|
\enquote{Без хакеров, которые потянули бы создание и сопровождение операционной системы, мы обречены, -- говорили сотрудники факультета и студенты, -- нам нужна коммерческая система, которую поддерживает какая-нибудь компания, чтобы она сама решала проблемы с этой системой}. Столлман вспоминает, что этот аргумент оказался жестокой ошибкой, но в тот момент он звучал убедительно.
|
||||||
|
|
||||||
At first, hackers viewed the Twenex system as yet another authoritarian symbol begging to be subverted. The system's name itself was a protest. Officially dubbed TOPS-20 by DEC, it was named as a successor to TOPS-10, a proprietary operating system DEC distributed for the PDP-10. But TOPS-20 was not based on TOPS-10. It was derived from the Tenex system which Bolt Beranek Newman had developed for the PDP-10.\endnote{Multiple sources: see Richard Stallman interview, Gerald Sussman email, and \textit{Jargon File 3.0.0} at \url{http://catb.org/jargon/html/T/TWENEX.html}.} Stallman, the hacker who coined the Twenex term, says he came up with the name as a way to avoid using the TOPS-20 name. ``The system was far from tops, so there was no way I was going to call it that,'' Stallman recalls. ``So I decided to insert a `w' in the Tenex name and call it Twenex.''
|
Поначалу хакеры видели в Twenex очередное воплощение авторитарной корпократии, которое так и хотелось сломать. Даже в названии отразилась неприязнь хакеров -- вообще-то, система называлась TOPS-20, указывая на преемственность с TOPS-10, тоже коммерческой системой DEC для PDP-10. Но архитектурно TOPS-20 не имела ничего общего с TOPS-10. Её сделали на основе системы Tenex, которую компания Bolt, Beranek and Newman разработала для PDP-10. \endnote{Источники: интервью Ричарда Столлмана и электронные письма Джеральда Сассмена}. Называть систему \enquote{Twenex} начал Столлман, просто чтобы не называть её TOPS-20. \enquote{Системе было далеко до топовых решений, так что называть её официальным именем язык не поворачивался, -- вспоминает Столлман, -- поэтому я вставил в \enquote{Tenex} букву \enquote{w}, чтобы получилось \enquote{Twenex}}. (Это название обыгрывает слово \enquote{twenty}, т.е. \enquote{двадцать})
|
||||||
|
|
||||||
The machine that ran the Twenex/TOPS-20 system had its own derisive nickname: Oz. According to one hacker legend, the machine got its nickname because it required a smaller PDP-11 machine to power its terminal. One hacker, upon viewing the KL-10-PDP-11 setup for the first time, likened it to the wizard's bombastic onscreen introduction in the Wizard of Oz. ``I am the great and powerful Oz,'' the hacker intoned. ``Pay no attention to the PDP-11 behind that console.''\endnote{See \url{http://www.as.cmu.edu/~geek/humor/See_Figure_1.txt}.}
|
Компьютер, на котором работал Twenex/TOPS-20, иронично называли \enquote{Оз}. Дело в том, что DECSYSTEM 20 требовал маленькую машину PDP-11 для работы терминала. Один хакер, впервые увидев подключение PDP-11 к этому компьютеру, сравнил это с пафосным представлением Волшебника из страны Оз. \enquote{Я великий и ужасный Оз! -- продекламировал он. -- Только не смотрите на мелюзгу, от которой я работаю}.
|
||||||
|
|
||||||
If hackers laughed when they first encountered the KL-10, their laughter quickly died when they encountered Twenex. Not only did Twenex boast built-in security, but the system's software engineers had designed the tools and applications with the security system in mind. What once had been a cat-and-mouse game over passwords in the case of the Laboratory for Computer Science's security system, now became an out-and-out battle over system management. System administrators argued that without security, the Oz system was more prone to accidental crashes. Hackers argued that crashes could be better prevented by overhauling the source code. Unfortunately, the number of hackers with the time and inclination to perform this sort of overhaul had dwindled to the point that the system-administrator argument prevailed.
|
А вот в операционной системе нового компьютера не было уже ничего смешного. Безопасность и контроль доступа были встроены в Twenex на базовом уровне, и её утилиты с приложениями тоже были разработаны с учётом безопасности. Снисходительные шутки над системами безопасности Лаборатории превратились в серьёзную битву за управление компьютером. Администраторы утверждали, что без систем безопасности Twenex будет нестабильна и неустойчива к ошибкам. Хакеры уверяли, что стабильности и надёжности куда быстрее можно достигнуть редактированием исходного кода системы. Но их в Лаборатории было уже так мало, что к ним никто не прислушивался.
|
||||||
|
|
||||||
The initial policy was that any lab member could have the ``wheel privilege'' to bypass security restrictions. But anyone who had the ``wheel privilege'' could take it away from anyone else, who would then be powerless to restore it. This state of affairs tempted a small group of hackers to try to seize total control by canceling the ``wheel privilege'' for all but themselves.
|
Хакеры подумали, что обойти ограничения безопасности можно, выдав всем пользователям \enquote{рулевые привилегии} -- повышенные права, дающие возможность делать многое из того, что обычному пользователю запрещено. Но в этом случае любой пользователь мог отобрать \enquote{рулевые привилегии} у любого другого пользователя, и тот не мог вернуть их себе за неимением прав доступа. Поэтому хакеры решили получить контроль над системой, отобрав \enquote{рулевые привилегии} у всех, кроме себя.
|
||||||
|
|
||||||
Cadging passwords, and applying the debugger during startup, Stallman successfully foiled these attempts. After the second foiled ``\textit{coup d'état},'' Stallman issued an alert to all the AI Lab personnel.\endnote{See Richard Stallman (1986).}
|
Подбор паролей и запуск отладчика во время загрузки системы ничего не дали. Потерпев неудачу в \enquote{\textit{государственном перевороте}}, Столлман разослал сообщение всем работникам Лаборатории. \endnote{Richard Stallman (1986).}
|
||||||
|
|
||||||
``There has been another attempt to seize power,'' Stallman wrote. ``So far, the aristocratic forces have been defeated.'' To protect his identity, Stallman signed the message ``Radio Free OZ.''
|
\enquote{До сих пор аристократы были повержены, -- писал он, -- но теперь они взяли верх, и попытка захватить власть не увенчалась успехом}. Ричард подписал сообщение: \enquote{Radio Free OZ}, чтобы никто не догадался, что это он. Отличная маскировка, если учесть, что все в Лаборатории знали об отношении Столлмана к системам безопасности и его издевательствах над паролями. Впрочем, отвращение Ричарда к паролям было известно далеко за пределами МТИ. На компьютеры Лаборатории под учётной записью Столлмана ходил чуть ли не весь ARPAnet -- прообраз интернета тех времён. Таким \enquote{туристом} был, например, Дон Хопкинс, программист из Калифорнии, который через хакерское сарафанное радио узнал, что войти в прославленную систему ITS в МТИ можно просто введя 3 буквы инициалов Столлмана в качестве логина и пароля.
|
||||||
|
|
||||||
The disguise was a thin one at best. By 1982, Stallman's aversion to passwords and secrecy had become so well known that users outside the AI Laboratory were using his account from around the ARPAnet -- the research-funded computer network that would serve as a foundation for today's Internet. One such ``tourist'' during the early 1980s was Don Hopkins, a California programmer who learned through the hacking grapevine that all an outsider needed to do to gain access to MIT's vaunted ITS system was to log in under the initials RMS and enter the same three-letter monogram when the system requested a password.
|
\enquote{Я бесконечно благодарен МТИ за то, что я и многие другие люди могли свободно пользоваться их компьютерами, -- говорит Хопкинс, -- это очень много значило для всех нас}.
|
||||||
|
|
||||||
``I'm eternally grateful that MIT let me and many other people use their computers for free,'' says Hopkins. ``It meant a lot to many people.''
|
Эта \enquote{туристическая} политика длилась много лет, пока жила система ITS, и руководство МТИ смотрело на неё снисходительно. \endnote{\enquote{MIT AI Lab Tourist Policy,} \url{http://www.art.net/~hopkins/Don/text/tourist-policy.html}}. Но когда машина Оз стала основным мостом из Лаборатории в ARPAnet, всё изменилось. Столлман всё так же предоставлял доступ к своему аккаунту под известными логином и паролем, но администраторы потребовали от него изменить пароль и никому его больше не давать. Ричард, ссылаясь на свою этику, вообще отказался работать на машине Оз.\endnote{Richard Stallman (1986)}.
|
||||||
|
|
||||||
This so-called ``tourist'' policy, which had been openly tolerated by MIT management during the ITS years,\endnote{See ``MIT AI Lab Tourist Policy,'' \url{http://www.art.net/~hopkins/Don/text/tourist-policy.html}.} fell by the wayside when Oz became the lab's primary link to the ARPAnet. At first, Stallman continued his policy of repeating his login ID as a password so outside users could have access through his account. Over time, however, Oz's fragility prompted administrators to bar outsiders who, through sheer accident or malicious intent, might bring down the system. When those same administrators eventually demanded that Stallman stop publishing his password, Stallman, citing personal ethics, instead ceased using the Oz system altogether.\endnote{See Richard Stallman (1986).}
|
\enquote{Когда пароли начали появляться на компьютерах Лаборатории ИИ, я решил следовать своему убеждению, что паролей быть не должно, -- говорил позже Столлман, -- а поскольку я считал, что компьютерам не нужны системы безопасности, я не должен был поддерживать эти меры по их внедрению}.\endnote{\textit{Ibid.}}
|
||||||
|
|
||||||
``[When] passwords first appeared at the MIT AI Lab I [decided] to follow my belief that there should be no passwords,'' Stallman would later say. ``Because I don't believe that it's really desirable to have security on a computer, I shouldn't be willing to help uphold the security regime.''\endnote{\textit{Ibid.}}
|
Отказ Столлмана преклонить колени перед великой и ужасной машиной Оз показывал, что между хакерами и начальством Лаборатории росла напряжённость. Но напряжённость эта была лишь бледной тенью того конфликта, что бушевала в самом хакерском коллективе, который разделился на 2 лагеря: LMI (Lisp Machines Incorporated) и Symbolics.
|
||||||
|
|
||||||
Stallman's refusal to bow before the great and powerful Oz symbolized the growing tension between hackers and AI Lab management during the early 1980s. This tension paled in comparison to the conflict that raged within the hacker community itself. By the time the Decsystem 20 arrived, the hacker community was divided into two camps, LMI and Symbolics.
|
Symbolics получила немало вложений извне, чем привлекла многих хакеров Лаборатории. Они работали над системой Lisp-машины и в МТИ, и за его пределами. К концу 1980 года компания наняла 14 сотрудников Лаборатории в качестве консультантов для разработки собственной версии Lisp-машины. Остальные хакеры, не считая Столлмана, работали на LMI. \endnote{Steve Levy, \textit{Hackers}, 423.} Ричард решил не занимать ничью сторону, и по привычке был сам по себе.
|
||||||
|
|
||||||
Symbolics, with its outside investment, recruited various AI Lab hackers and set some of them working on improving parts of the Lisp Machine operating system outside the auspices of the AI Lab. By the end of 1980, the company had hired 14 AI Lab staffers as part-time consultants to develop its version of the Lisp Machine. The remaining few, apart from Stallman, worked for LMI.\endnote{See Steve Levy, \textit{Hackers}, page 423.} Stallman, preferring the unpressured life at the AI Lab and not wishing to take a side, chose to join neither company.
|
Первое время хакеры, нанятые Symbolics, продолжали работать и в МТИ, совершенствуя систему Lisp-машины. Они, как и хакеры от LMI, использовали для своего кода лицензию MIT. Она требовала возвращать изменения в МТИ, но не требовала от МТИ распространять эти изменения. Тем не менее, в течение 1981 года хакеры придерживались джентльменского соглашения, по которому все их улучшения вносились в Lisp-машину от МТИ и распространялись среди всех пользователей этих машин. Такое положение вещей ещё сохраняло какую-то стабильность хакерского коллектива.
|
||||||
|
|
||||||
At first, the other hackers continued spending some of their time at MIT, and contributed to MIT's Lisp Machine operating system. Both LMI and Symbolics had licensed this code from MIT. The license required them to return their changes to MIT, but did not require them to let MIT redistribute these changes. However, through 1981 they adhered to a gentleman's agreement to permit that, so all their system improvements were included in the MIT version and thus shared with all Lisp Machine users. This situation allowed those still at MIT to remain neutral.
|
Но 16 марта 1982 года -- Столлман хорошо помнит этот день, потому что это был его день рождения -- джентльменскому соглашению пришёл конец. Это произошло по воле руководства Symbolics, оно таким образом хотело придушить своего конкурента -- компанию LMI, на которую работало намного меньше хакеров. Руководители Symbolics рассудили так: если у LMI в разы меньше сотрудников, то получается, что общая работа над Lisp-машиной выгодна именно ей, и если прекратить этот обмен наработками, то LMI будет уничтожена. С этой целью они решили злоупотребить буквой лицензии. Вместо того, чтобы вносить изменения в МТИ-версию системы, которой могла воспользоваться LMI, они начали поставлять в МТИ Symbolics-версию системы, которую они могли править как угодно. Выходило, что любое тестирование и редактирование кода Lisp-машины в МТИ шло только в пользу Symbolics.
|
||||||
|
|
||||||
On March 16, 1982, a date Stallman remembers well because it was his birthday, Symbolics executives ended the gentleman's agreement. The motive was to attack LMI. LMI had fewer hackers, and fewer staff in general, so the Symbolics executives thought that LMI was getting the main benefit of sharing the system improvements. By ending the sharing of system code, they hoped to wipe out LMI. So they decided to enforce the letter of the license. Instead of contributing their improvements to the MIT version of the system, which LMI could use, they provided MIT with a copy of the Symbolics version of the system for users at MIT to run. Anyone using it would provide the service of testing only to Symbolics, and if he made improvements, most likely they too would only be useful for Symbolics.
|
Как человек, ответственный за сопровождение лабораторной Lisp-машины (первые несколько месяцев -- при помощи Гринблатта), Столлман пришёл в ярость. Хакеры Symbolics предоставили код с сотнями изменений, которые вызывали ошибки. Расценив это как ультиматум, Столлман отключил линию связи Лаборатории с Symbolics, поклялся больше никогда не работать на машинах этой компании, и объявил о присоединении к работе над Lisp-машиной МТИ для поддержки LMI. \enquote{В моих глазах Лаборатория была нейтральной страной, как Бельгия во Вторую Мировую войну, -- рассказывает Столлман, -- и если Германия вторгается в Бельгию, та объявляет Германии войну и присоединяется к Британии и Франции}.
|
||||||
|
|
||||||
As the person responsible (with help from Greenblatt for the first couple of months) for keeping up the lab's Lisp Machine system, Stallman was incensed. The Symbolics hackers had left the system code with hundreds of half-made changes that caused errors. Viewing this announcement as an ``ultimatum,'' he retaliated by disconnecting Symbolics' microwave communications link to the laboratory. He then vowed never to work on a Symbolics machine, and pledged to continue the development of MIT's system so as to defend LMI from Symbolics. ``The way I saw it, the AI Lab was a neutral country, like Belgium in World War II,'' Stallman says. ``If Germany invades Belgium, Belgium declares war on Germany and sides with Britain and France.''
|
Когда руководители Symbolics заметили, что их последние новшества всё так же появляются и на МТИ-версии Lisp-машины, они разозлились и стали обвинять хакеров Лаборатории в воровстве кода. Но Столлман нисколько не нарушал закона об авторском праве. Он изучил код, предоставленный Symbolics, и сделал логичные предположения о будущих исправлениях и усовершенствованиях, которые и стал реализовывать с нуля для Lisp-машины МТИ. Руководители Symbolics не верили этому. Они установили шпионскую программу на терминал Столлмана, которая записывала всё, что Ричард делал. Так они надеялись собрать улики воровства кода и показать их администрации МТИ, но даже к началу 1983 года показывать было почти нечего. Всё, что у них было, это какая-то дюжина мест, где код двух систем выглядел немного схоже.
|
||||||
|
|
||||||
When Symbolics executives noticed that their latest features were still appearing in the MIT Lisp Machine system and, by extension, the LMI Lisp machine, they were not pleased. Stallman knew what copyright law required, and was rewriting the features from scratch. He took advantage of the opportunity to read the source code Symbolics supplied to MIT, so as to understand the problems and fixes, and then made sure to write his changes in a totally different way. But the Symbolics executives didn't believe this. They installed a ``spy'' program on Stallman's computer terminal looking for evidence against him. However, when they took their case to MIT administration, around the start of 1983, they had little evidence to present: a dozen places in the sources where both versions had been changed and appeared similar.
|
Когда администраторы Лаборатории показали доказательства Symbolics Столлману, он опроверг их, сказав, что код был именно похожим, но не одинаковым. И обратил логику руководства Symbolics против него самого: если эти крупицы похожего кода -- всё, что на него смогли накопать, то это лишь доказывает, что Столлман на самом деле не воровал код. Этого было достаточно, чтобы управляющие Лабораторией одобрили работу Столлмана, и он продолжал её до конца 1983 года. \endnote{В \textit{The Brain Makers} авторства H. P. Newquist почему-то сказано, что начальство Лаборатории сказало Столлману держаться подальше от Lisp-машины, что неправда}.
|
||||||
|
|
||||||
When the AI Lab administrators showed Stallman Symbolics' supposed evidence, he refuted it, showing that the similarities were actually held over from before the fork. Then he turned the logic around: if, after the thousands of lines he had written, Symbolics could produce no better evidence than this, it demonstrated that Stallman's diligent efforts to avoid copying were effective. The AI Lab approved Stallman's work, which he continued till the end of 1983.\endnote{\textit{The Brain Makers} by H. P. Newquist says inaccurately that the AI Lab told Stallman to stay away from the Lisp Machine project.}
|
Но свой подход Столлман изменил. Чтобы максимально обезопасить себя и проект от претензий Symbolics, он совсем перестал смотреть в их исходные коды. Он стал писать код исключительно по документации. Самые большие новшества Ричард не ждал от Symbolics, а реализовывал сам, потом лишь добавлял интерфейсы для совместимости с реализацией Symbolics, опираясь на их документацию. Также он читал список изменений в коде Symbolics, чтобы понять, какие ошибки они исправляли, и исправлял эти ошибки самостоятельно, другими способами.
|
||||||
|
|
||||||
Stallman did make a change in his practices, though. ``Just to be ultra safe, I no longer read their source code [for new features and major changes]. I used only the documentation and wrote the code from that.'' For the biggest new features, rather than wait for Symbolics to release documentation, he designed them on his own; later, when the Symbolics documentation appeared, he added compatibility with Symbolics' interface for the feature. Then he read Symbolics' source code changes to find minor bugs they had fixed, and fixed each of them differently.
|
Происходящее укрепило решимость Столлмана. Создав аналоги новых функций Symbolics, он склонил сотрудников Лаборатории к МТИ-версии Lisp-машины, что обеспечило хороший уровень тестирования и поиска ошибок. А МТИ-версия была полностью открыта для LMI. \enquote{Я хотел наказать Symbolics любой ценой}, -- рассказывает Столлман. Это заявление говорит не только о том, что характер Ричарда далёк от пацифизма, но и о том, что конфликт вокруг Lisp-машины задел его за живое.
|
||||||
|
|
||||||
The experience solidified Stallman's resolve. As Stallman designed replacements for Symbolics' new features, he also enlisted members of the AI Lab to keep using the MIT system, so as to provide a continuous stream of bug reports. MIT continued giving LMI direct access to the changes. ``I was going to punish Symbolics if it was the last thing I did,'' Stallman says. Such statements are revealing. Not only do they shed light on Stallman's nonpacifist nature, they also reflect the intense level of emotion triggered by the conflict.
|
Отчаянную решимость Столлмана можно понять, если учесть, как происходящее выглядело для него -- \enquote{разрушением} его \enquote{дома}, то есть хакерского сообщества и культуры Лаборатории ИИ. Позднее Леви брал у Столлмана интервью по электронной почте, и Ричард там сравнивал себя с Иши -- последним известным представителем индейской народности Яхи, которую истребили в индейских войнах 1860-1870-х годов. Эта аналогия придаёт излагаемым событиям эпический, почти мифологический размах. \endnote{Стивен Леви в своей книге \enquote{Хакеры}, описывая этот период, называет Столлмана \enquote{последним настоящим хакером}, но в несколько другом смысле, чем многие могли бы подумать. Леви называет \enquote{настоящими хакерами} конкретно хакеров МТИ, в противоположность двум другим хакерским сообществам, которые описывает в книге. Когда МТИ-сообщество распалось, Столлман остался последним из \enquote{настоящих хакеров}. Леви не имел в виду, что другие хакеры были какими-то фальшивыми или уступали \enquote{настоящим} в способностях и умениях, но люди часто понимают его слова именно таким образом, потому что не читают и не вникают в объяснения Леви. Сам же Столлман никогда не описывал себя в подобных терминах.} Хакеры, что работали на Symbolics, видели это в несколько другом свете: их компания не разрушала и не истребляла, а только делала то, что давно нужно было сделать. Переместив Lisp-машину в поле коммерции, Symbolics сменила подход к проектированию программ -- вместо кройки их по твердолобым лекалам хакеров стали использоваться более мягкие и человечные нормы менеджеров. И Столлмана они расценивали не как противника-бойца на страже правого дела, а как носителя устаревшего мышления.
|
||||||
|
|
||||||
The level of despair owed much to what Stallman viewed as the ``destruction'' of his ``home'' -- i.e., the demise of the AI Lab's close-knit hacker subculture. In a later email interview with Levy, Stallman would liken himself to the historical figure Ishi, the last surviving member of the Yahi, a Pacific Northwest tribe wiped out during the Indian wars of the 1860s and 1870s. The analogy casts Stallman's survival in epic, almost mythical, terms.\endnote{Steven Levy in \textit{Hackers} had this period in mind when he described Stallman as the ``last of the true hackers,'' but his intended meaning was not what you might think. Levy used the term ``true hackers'' to distinguish the MIT hacker community from two other hacker communities described later in the book, to which he gave other names. When this community had dissolved, leaving only Stallman, he therefore became the last of the ``true hackers.'' Levy did not mean that nobody else was truly a hacker, but people tend to interpret his words that way, especially those who see them without reading the explanations in Levy's book. Stallman has never described himself using those words of Levy's.} The hackers
|
Масла в огонь подлили и личные раздоры. Ещё до появления Symbolics многие хакеры сторонились Столлмана, а теперь ситуация ухудшилась многократно. \enquote{Меня больше не звали в поездки до Чайна-тауна, -- вспоминает Ричард, -- Гринблатт дал начало обычаю: когда ты хочешь пообедать, ты обходишь коллег и зовёшь их с собой, или же шлёшь им сообщение. Где-то в 1980-1981 году меня перестали звать. Они не только не приглашали меня, но и, как признался мне потом один человек, давили на остальных, чтобы никто не говорил мне о планируемых поездах на обед}.
|
||||||
who worked for Symbolics saw it differently. Instead of seeing Symbolics as an exterminating force, many of Stallman's colleagues saw it as a belated bid for relevance. In commercializing the Lisp Machine, the company pushed hacker principles of engineer-driven software design out of the ivory-tower confines of the AI Lab and into the corporate marketplace where manager-driven design principles held sway. Rather than viewing Stallman as a holdout, many hackers saw him as the representative of an obsolete practice.
|
|
||||||
|
|
||||||
Personal hostilities also affected the situation. Even before Symbolics hired away most of the AI Lab's hacker staff, Stallman says many of the hackers who later joined Symbolics were shunning him. ``I was no longer getting invited to go to Chinatown,'' Stallman recalls. ``The custom started by Greenblatt was that if you went out to dinner, you went around or sent a message asking anybody at the lab if they also wanted to go. Sometime around 1980-1981, I stopped getting asked. They were not only not inviting me, but one person later confessed that he had been pressured to lie to me to keep their going away to dinner without me a secret.''
|
Столлману было больно попасть под остракизм своих коллег, но ничего поделать с этим он не мог. Ультиматум Symbolics перенёс проблему из сферы личных обид и конфликтов в сферу глобальной несправедливости. Компания решила держать при себе изменения в исходных кодах, чтобы победить в конкуренции, и для Столлмана было делом принципа помешать этому. Он приходил в Лабораторию и создавал полноценные аналоги каждому новшеству и исправлению Symbolics, чтобы потом распространить их среди широкой публики, включая клиентов LMI, и таким образом восстанавливал баланс сил.
|
||||||
|
|
||||||
Although Stallman felt hurt by this petty form of ostracism, there was nothing to be done about it. The Symbolics ultimatum changed the matter from a personal rejection to a broader injustice. When Symbolics excluded its source changes from redistribution, as a means to defeat its rival, Stallman determined to thwart Symbolics' goal. By holing up in his MIT offices and writing equivalents for each new software feature and fix, he gave users of the MIT system, including LMI customers, access to the same features as Symbolics users.
|
Эта борьба обеспечила ему репутацию легенды хакерского мира. Уже известный своей работой над Emacs, Столлман в одиночку делал то же, что делала целая команда программистов Symbolics, в которую, между прочим, входило несколько ещё более легендарных фигур. Такая сила гарантировала почёт и уважение в информационную эру, как и в любую эру, впрочем. Столлмана прозвали \enquote{хак-мастером}, сам себя он называл \enquote{виртуальным Джоном Генри компьютерного кода}, и многие нанятые Symbolics хакеры невольно уважали своего чересчур идеалистичного товарища. Как пишет Стивен Леви: один из таких хакеров, Билл Госпер, который впоследствии ушёл работать на Symbolics в Пало-Альто, восхищался производительностью Столлмана в тот период:
|
||||||
|
|
||||||
It also guaranteed Stallman's legendary status within the hacker community. Already renowned for his work with Emacs, Stallman's ability to match the output of an entire team of Symbolics programmers -- a team that included more than a few legendary hackers itself -- still stands as one of the major human accomplishments of the Information Age, or of any age for that matter. Dubbing it a ``master hack'' and Stallman himself a ``virtual John Henry of computer code,'' author Steven Levy notes that many of his Symbolics-employed rivals had no choice but to pay their idealistic former comrade grudging respect. Levy quotes Bill Gosper, a hacker who eventually went to work for Symbolics in the company's Palo Alto office, expressing amazement over Stallman's output during this period:
|
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
I can see something Stallman wrote, and I might decide it was bad (probably not, but somebody could convince me it was bad), and I would still say, ``But wait a minute -- Stallman doesn't have anybody to argue with all night over there. He's working alone! It's incredible anyone could do this alone!''\endnote{See Steven Levy, \textit{Hackers} (Penguin USA [paperback], 1984): 426}
|
Я смотрел на код Столлмана и думал, что он плох, ну то есть, не прям уж так плох, но там было к чему прицепиться, а потом думал: погоди, Столлману же не с кем было всю ночь напролёт обсуждать код! Он работает один! Чтобы кто-нибудь мог сделать такое в одиночку -- да это невероятно!\endnote{Steven Levy, \textit{Hackers} (Penguin USA [paperback], 1984): 426}
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
For Stallman, the months spent playing catch up with Symbolics evoke a mixture of pride and profound sadness. As a dyed-in-the-wool liberal whose father had served in World War II, Stallman is no pacifist. In many ways, the Symbolics war offered the rite of passage toward which Stallman had been careening ever since joining the AI Lab staff a decade before. At the same time, however, it coincided with the traumatic destruction of the AI Lab hacker culture that had nurtured Stallman since his teenage years. One day, while taking a break from writing code, Stallman experienced a traumatic moment passing through the lab's equipment room. There, Stallman encountered the hulking, unused frame of the PDP-10 machine. Startled by the dormant lights, lights that once actively blinked out a silent code indicating the status of the internal program, Stallman says the emotional impact was not unlike coming across a beloved family member's well-preserved corpse.
|
Столлман, вспоминая месяцы догонялок с Symbolics, испытывает гордость, смешанную с печалью. Будучи либералом до мозга костей, чей отец прошёл через Вторую Мировую войну, Ричард не был пацифистом. Война с Symbolics стала \enquote{боевым крещением} Столлмана, которого ему не хватало все годы работы в МТИ. С другой стороны, это крещение разрушило хакерскую культуру Лаборатории, на которой рос Ричард с юношеских лет, и это было для него трагедией. Однажды он шёл по Лаборатории и увидел PDP-10. Когда-то эта машина была основной рабочей лошадкой хакеров, которую они холили и лелеяли, но теперь эта громадина стояла в полной тишине и темноте -- не мигали лампочки, не шумели внутренние устройства. Картина потрясла Столлмана до глубины души -- сильнее, чем если бы он увидел мёртвым члена своей семьи.
|
||||||
|
|
||||||
``I started crying right there in the machine room,'' he says. ``Seeing the machine there, dead, with nobody left to fix it, it all drove home how completely my community had been destroyed.''
|
\enquote{Я расплакался прямо там, -- говорит Ричард, -- увидев мёртвую машину, которую больше некому было починить и вернуть к жизни, я отчётливо понял, что наш дружный коллектив уничтожен}.
|
||||||
|
|
||||||
Stallman would have little opportunity to mourn. The Lisp Machine, despite all the furor it invoked and all the labor that had gone into making it, was merely a sideshow to the large battles in the technology marketplace. The relentless pace of computer miniaturization was bringing in newer, more powerful microprocessors that would soon incorporate the machine's hardware and software capabilities like a modern metropolis swallowing up an ancient desert village.
|
Ему действительно было о чём скорбеть. Lisp-машина, несмотря на весь фурор вокруг неё, и весь труд, вложенный в неё, была лишь побочным эффектом грандиозных битв, что разворачивались на рынке высоких технологий. Бешеный темп миниатюризации компьютеров создавал всё более новые и мощные процессоры, которые пожирали всё, что было наработано за предыдущие десятилетия, как современный мегаполис поглощает старые деревеньки.
|
||||||
|
|
||||||
Riding atop this microprocessor wave were hundreds -- thousands -- of proprietary software programs, each protected by a patchwork of user licenses and nondisclosure agreements that made it impossible for hackers to review or share source code. The licenses were crude and ill-fitting, but by 1983 they had become strong enough to satisfy the courts and scare away would-be interlopers. Software, once a form of garnish most hardware companies gave away to make their expensive computer systems more flavorful, was quickly becoming the main dish. In their increasing hunger for new games and features, users were putting aside the traditional demand to review the recipe after every meal.
|
Эту микропроцессорную волну оседлали сотни и тысячи собственнических программ, которые были наглухо защищены несвободными лицензиями и соглашениями о неразглашении. Хакерскому вольному обращению с исходными кодами приходил конец. Поначалу эти лицензии было довольно грубо и нелепо составлены, но уже в 1983 году стали достаточно проработанными, чтобы обрести силу в судах и напугать потенциальных нарушителей. Если раньше программы были гарниром и соусом к оборудованию, и компании свободно раздавали их ради придания вкуса своим продуктам, то теперь ПО становилось основным блюдом. А пользователи жаждали всё больше готовой функциональности и развлечений, так что никому не стало дела до возможности менять рецепты по своему усмотрению.
|
||||||
|
|
||||||
Nowhere was this state of affairs more evident than in the realm of personal computer systems. Companies such as Apple Computer and Commodore were minting fresh millionaires selling machines with built-in operating systems. Unaware of the hacker culture and its distaste for binary-only software, many of these users saw little need to protest when these companies failed to attach the accompanying source-code files. A few anarchic adherents of the hacker ethic helped propel that ethic into this new marketplace, but for the most part, the marketplace rewarded the programmers speedy enough to write new programs and savvy enough to write End User License Agreements to lock them up tight.
|
С особенной остротой это проявлялось в сфере персональных компьютеров. Компании вроде Apple и Commodore штамповали миллионеров на продажах компьютеров со встроенными операционными системами. Не подозревая о хакерской культуре, большинство их пользователей не обращали внимания на отсутствие исходных кодов. Немногие хакеры-анархисты смогли рассказать широкой публике о ценностях хакерской этики, но они мало кого заинтересовали. Рынок продолжал вознаграждать программистов, которые быстро клепали новые продукты и защищали их лицензиями типа EULA.
|
||||||
|
|
||||||
One of the most notorious of these programmers was Bill Gates, a Harvard dropout two years Stallman's junior. Although Stallman didn't know it at the time, seven years before sending out his message to thenet.unix-wizards newsgroup, Gates, a budding entrepreneur and general partner with the Albuquerque-based software firm Micro-Soft, later spelled as Microsoft, had sent out his own open letter to the software-developer community. Written in response to the PC users copying Micro-Soft's software programs, Gates' ``Open Letter to Hobbyists'' had excoriated the notion of communal software development.
|
Одним из таких печально известных программистов был Билл Гейтс, ушедший из Гарварда за 2 года до того, как туда поступил Столлман. А за 7 лет до того, как Ричард опубликовал своё историческое сообщение о создании Hurd, Билл Гейтс, тогда ещё начинающий владелец компании Micro-Soft, написал публичное письмо, адресовав его разработчикам открытого ПО и тем пользователям, что свободно копировали коммерческие программы. \enquote{Открытое письмо любителям} отвергало концепцию коллективной разработки программ.
|
||||||
|
|
||||||
``Who can afford to do professional work for nothing?'' asked Gates. ``What hobbyist can put three man-years into programming, finding all bugs, documenting his product, and distributing it for free?''\endnote{See Bill Gates, ``An Open Letter to Hobbyists'' (February 3, 1976). To view an online copy of this letter, go to \url{http://en.wikipedia.org/wiki/Open_Letter_to_Hobbyists}.}
|
\enquote{Кто может позволить себе профессионально работать ни за что? -- вопрошал Гейтс. -- Какой энтузиаст способен убить 3 года своей жизни на программирование, исправление ошибок, документацию, и потом раздать всё это бесплатно?}\endnote{Источник: Bill Gates, \enquote{An Open Letter to Hobbyists} (February 3, 1976). Больше информации здесь: \url{https://ru.wikipedia.org/wiki/Открытое_письмо_любителям}.}
|
||||||
|
|
||||||
Although few hackers at the AI Lab saw the missive, Gates' 1976 letter nevertheless represented the changing attitude toward software both among commercial software companies and commercial software developers. Why treat software as a zero-cost commodity when the market said otherwise? As the 1970s gave way to the 1980s, selling software became more than a way to recoup costs; it became a political statement. At a time when the Reagan Administration was rushing to dismantle many of the federal regulations and spending programs that had been built up during the half century following the Great Depression, more than a few software programmers saw the hacker ethic as anticompetitive and, by extension, un-American. At best, it was a throwback to the anticorporate attitudes of the late 1960s and early 1970s. Like a Wall Street banker discovering an old tie-dyed shirt hiding between French-cuffed shirts and double-breasted suits, many computer programmers treated the hacker ethic as an embarrassing reminder of an idealistic age.
|
Среди хакеров Лаборатории ИИ немногие читали это письмо, долго оставалось оно неизвестным и для Столлмана, но всё же это письмо 1976 года озвучило то, что уже давно витало в воздухе, бродило в умах не только менеджеров коммерческих компаний, но и самих программистов. Почему программное обеспечение нужно считать бесплатным общественным благом, если рынок показывает иное? К 80-м годам продажа ПО из чистой экономики стала переходить в область политики. В это время администрация Рейгана сворачивала многие федеральные законы и программы социальной направленности, введённые из-за Великой Депрессии, и очень многие программисты стали считать хакерскую этику подрывающей конкуренцию, рынок и саму Америку. В лучшем случае это было похоже на рудимент антикорпоративизма ранних 70-х годов. Они относились к хакерской этике так же, как отнёсся бы финансист с Уолл-стрит к дешёвенькой рубашке своей юности, натолкнувшись на неё промеж своих двубортных костюмов в шкафу -- с ироничной ностальгией, как к воспоминанию об идеализме юных лет.
|
||||||
|
|
||||||
For a man who had spent the entire 1960s as a throwback to the 1950s, Stallman didn't mind living out of step with his peers. As a programmer used to working with the best machines and the best software, however, Stallman faced what he could only describe as a ``stark moral choice'': either swallow his ethical objection for ``proprietary'' software -- the term Stallman and his fellow hackers used to describe any program that carried copyright terms or an end-user license that restricted copying and modification -- or dedicate his life to building an alternate, nonproprietary system of software programs. After his two-year battle with Symbolics, Stallman felt confident enough to undertake the latter option. ``I suppose I could have stopped working on computers altogether,'' Stallman says. ``I had no special skills, but I'm sure I could have become a waiter. Not at a fancy restaurant, probably, but I could've been a waiter somewhere.''
|
Столлману, который свои шестидесятые годы прожил как бы в пятидесятых, было не привыкать идти не в ногу со всеми. Он всегда использовал лучшие компьютеры и лучшие программы, и теперь перед ним возник выбор, который можно было назвать только \enquote{дилеммой абсолютной морали}: снять все возражения против собственнических программ, которые запрещалось редактировать и раздавать, или же потратить жизнь на создание альтернативной, свободной программной экосистемы. После успешной двухлетней битвы с Symbolics Ричард почувствовал в себе достаточно сил и способностей на второй вариант. \enquote{Думаю, я мог в случае чего вообще перестать пользоваться компьютерами, -- говорит Столлман, -- конечно, ничего другого я не умел, но вполне мог бы работать в сфере питания, пусть и не в шикарном ресторане, а в какой-нибудь забегаловке}.
|
||||||
|
|
||||||
Being a waiter -- i.e., dropping out of programming altogether -- would have meant completely giving up an activity, computer programming, that had given him so much pleasure. Looking back on his life since moving to Cambridge, Stallman finds it easy to identify lengthy periods when software programming provided the only pleasure. Rather than drop out, Stallman decided to stick it out.
|
Это означало бы полностью забросить программирование -- именно то, что приносило Ричарду больше всего удовольствия. Со времён Кембриджа были периоды, когда программирование было вообще единственной радостью в жизни. Конечно, Столлман решил бороться за него, а не бросать.
|
||||||
|
|
||||||
An Atheist, Stallman rejects notions such as fate, karma, or a divine calling in life. Nevertheless, he does feel that the decision to shun proprietary software and build an operating system to help others do the same was a natural one. After all, it was Stallman's own personal combination of stubbornness, foresight, and coding virtuosity that led him to consider a fork in the road most others didn't know existed. In his article, ``The GNU Project,'' Stallman affirms agreement with the ideals encapsulated in the words of the Jewish sage Hillel:
|
Столлман -- твёрдый атеист, он отвергает такие понятия, как судьба, карма, божественное призвание, но своё решение бороться с закрытым ПО он ощущал чем-то вроде миссии. В конце концов, именно коронное столлмановское сочетание упрямства, дальновидности и высочайшего мастерства в программировании помогли ему увидеть проблему там, где её никто не замечал. В своей статье \enquote{Проект GNU} Ричард соглашается с идеалами, что высказал еврейский законоучитель Гиллель:
|
||||||
|
|
||||||
\begin{quote}
|
\begin{quote}
|
||||||
If I am not for myself, who will be for me? If I am only for myself, what am I? If not now, when?\endnote{See \url{http://www.gnu.org/gnu/the-gnu-project.html}. Stallman adds his own footnote to this statement, writing, ``As an Atheist, I don't follow any religious leaders, but I sometimes find I admire something one of them has said.''}
|
Если я не для себя, кто для меня? И будучи только для себя, кто я? И если не сейчас, то когда??\endnote{Источник: \url{http://www.gnu.org/gnu/the-gnu-project.html}. Столлман добавил к этому своё замечание: \enquote{Я атеист и не следую религиозным лидерам, но меня порой восхищает то, что они говорят}.}
|
||||||
\end{quote}
|
\end{quote}
|
||||||
|
|
||||||
Speaking to audiences, Stallman avoids the religious route and expresses the decision in pragmatic terms. ``I asked myself: what could I, an operating-system developer, do to improve the situation? It wasn't until I examined the question for a while that I realized an operating-system developer was exactly what was needed to solve the problem.''
|
Обращаясь к аудитории, Столлман избегает религиозной риторики и выставляет своё решение в сугубо прагматичном свете. \enquote{Я спросил себя: что я, как системный программист, могу сделать в этой ситуации? У меня не было бы ответа, не будь я разработчиком операционных систем. Именно это было нужно, чтобы решить проблему}.
|
||||||
|
|
||||||
Once he recognized that, Stallman says, everything else ``fell into place.'' In 1983, MIT was acquiring second-generation Lisp Machines from Symbolics, on which the MIT Lisp Machine system could not possibly run. Once most of the MIT machines were replaced, he would be unable to continue maintaining that system effectively for lack of users' bug reports. He would have to stop. But he also wanted to stop. The MIT Lisp Machine system was not free software: even though users could get the source code, they could not redistribute it freely. Meanwhile, the goal of continuing the MIT system had already been achieved: LMI had survived and was developing software on its own.
|
Как только Ричард это понял -- для него всё встало на свои места. В 1983 году МТИ стал покупать Lisp-машины второго поколения от Symbolics, на которых не работала МТИ-версия операционной системы. Когда эти машины заполонят всю Лабораторию, Столлман больше не сможет работать над общей версией системы, хотя бы потому, что некому будет слать ему отчёты об ошибках. Пришла пора остановиться. Но Ричард и сам хотел остановиться. Хоть МТИ-версия системы для Lisp-машин не была свободной -- пользователям не разрешалось раздавать её исходный код -- свою задачу она выполнила: компания LMI выжила и уже сама делала программное обеспечение.
|
||||||
|
|
||||||
Stallman didn't want to spend his whole life punishing those who had destroyed his old community. He wanted to build a new one. He decided to denounce software that would require him to compromise his ethical beliefs, and devote his life to the creation of programs that would make it easier for him and others to escape from it. Pledging to build a free software operating system ``or die trying -- of old age, of course,'' Stallman quips, he resigned from the MIT staff in January, 1984, to build GNU.
|
Столлману не хотелось тратить всю свою жизнь на то, чтобы наказать компанию, что разрушила старый хакерский коллектив. Ему хотелось создать новый. Ричард решительно осудил программное обеспечение, которое требовало нарушить этический кодекс, и занялся созданием программ, которые позволили бы ему и другим людям оставаться в гармонии со своей совестью. Дав себе клятву: создай свободную систему или умри (\enquote{от старости, конечно}, -- со смехом добавляет здесь Столлман), он увольняется из МТИ в январе 1984 года, чтобы посвятить всё своё время GNU.
|
||||||
|
|
||||||
The resignation distanced Stallman's work from the legal auspices of MIT. Still, Stallman had enough friends and allies within the AI Lab to continue using the facilities, and later his own office. He also had the ability to secure outside consulting gigs to underwrite the early stages of the GNU Project. In resigning from MIT, however, Stallman negated any debate about conflict of interest or Institute ownership of the software. The man whose early adulthood fear of social isolation had driven him deeper and deeper into the AI Lab's embrace was now building a legal firewall between himself and that environment.
|
Увольнение лишило его возможности обращаться к юридической поддержке МТИ. Но у него оставалось достаточно сторонников, чтобы дальше пользоваться оборудованием и помещениями Лаборатории. Также Ричард мог использовать сторонние юридические консультации для поддержки проекта GNU на ранних этапах. Впрочем, от института Столлман несколько отдалился, отвергнув все притязания МТИ на код, что он написал, будучи сотрудником Лаборатории. Человеку, который десяток лет назад нашёл в Лаборатории спасение от ужасной социальной изоляции, теперь приходилось строить правовые барьеры между нею и собой.
|
||||||
|
|
||||||
For the first few months, Stallman operated in isolation from the Unix community as well. Although his announcement to the net.unix-wizards group had attracted sympathetic responses, few volunteers signed on to join the crusade in its early stages.
|
Первые месяцы Столлман работал и отдельно от Unix-сообщества. Его призыву в группе net.unix-wizards симпатизировали, но тех, кто решился поддержать начинание каким-то делом, можно было пересчитать по пальцам одной руки.
|
||||||
|
|
||||||
``The community reaction was pretty much uniform,'' recalls Rich Morin, leader of a Unix user group at the time. ``People said, `Oh, that's a great idea. Show us your code. Show us it can be done.'\hspace{0.01in}''
|
\enquote{Члены сообщества были почти единогласны в отзывах, -- вспоминает Рич Морин, лидер группы пользователей Unix тех времён, -- они говорили: \enquote{О, это классная идея. Покажи нам свой код. Покажи, что это вообще возможно}.\hspace{0.01in}}
|
||||||
|
|
||||||
Aware that the job was enormous, Stallman decided to try to reuse existing free software wherever possible. So he began looking for existing free programs and tools that could be converted into GNU programs and tools. One of the first candidates was a compiler named VUCK, which converted programs written in the popular C programming language into machine-runnable code. Translated from the Dutch, the program's acronym stood for the Free University Compiler Kit. Optimistic, Stallman asked the program's author if the program was free. When the author informed him that the words ``Free University'' were a reference to the Vrije Universiteit in Amsterdam, and that the program was not free, Stallman was chagrined.
|
Осознавая масштабность замысла, Столлман решил использовать все существующие свободные программы, какие только можно было достать. Он стал искать такие программы и утилиты, которые мог бы переделать для GNU. Одним из первых кандидатов стал компилятор FUCK, что переводил программы с языка программирования С в машинный код. Название FUCK было акронимом: Free University Compiler Kit, и слово \enquote{Free} в нём обнадёживало. Ричард спросил у автора программы, действительно ли она свободна. Тот ответил, что слова \enquote{Free University} обозначали Амстердамский свободный университет, а не саму программу. Столлман огорчился.
|
||||||
|
|
||||||
``He responded derisively, stating that the university was free but the compiler was not,'' recalls Stallman. He had not only refused to help -- he suggested Stallman drop his plan to develop GNU, and instead write some add-ons to boost sales of VUCK, in return for a share of the profits. ``I therefore decided that my first program for the GNU Project would be a multi-language, multi-platform compiler.''\endnote{See Richard Stallman, ``The GNU Operating System and the Free Software Movement,'' \textit{Open Sources} (O'Reilly \& Associates, Inc., 1999): 65.}
|
\enquote{Он насмешливо ответил, что университет свободен, а компилятор -- нет}, -- вспоминает Ричард. Автор не просто отказался помочь, он ещё и предложил Столлману бросить затею с проектом GNU и в обмен на долю прибыли написать несколько дополнений к FUCK, чтобы подстегнуть продажи компилятора. \enquote{Поэтому я решил, что первой программой проекта GNU станет мультиязычный и мультиплатформенный компилятор}.\endnote{Richard Stallman, \enquote{The GNU Operating System and the Free Software Movement,} \textit{Open Sources} (O'Reilly \& Associates, Inc., 1999): 65.}
|
||||||
|
|
||||||
Instead of VUCK, Stallman found the Pastel compiler (``off-color Pascal''), written by programmers at Lawrence Livermore National Lab. According to what they said when they gave him a copy, the compiler was free to copy and modify. Unfortunately, the program was unsuitable for the job, because its memory requirements were enormous. It parsed the entire input file in core memory, then retained all the internal data until it finished compiling the file. On mainframe systems this design had been forgivable. On Unix systems it was a crippling barrier, since even 32-bit machines that ran Unix were often unable to provide so much memory to a program. Stallman made substantial progress at first, building a C-compatible frontend to the compiler and testing it on the larger Vax, whose system could handle large memory spaces. When he tried porting the system to the 68010, and investigated why it crashed, he discovered the memory size problem, and concluded he would have to build a totally new compiler from scratch. Stallman eventually did this, producing the GNU C Compiler or GCC. But it was not clear in 1984 what to do about the compiler, so he decided to let those plans gel while turning his attention to other parts of GNU.
|
Махнув рукой на FUCK, Столлман снова принялся за поиски, и скоро нашёл компилятор Pastel (\enquote{не цветной Паскаль}), написанный программистами Ливерморской национальной лаборатории им. Лоуренса. Они дали копию компилятора Ричарду и сказали, что он волен делать с нею всё, что вздумается. К сожалению, компилятор был непригоден к использованию в GNU из-за непомерных аппетитов к оперативной памяти. Он анализировал в ней весь входной файл, и потом держал в ней все его данные до самого окончания компиляции. На мейнфреймах это не вызывало проблем, но на Unix-системах даже у 32-битных версий зачастую не было столько оперативной памяти. Столлман начал было работать над этим компилятором, создав интерфейс для языка С и опробовав её на большом компьютере VAX, но во время переноса программы на платформу 68010 начались падения из-за нехватки памяти, и Ричард понял, что остаётся только создать новый компилятор с нуля. Пройдёт время, и Столлман сделает это, создав GNU C Compiler или GCC. Но в 1984 году он ещё не совсем понимал, как взяться за это дело, так что временно переключился на другие задачи проекта GNU.
|
||||||
|
|
||||||
In September of 1984, thus, Stallman began development of a GNU version of Emacs, the replacement for the program he had been supervising for a decade. Within the Unix community, the two native editor programs were vi, written by Sun Microsystems cofounder Bill Joy, and ed, written by Bell Labs scientist (and Unix cocreator) Ken Thompson. Both were useful and popular, but neither offered the endlessly expandable nature of Emacs.
|
Самым очевидным шагом был выпуск GNU-версии редактора Emacs, этим Столлман и занялся в сентябре 1984 года. Сообщество Unix уже имело два родных для этой системы текстовых редактора: vi, написанный сооснователем Sun Microsystems Биллом Джоем, и ed, созданный учёным Bell Labs и одним из создателей Unix Кеном Томпсоном. Оба редактора были мощными и очень популярными, но до практически неограниченной мощи Emacs им было далеко.
|
||||||
|
|
||||||
Looking back, Stallman says he didn't view the decision in strategic terms. ``I wanted an Emacs, and I had a good opportunity to develop one.''
|
Сейчас Ричард говорит, что не придавал этому решению стратегического значения. \enquote{Я просто хотел заниматься Emacs, и у меня был отличный повод им заняться}.
|
||||||
|
|
||||||
Once again, Stallman had found existing code with which he hoped to save time. In writing a Unix version of Emacs, Stallman was soon following the footsteps of Carnegie Mellon graduate student James Gosling, author of a C-based version dubbed Gosling Emacs or Gosmacs. Gosling's version of Emacs included an interpreter for a simplified offshoot of the Lisp language, called Mocklisp. Although Gosling had put Gosmacs under copyright and had sold the rights to UniPress, a privately held software company, Stallman received the assurances of a fellow developer who had participated in early Gosmacs development. According to the developer, Gosling, while a Ph.D. student at Carnegie Mellon, had given him permission by email to distribute his own version of Gosmacs in exchange for his contribution to the code.
|
И тут Столлман смог воспользоваться уже существующим кодом, чтобы сэкономить время. Он скоро обнаружил версию Emacs, написанную на языке С аспирантом Карнеги-Меллона Джеймсом Гослингом. Она называлась Gosling Emacs или просто Gosmacs. Эта версия включала в себя интерпретатор упрощённого диалекта языка Lisp под названием Mocklisp. И хотя Гослинг защитил свою версию редактора авторским правом и потом продал его компании UniPress, Столлман получил карт-бланш от одного из разработчиков, который работал над Gosmacs на раннем этапе, и которому за это Гослинг дал полные права на ту раннюю версию редактора.
|
||||||
|
|
||||||
At first Stallman thought he would change only the user-level commands, to implement full compatibility with the original PDP-10 Emacs. However, when he found how weak Mocklisp was in comparison with real Lisp, he felt compelled to replace it with a true Lisp system. This made it natural to rewrite most of the higher-level code of Gosmacs in a completely different way, taking advantage of the greater power and flexible data structures of Lisp. By mid-1985, in GNU Emacs as released on the Internet, only a few files still had code remaining from Gosmacs.
|
Сначала Ричард рассчитывал изменить только пользовательские команды, чтобы добиться полной совместимости с оригинальным Emacs для PDP-10. Но когда увидел, насколько слаб Mocklisp на фоне обычного Lisp -- понял, что нужно полностью переделать интерпретатор. В такой ситуации было естественным переписать большую часть высокоуровневого кода Gosmacs на Lisp, чтобы использовать всю мощь и гибкость этого языка. В середине 1985 года GNU Emacs был размещён в интернете, и только в нескольких его файлах остался код Gosmacs.
|
||||||
|
|
||||||
Then UniPress caught wind of Stallman's project, and denied that the other developer had received permission to distribute his own version of Gosmacs. He could not find a copy of the old email to defend his claim. Stallman eliminated this problem by writing replacements for the few modules that remained from Gosmacs.
|
Позже компания UniPress узнала о проекте Столлмана, и стала отрицать, что некий разработчик имеет полные права на раннюю версию Gosmacs. Ричард не смог найти то электронное письмо, чтобы защититься от претензий, и решил проблему иначе: переписал оставшиеся части, полностью избавив программу от следов Gosmacs.
|
||||||
|
|
||||||
Nevertheless, the notion of developers selling off software rights -- indeed, the very notion of developers having such powers to sell in the first place -- rankled Stallman. In a 1986 speech at the Swedish Royal Technical Institute, Stallman cited the UniPress incident as yet another example of the dangers associated with proprietary software.
|
Тем не менее, существование разработчиков, продающих права на программы -- точнее, сама возможность их существования -- не давала Ричарду покоя. Произнося в 1986 году речь в Королевском технологическом институте Швеции, Столлман привёл в пример инцидент с компанией UniPress, как очередную опасность, связанную с несвободным ПО.
|
||||||
|
|
||||||
``Sometimes I think that perhaps one of the best things I could do with my life is find a gigantic pile of proprietary software that was a trade secret, and start handing out copies on a street corner so it wouldn't be a trade secret any more,'' said Stallman. ``Perhaps that would be a much more efficient way for me to give people new free software than actually writing it myself; but everyone is too cowardly to even take it.''\endnote{See Richard Stallman (1986).}
|
\enquote{Иногда я думаю: лучшее, что я мог бы сделать в своей жизни, это найти гигантскую кучу собственнических программ, представляющих коммерческую тайну, и раздать её прохожим на улице, чтобы этой коммерческой тайны больше не было, -- рассказывает Столлман, -- наверное, это был бы куда более эффективный способ дать людям свободное ПО, чем писать его самому, но люди слишком малодушны, чтобы это принять}.\endnote{Richard Stallman (1986).}
|
||||||
|
|
||||||
Despite the stress it generated, the dispute over Gosling's code would assist both Stallman and the free software movement in the long term. It would force Stallman to address the weaknesses of the Emacs Commune and the informal trust system that had allowed problematic offshoots to emerge. It would also force Stallman to sharpen the free software movement's political objectives. Following the release of GNU Emacs in 1985, Stallman issued \textit{The GNU Manifesto}, an expansion of the original announcement posted in September, 1983. Stallman included within the document a lengthy section devoted to the many arguments used by commercial and academic programmers to justify the proliferation of proprietary software programs. One argument, ``Don't programmers deserve a reward for their creativity,'' earned a response encapsulating Stallman's anger over the recent Gosling Emacs episode:
|
Инцидент с кодом Gosmacs не только потрепал нервы, но и пошёл на пользу Столлману и всему движению за свободное программное обеспечение. Он заставил Ричарда обратить внимание на слабые места \enquote{коммуны Emacs}, основанной на непринуждённом доверии, которое породило массу проблемных ответвлений редактора. Также Столлману пришлось тщательно проработать цели движения за свободное ПО. Вскоре после выпуска GNU Emacs, Ричард обнародовал \textit{Манифест проекта GNU} -- расширенную версию заявления 1983 года. Он включил в этот манифест множество аргументов, которые используют программисты из мира бизнеса и науки, чтобы оправдать создание собственнических программ. Один из этих аргументов гласил: \enquote{Разве программисты не заслуживают награды за свою творческую работу?}, и в ответе Столлмана на него чувствовался гнев из-за инцидента с Gosmacs:
|
||||||
|
|
||||||
``If anything deserves a reward, it is social contribution,'' Stallman wrote. ``Creativity can be a social contribution, but only in so far [\textit{sic}] as society is free to use the results. If programmers deserve to be rewarded for creating innovative programs, by the same token they deserve to be punished if they restrict the use of these programs.''\endnote{See Richard Stallman, \textit{The GNU Manifesto} (1985), \url{http://www.gnu.org/gnu/manifesto.html}.}
|
\enquote{Если что-то и заслуживает награды, то это вклад в общественное благо, -- писал Ричард, -- творчество может делать такой вклад, но только если [\textit{sic}] общество может свободно пользоваться его результатами. Если программисты заслуживают награды за создание новаторских программ, они также заслуживают и наказания за то, что ограничивают использование этих программ}.\endnote{Источник: Richard Stallman, \textit{The GNU Manifesto} (1985), \url{http://www.gnu.org/gnu/manifesto.html}.}
|
||||||
|
|
||||||
With the release of GNU Emacs, the GNU Project finally had code to show. It also had the burdens of any software-based enterprise. As more and more Unix developers began playing with the software, money, gifts, and requests for tapes began to pour in. To address the business side of the GNU Project, Stallman drafted a few of his colleagues and formed the Free Software Foundation (FSF), a nonprofit organization dedicated to speeding the GNU Project towards its goal. With Stallman as president and various friends and hacker allies as board members, the FSF helped provide a corporate face for the GNU Project.
|
С написанием GNU Emacs у Столлмана, наконец, появилось что показать Unix-сообществу. Появились и заботы, свойственные любому предприятию по разработке ПО. С ростом популярности программы среди Unix-разработчиков стал расти поток денег, подарков и, конечно, просьб. Чтобы управиться с деловой стороной проекта GNU, Ричард позвал на помощь нескольких своих коллег, и сформировал некоммерческую организацию -- Фонд свободного программного обеспечения (Free Software Foundation или FSF). Президент Фонда в лице Столлмана и члены уставного совета в лице его соратников-хакеров образовали \enquote{корпоративный интерфейс проекта GNU}.
|
||||||
|
|
||||||
Robert Chassell, a programmer then working at Lisp Machines, Inc., became one of five charter board members at the Free Software Foundation following a dinner conversation with Stallman. Chassell also served as the organization's treasurer, a role that started small but quickly grew.
|
Роберт Часселл, программист из LMI, стал одним из 5 членов уставного совета Фонда свободного ПО после разговора со Столлманом за обедом. Часселлу также досталась роль кассира организации -- небольшая поначалу, но всё более важная со временем.
|
||||||
|
|
||||||
``I think in '85 our total expenses and revenue were something in the order of \$23,000, give or take,'' Chassell recalls. ``Richard had his office, and we borrowed space. I put all the stuff, especially the tapes, under my desk. It wasn't until sometime later LMI loaned us some space where we could store tapes and things of that sort.''
|
\enquote{В 1985 году наши совокупные доходы и расходы составляли \$23,000, плюс-минус, -- вспоминает Часселл, -- у Ричарда был свой кабинет, и мы его заняли. Я положил все вещи, в основном -- плёнки, под стол. Лишь некоторое время спустя LMI выделила нам место, где мы могли хранить плёнки и прочие подобные вещи}.
|
||||||
|
|
||||||
In addition to providing a face, the Free Software Foundation provided a center of gravity for other disenchanted programmers. The Unix market that had seemed so collegial even at the time of Stallman's initial GNU announcement was becoming increasingly competitive. In an attempt to tighten their hold on customers, companies were starting to deny users access to Unix source code, a trend that only speeded the number of inquiries into ongoing GNU software projects. The Unix wizards who once regarded Stallman as a noisy kook were now beginning to see him as a software prophet or a software Cassandra, according as they felt hope or despair over escaping the problems he identified.
|
Фонд свободного программного обеспечения стал не только воплощением хакерского движения, но и центром притяжения таких же разочаровавшихся программистов. Когда Столлман впервые объявил о начале проекта GNU, мир Unix был довольно дружным сообществом, где процветало сотрудничество. Но очень быстро им овладела конкуренция. Компании старались всё жёстче контролировать пользователей, начали отказывать им в доступе к исходным кодам, и всё это делало GNU популярнее. Виртуозы Unix раньше считали Столлмана скандальным чудаком, но теперь видели в нём или пророка, или Кассандру от программирования, в зависимости от того, что они чувствовали в связи с этими проблемами -- надежду или отчаяние.
|
||||||
|
|
||||||
``A lot of people don't realize, until they've had it happen to them, how frustrating it can be to spend a few years working on a software program only to have it taken away,'' says Chassell, summarizing the feelings and opinions of the correspondents writing in to the FSF during the early years. ``After that happens a couple of times, you start to say to yourself, `Hey, wait a minute.'\hspace{0.01in}''
|
\enquote{Многие люди не понимают, каково это -- годами работать над программой, чтобы в итоге её у тебя отобрали, -- говорит Часселл, резюмируя чувства и мысли людей, что писали Фонду в его первые годы, -- и когда это случается один раз, второй раз, в третий вы уже говорите себе: \enquote{Эй, минуточку!}\hspace{0.01in}}
|
||||||
|
|
||||||
For Chassell, the decision to participate in the Free Software Foundation came down to his own personal feelings of loss. Prior to LMI, Chassell had been working for hire, writing an introductory book on Unix for Cadmus, Inc., a Cambridge-area software company. When Cadmus folded, taking the rights to the book down with it, Chassell says he attempted to buy the rights back with no success.
|
Решение Часселла присоединиться к Фонду тоже связано с личной потерей. До работы в LMI его нанимала компания Cadmus из Кембриджа для того, чтобы он написал книгу знакомства с Unix. Скоро Cadmus закрылась, похоронив с собой права на книгу. Часселл пытался их выкупить, но ничего не вышло.
|
||||||
|
|
||||||
``As far as I know, that book is still sitting on a shelf somewhere, unusable, uncopyable, just taken out of the system,'' Chassell says. ``It was quite a good introduction if I may say so myself. It would have taken maybe three or four months to convert [the book] into a perfectly usable introduction to GNU/Linux today. The whole experience, aside from what I have in my memory, was lost.''
|
\enquote{Насколько я знаю, эта книга всё ещё лежит где-то на полке, недоступная для чтения и копирования, просто выброшенная на обочину, -- рассказывает Часселл, -- а ведь она неплохо знакомила читателя с Unix. Хватило бы трёх-четырёх месяцев, чтобы превратить её в отличное знакомство с сегодняшним GNU/Linux. Но вся эта информация, все знания теперь потеряны, кроме тех следов, что остались в моей памяти}.
|
||||||
|
|
||||||
Forced to watch his work sink into the mire while his erstwhile employer struggled through bankruptcy, Chassell says he felt a hint of the anger that drove Stallman to fits of apoplexy. ``The main clarity, for me, was the sense that if you want to have a decent life, you don't want to have bits of it closed off,'' Chassell says. ``This whole idea of having the freedom to go in and to fix something and modify it, whatever it may be, it really makes a difference. It makes one think happily that after you've lived a few years that what you've done is worthwhile. Because otherwise it just gets taken away and thrown out or abandoned or, at the very least, you no longer have any relation to it. It's like losing a bit of your life.''
|
Видя, как его работа тонет в трясине, пока работодатель проходит через банкротство, Часселл испытал гнев, похожий на тот, что довёл Столлмана до предынфарктного состояния. \enquote{Мне совершенно ясно, что прожить достойную жизнь можно лишь не скрывая её части, -- объясняет Часселл, -- все эти мысли о свободе взять и изменить, исправить что-то -- они действительно важны. Благодаря этому вы чувствуете: то, что вы сделали за прожитые годы, действительно чего-то стоит. В ином случае результаты ваших дел просто заберут у вас, а то и просто выбросят, и вы больше не будете иметь к ним никакого отношения. Это всё равно что потерять часть своей жизни}.
|
||||||
|
|
||||||
\bigskip
|
\bigskip
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user