|
Первое сообщество сторонников обмена программами | Ричард Столлман: «Пользователи должны иметь право свободно изменять программы в соответствии со своими нуждами и свободно обмениваться программами, поскольку взаимопомощь — основа общества» |
Попав в 1971 году в лабораторию искусственного интеллекта (AI Lab) Массачусетского технологического института, я оказался вовлечен в сообщество сторонников свободного обмена программами, существовавшего уже долгие годы. Свободный обмен программами не ограничивался тогда рамками только нашего сообщества; он существовал столь же долго, как и сами компьютеры, а обмениваться рецептами люди стали с момента возникновения кулинарии. Однако мы делали в этом направлении больше многих. В AI Lab использовалась операционная система разделения времени, получившая название ITS (Incompatible Time-sharing System), которую хакеры* лаборатории спроектировали и написали на языке ассемблера для Digital PDP-10, одного из важнейших компьютеров нашей эпохи. Как участник этого сообщества, как хакер AI Lab, я должен был развивать эту ОС дальше. Мы не называли наши программы «свободно распространяемыми» (free software), поскольку тогда этого термина попросту не существовало, но суть была той же. Если специалисты другого университета или какой-либо компании хотели перенести или использовать программу, мы были готовы им ее предоставить. Если кто-то другой использовал неизвестную нам и интересную программу, мы всегда могли попросить ее исходные тексты, чтобы почитать, изменить или позаимствовать фрагменты для новой программы. Крах сообществаВ начале 80-х, когда Digital прекратила выпуск компьютеров серии PDP-10, ситуация резко изменилась. Архитектуру этих машин, казавшуюся в 60-х элегантной и мощной, невозможно было естественным образом расширить для поддержки больших адресных пространств, появление которых стало возможным в 80-х. Это означало, что практически все программы, созданные для ITS, оказались непригодными. Сообщество хакеров AI Lab распалось незадолго до этого. В 1981 году образовалась новая компания Symbolics, куда перешли практически все хакеры лаборатории, и поредевшее сообщество существовать дальше не могло. (Эти события описаны в книге «Хакеры» Стива Леви, дающей ясную картину жизни сообщества в его лучшие времена). Когда в 1982 году лаборатория приобрела новую PDP-10, руководство решило вместо ITC использовать коммерческую операционную систему, разработанную в самой Digital. Современные для той эпохи компьютеры, такие как VAX или 68020, имели свои собственные операционные системы, но ни одну из них нельзя было отнести к категории свободно распространяемых: вы подписывали соглашение о неразглашении даже приобретая исполняемую копию системы. То есть первое, что вы делали, решив воспользоваться компьютером — это обещали отказать в помощи своему соседу. Взаимопомощь категорически воспрещалась. Правило, которым руководствовались владельцы коммерческого ПО, звучало так: «Если вы поделились программой со своим соседом — вы пират. Если вы хотите что-либо в ней изменить — обращайтесь к нам». Вывод о том, что социальный уклад коммерческого ПО, то есть уклад, который запрещает вам делиться или обмениваться программами, антиобщественен, неэтичен, попросту несправедлив, некоторым из читателей может показаться абсурдным. Но как еще можно назвать уклад, базирующийся на разделении общества и осознанно оставляющую пользователей без помощи? Читатели, которым данный вывод кажется абсурдным, могут принять социальный уклад коммерческого ПО как данность или оценивать ее с позиций компаний, предлагающих коммерческие программы. Сторонники данного подхода долго и упорно убеждали людей в том, что такой подход является единственно возможным. Когда поставщики коммерческого ПО говорят о «соблюдении своих прав» или «необходимости остановить пиратство», на самом деле это всего лишь прикрытие их действительных намерений. По сути, за всеми этими лозунгами скрывается ряд предположений, правомерность которых никаким сомнениям не подвергается; предполагается, что общественность примет эти предположения как само собой разумеющееся. Давайте разберемся. Первое предположение состоит в том, что программные компании имеют несомненное естественное право собственности на свое программное обеспечение и, как следствие, власть над всеми своими пользователями. (Если бы это было естественным правом, тогда вне зависимости от того, какой вред оно бы ни несло, мы не могли бы против этого протестовать). Интересно отметить тот факт, что Конституция США и правовые традиции опровергают эту точку зрения; авторское право не является естественным правом, а является искусственно созданной, навязанной правительством монополией, которая ограничивает естественное право пользователей на копирование программ. Еще одно предположение заключается в том, что единственная важная характеристика любой программы — то, какую работу она вам позволяет выполнять; то есть мы, пользователи компьютеров, не должны заботиться о том, в каком именно обществе оно позволяет нам жить. Третье предположение — мы никогда не получим полезную программу, если не согласимся на то, что разработчик имеет власть над всеми пользователями ее программы. Это предположение казалось правдоподобным до тех пор, пока движение за свободно распространяемые программы не продемонстрировало, что мы можем получить достаточно полезное ПО, не заковывая при этом себя в цепи рабства. Если мы не принимаем эти предположения за истину и рассматриваем эти проблемы, исходя из общепринятой морали, при этом на первое место ставя интересы пользователей, мы придем к совсем иным выводам. Пользователи должны иметь право свободно изменять программы в соответствии со своими нуждами и свободно обмениваться программами, поскольку взаимопомощь — основа общества. На этих страницах не так много места, чтобы я мог подробно изложить обоснование такой точки зрения, поэтому я отсылаю вас на мою Web-страницу (http://www.gnu.org/philosophy/why-free.html). Жесткий моральный выборС распадом моего сообщества, вести прежний образ жизни стало невозможно. Я столкнулся с проблемой морального выбора. Самое простое решение — присоединиться к миру собственнического ПО, подписывая соглашения о неразглашении и обещая отказать в помощи своим коллегам-хакерам. Скорее всего, я бы создавал программы, которые распространялись бы в соответствии с соглашениями о неразглашении, вынуждая других людей предательски поступать по отношению к своим коллегам. Так я смог бы зарабатывать деньги и, возможно, писать программы в свое удовольствие. Но я знал, что в конце карьеры, оглянувшись на пройденный путь и поняв, что многие годы я строил стены, разделявшие людей, я бы осознал, что потратил свою жизнь на то, чтобы этот мир стал хуже, чем был. К тому времени мне пришлось испытать на себе действие соглашения о неразглашении, когда один из программистов отказался предоставить мне и AI Lab исходные тексты управляющей программы для принтера. (Из-за отсутствия в ней определенных возможностей мы практически не могли пользоваться принтером). Поэтому я не мог признать законность соглашений о неразглашении. Я был ужасно разозлен, когда тот программист отказался поделиться с нами текстами; я не мог изменить свои позиции и поступить также с кем-то другим. Был еще один выход — прямой, но неприятный. Оставить программирование. В этом случае я не смог бы употребить свои знания и опыт во зло, но тогда они пошли бы прахом. Никто не смог бы обвинить меня в том, что я служу разделению общества и способствую ограничению прав пользователей, но это бы происходило все равно, пусть и без моего участия. Поэтому я искал способ, при котором как программист мог бы делать что-то полезное. И я спросил себя, существует ли программа или программы, которые я мог бы написать и при этом способствовать возрождению своего сообщества? Ответ был очевиден: первое, что требовалось — это операционная система. С помощью операционной системы можно делать очень многое; без нее вы вообще не можете работать на компьютере. Обладая свободно распространяемой операционной системой, мы могли бы снова обрести сообщество сотрудничающих друг с другом хакеров — и пригласить всех в нем участвовать. И каждый мог бы использовать свой компьютер не присоединясь к заговору молчания, чтобы оградиться от своих друзей. Поскольку мне уже приходилось принимать участие в разработке операционной системы, необходимые навыки у меня были. И хотя я не мог быть полностью уверен в успехе, я взялся за это дело. Я решил создать систему, совместимую с Unix, чтобы она была переносимой, и чтобы пользователи Unix могли бы легко на нее перейти. Название GNU было выбрано для нее в соответствии с хакерской традицией как рекурсивный акроним выражения «GNU’s Not Unix» («GNU — это не Unix»). Операционная система — это не только ядро, которого достаточно для работы других программ. В 70-х годах каждая операционная система включала в себя командные процессоры, ассемблеры, компиляторы, интерпретаторы, отладчики, текстовые редакторы, мейлеры и многое другое. Все это было в ITS, Multics, VMS и Unix. Все это должно было входить в состав и операционной системы GNU. Позже, я услышал слова, приписываемые Хилелу**. Если я не живу для себя, то кто будет жить для меня?
Если я живу только для себя, кто я такой?
Если не теперь, то когда? Свободно распространяемое как лишенное ограниченийТермин «свободно распространяемое ПО» иногда толкуют превратно — он никак не связан с ценой. Он говорит только о свободе. Ниже приводится определение свободно распространяемого ПО. Программа является свободно распространяемой для вас, конкретного пользователя, если: - вы имеете неограниченное право использовать программу для любой цели;
- вы имеете неограниченное право менять программу, адаптируя ее к своим требованиям (чтобы реализовать это право на практике, необходим доступ к исходным текстам, поскольку изменить программу, не меняя при этом исходных текстов, крайне затруднительно);
- вы имеете неограниченное право распространять копии программы, как бесплатно, так и за деньги;
- вы имеете неограниченное право распространять измененные версии программы, так чтобы могло воспользоваться сообщество вашими усовершенствованиями.
18.03.1999г.
|