Это перевод страницы, написанной на английском языке.

GNU и Фонд свободного программного обеспечения

Инженерно-техническая беседа в Google, 11 июня 2004 года


Содержание


1. Введение

Эд. Итак, спасибо всем участникам. Я Эд Фальк, а этот человек в подробном представлении не нуждается; если вы не знаете, что означают буквы RMS, вы, вероятно, не могли оказаться в этой комнате.

Ричард был основателем Фонда свободного программного обеспечения, по-моему, это было в 1984 году, и как таковой может считаться отцом свободного программного обеспечения, а инфраструктура Google, разумеется, базируется на свободных программах. Так что мы обязаны движению за свободное программное обеспечение весьма многим. [А у меня проблемы с микрофоном, так что я не буду говорить слишком долго.] Это Ричард Столмен, и мы вкратце благодарим его за посещение, отдельной благодарности за организацию всего этого заслуживает наш общий друг Лайль Илэм, и я думаю, что без дальнейших предисловий я передам слово вам, Ричард!

[Ричард кланяется]

2. Как это начиналось

Ричард. Поднимите, пожалуйста, руки, кто не меня не слышит [смех]. Кто-то в самом деле поднял руку.

Итак, тема моего выступления — свободные программы. Свободные программы начались не с меня; они возникли на заре вычислительной техники. Как только появлялось несколько ЭВМ одной и той же модели, люди могли попытаться обмениваться программами. И они обменивались.

{Это не... тут проблема. Как нам оборвать обратную связь? Может кто-то что-нибудь сделать? Я не прочь получить какие-то отклики, но только от вас, а не от аппаратуры.

Аудитория. [неразборчиво]

Ричард. Ну, это не важно; я не сторонник открытого исходного текста, никогда им не был и никогда не буду.}

Итак, свободные программы существовали до того, как я начал программировать, и мне повезло быть в семидесятых годах частью сообщества программистов, которые обменивались программами. Так что я узнал о свободных программах как образе жизни, ведя этот образ жизни. И для меня стала много значить свобода обмена с людьми, не отделенными от остального мира секретностью и враждебностью.

Но это сообщество погибло в начале восьмидесятых, и передо мной встала перспектива провести остаток своей жизни в мире несвободных программ. И, что хуже всего, передо мной встала перспектива подписания договора о неразглашении. А я пришел к заключению, что подписывать договор о неразглашении общеполезной технической информации, такой как программы, неэтично. Обещать не обмениваться со своими собратьями значит нарушать человеческую солидарность. Так что, когда я увидел, что машина внизу просит меня подписать такое соглашение, я просто сказал: “Я не могу подписать такое”. Ну, к счастью, была одна возможность; они позволили мне прийти сюда и говорить, не подписывая это, в противном случае вам пришлось бы выйти наружу, чтобы слушать. [Смех]

(Они задали пару других интересных вопросов; они спросили насчет компании, и я сказал, что вечером я свободен. [Глядя на табличку с именем][Смех] А потом они спросили, кто меня принимает, и я написал fencepost.gnu.org. Но это просто хакерская атмосфера.)

Так что я оказался в ситуации, в которой единственным способом получить современный компьютер и начать пользоваться им было подписать договор о неразглашении какой-нибудь несвободной операционной системы. Потому что в 1983 году все операционные системы современных компьютеров были несвободными и не было законного способа получить копию этих операционных систем, не подписывая договора о неразглашении, что неэтично. Так что я решил попробовать с этим что-нибудь поделать, попробовать изменить ситуацию. А единственным, что мне приходило в голову, было написать другую операционную систему, а потом, будучи автором этой системы, сказать: “Эта система свободна; вы можете получить ее без договора о неразглашении, а также перераспространять ее среди других людей. Вам можно изучать, как она работает. Вам можно изменять ее”. Итак, вместо того, чтобы быть разобщенными и беспомощными, пользователи этой системы жили бы на свободе. Обычные несвободные программы — часть схемы, в которой пользователей преднамеренно разобщают и делают беспомощными. Программа поставляется с лицензией, в которой сказано, что вам запрещено обмениваться ею, и в большинстве случаев вам нельзя получить исходный текст, так что вы не можете изучать или править ее. В ней даже могут быть вредоносные функции, а вы этого не знаете. Когда программы свободны, мы уважаем свободу пользователя, и в этом-то все и дело. Движение за свободное программное обеспечение возникло затем, чтобы у людей в киберпространстве могла быть свобода, чтобы был способ вести свободную жизнь и тем не менее пользоваться компьютером, избежать принудительного разобщения и беспомощности.

3. Операционная система GNU

Без операционной системы компьютером пользоваться нельзя, так что свободная операционная система была совершенно необходима. И в 1983 году я объявил о своем плане разработать такую систему: операционную систему под названием GNU.

Я решил сделать систему типа Unix, чтобы она была переносима. Операционной системой, которую мы применяли много лет в Лаборатории искусственного интеллекта, была Несовместимая система разделения времени, или ITS [1]. Она была написана на языке ассемблера PDP-10, так что, когда Digital прекратила поддержку PDP-10, наша многолетняя работа рассыпалась в пыль и развеялась по ветру. Я не хотел писать еще одну систему, с которой случилось бы то же самое, так что я решил, что будет лучше, если эта система будет переносима. Но я знал только об одной успешной реализации переносимой операционной системы, и это была Unix. Так что я решил повторить архитектуру Unix, сообразив, что таким образом у меня будет хороший шанс на то, чтобы сделать систему, которая будет полезной и переносимой. А потом, я решил сделать систему снизу вверх совместимой с протоколами Unix по той причине, что пользователи могли бы переходить на нее без несовместимых изменений.

Я осознал, что я мог брать лучшие идеи из различных систем, которые я помогал развивать или эксплуатировать, добавлять свои собственные облюбованные мной идеи и написать операционную систему своей мечты. Но она была бы несовместимой, и пользователи по большей части отказались бы от нее со словами: “На переход ушло бы много работы, так что мы просто не будем переходить”. Итак, сделав систему снизу вверх совместимой с Unix, я мог избавить пользователей от этого затруднения и сделать более вероятным, что пользователи будут действительно применять эту систему.

Если бы пользователи от нее отказались, у меня была бы отличная отговорка. Я мог бы сказать: “Я предлагал им свободу, а они от нее отказались; они сами виноваты”. Но я хотел сделать это не просто для очистки совести. Я хотел построить сообщество, в котором люди действительно жили бы на свободе, а это значило, что мне надо было разработать систему, которой люди будут действительно пользоваться. Так что я решил сделать систему совместимой снизу вверх с Unix.

Так вот, Unix состоит из множества компонентов, они общаются по протоколам, которые более или менее документированы. А пользователи используют эти протоколы. Так что, чтобы быть совместимым с Unix, требовалось применять те же самые протоколы, а это значило, что все первоначальные конструктивные решения были уже сделаны, кроме одного: какой спектр целевых машин поддерживать. Unix была спроектирована для поддержки 16-битных машин, а это создавало много дополнительной работы, потому что программы приходилось ужимать; так что я решил сэкономить на этой дополнительной работе, не поддерживая ничего меньше 32-битной машины. Я понимал, что на разработку системы уйдет много лет, и к тому времени люди все равно будут применять, как правило, 32-битные машины, и это предположение оказалось справедливым.

Так что тогда единственным, что мне было нужно, чтобы приступить к работе, было название. Так вот, быть хакером значит получать удовольствие от игры ума — в программировании и в других сферах жизни, в любой сфере жизни, [где] возможна игра ума. И была хакерская традиция, по которой, когда вы пишете программу, подобную какой-то существующей программе, вы даете своей новой программе название, представляющее собой рекурсивное сокращение, говорящее, что это не та, другая программа.

Например, в шестидесятых и семидесятых годах было много текстовых редакторов TECO, более или менее сходных друг с другом; как правило, в каждой системе был TECO, и он назывался тот-или-другой-TECO. Но один остроумный хакер назвал свою программу TINT, что значит “TINT — это не TECO” — первое рекурсивное сокращение. И мы подумали, что это очень забавно. Так что после того как я в 1975 году разработал первый расширяемый текстовый редактор Emacs, было много имитаций, и некоторые назывались такой-сякой-Emacs. Но один из них назывался FINE (“FINE — это не Emacs”), был SINE (“SINE — это не Emacs”), был EINE (“EINE — это не Emacs”), был MINCE (“MINCE — это не полный Emacs”). Потом основная часть EINE была переписана, и версия два называлась ZWEI (“ZWEI был EINE первоначально”) [2] [смех].

Я искал рекурсивное сокращение “Что-нибудь — это не Unix”, но обычный четырехбуквенный метод ничего не дал, потому что ни одно такое сочетание не было словом. А если у него нет какого-то другого значения, это не забавно. Так что я подумал: “Что бы такого еще придумать?” В голову ничего не приходило, и я подумал: “Я сокращу связку, тогда я мог бы получить трехбуквенное рекурсивное сокращение”. Я начал подставлять все 26 букв: ANU, BNU, CNU, DNU, ENU, FNU, GNU! Ну, “gnu” — занятнейшее слово английского языка, так что выбор должен был пасть на него. Если что-то можно назвать “GNU”, то не стоит выбирать что-то другое.

Итак, конечно, причина, по которой со словом “gnu” так много играют, состоит в том, что согласно словарю оно произносится так же, как произносится “new” [3]. Так что люди начали спрашивать друг друга в шутку: “А что такое гну?” задолго до того, как вы могли ответить: “ГНU — не Unix”. Но теперь у вас был этот ответ, и лучше всего было то, что это выглядит, как если вы назойливо говорите собеседнику, чем она не является, вместо ответа на его вопрос. Но на самом деле вы раскрываете точное значение GNU; так что вы на самом деле отвечаете на вопрос настолько точно, насколько это возможно, но выглядит это так, как будто вы отказываетесь делать это.

Во всяком случае, когда это — название операционной системы, произносите его, пожалуйста, с отчетливым “г”; не следуйте словарю. Если вы говорите о “новой” операционной системе, вы сильно запутаете людей. Мы работаем над ней вот уже двадцать лет, так что она уже не нова. Но она по-прежнему (и всегда будет) GNU, независимо от того, сколько людей называет ее по ошибке “Linux”.

{[Аудитория. (неразборчиво)] [Ричард. Спасибо!]}

Итак, когда у меня появилось название, я мог начать работу. Я уволился из MIT, чтобы начать писать по частям операционную систему GNU, в январе 1984 года. Мне пришлось уволиться, потому что, останься я сотрудником MIT, это позволило бы MIT заявить права на все программы, которые я писал, и MIT смог бы обратить их в несвободные программные продукты. А поскольку MIT уже делал такого рода вещи, я, конечно, не мог рассчитывать, что они здесь не поступят так же. А я не хотел спорить с администрацией MIT о подробностях лицензии, которую я собирался применять. Итак, уволившись, я вынес их за скобки, и с тех пор у меня никогда не было постоянной работы. Однако глава Лаборатории искусственного интеллекта был так любезен, что позволил мне продолжать пользоваться их оборудованием, так что я стал пользоваться машиной с Unix в Лаборатории искусственного интеллекта, чтобы начать поднимать одну за другой части системы GNU.

До этого я никогда не пользовался Unix. Я никогда не был чародеем Unix, и я решил повторить архитектуру Unix ровно по той причине, о которой я вам рассказал, а не потому, что Unix была моей любимой системой, или почему-то еще. Иногда люди пишут, что толчок к созданию GNU подали изменения в политике лицензирования Unix. Так вот, это неправда; на самом деле Unix никогда не была свободной. Они были более или менее жестки и более или менее гадки, когда следили за соблюдением требований, но это никогда не было свободными программами, так что эти изменения в действительности не имели последствий и, во всяком случае, они имели место задолго до того, как я впервые увидел настоящую машину с Unix.

4. GNU Emacs

Итак, в это время я подумал, что я и другие люди, которых я набирал себе в помощь, разработают эти части и сделают полную операционную систему, а потом мы скажем: “Приходите и получайте”. Но вышло не так. В сентябре восемьдесят четвертого года я приступил к разработке GNU Emacs, это была вторая моя реализация расширяемого программируемого текстового редактора. И к началу восемьдесят пятого я уже мог редактировать им все, что мне нужно. Так вот, это было большим облегчением. Понимаете, я был совершенно не намерен пользоваться vi. [Смех, аплодисменты.] Так что до того момента я редактировал на других машинах, на которых был Emacs, и копировал файлы по сети, чтобы проверить их на машине с Unix. Как только заработал GNU Emacs, я смог редактировать на машине с Unix.

Но другие захотели получить копии GNU Emacs, чтобы применять его в своей работе, применять на своих системах с Unix. Системы GNU еще не было, было только несколько частей. Но эта часть оказалась интересной сама по себе. Люди просили у меня копии, так что мне пришлось обдумать детали того, как его распространять. Конечно, я выложил копию на анонимный сервер FTP, и это было хорошо для тех, кто был в сети, но в 1985 году большинство программистов не было в Интернете. Так что они просили у меня копии; что мне было отвечать? Я мог бы сказать: “Я хочу тратить свое время на написание новых частей системы GNU, а не на запись магнитных лент, так что найдите, пожалуйста, знакомого, который может достать его по сети и записать вам на ленту”,— и они рано или поздно находили бы людей, потому что программисты обычно знают других программистов.

5. Дорогостоящие привычки

Но у меня не было работы, и я искал какой-нибудь способ получать деньги с помощью своей работы над свободными программами. Так что я объявил: “Вышлите мне 150 долларов, и я пошлю вам по почте GNU Emacs на ленте”. И заказы начали капать. К середине года они пошли тонкой струйкой, от восьми до десяти заказов в месяц, на это я мог при необходимости прожить.

А все потому, что я стараюсь не поддаваться дорогостоящим привычкам. Дорогостоящая привычка — как западня: она опасна. А вот у большинства американцев отношение к этому прямо противоположно: если они могут заработать вот столько денег, они придумывают, как бы потратить вот столько [делает широкий жест], что совершенно неблагоразумно. Так что они начинают покупать дома, машины, яхты, самолеты, редкие марки, картины, круизы и детей [смех], всевозможные дорогие излишества, которые поглощают много мировых ресурсов, особенно дети. А потом они сразу узнают, что они вынуждены отчаянно сражаться весь день напролет за то, чтобы получить деньги, которыми они могли бы оплатить все это, так что у них нет даже времени, чтобы наслаждаться этим, что особенно грустно, когда дело касается детей. Все другое, я полагаю, можно сбыть. Так что они становятся марионетками денег, неспособными решать, что они собираются делать со своей жизнью. Если вы не хотите быть марионеткой денег, не поддавайтесь дорогостоящим привычкам, поскольку чем меньше вам нужно тратить на жизнь, тем больше у вас гибкости и тем меньшую часть вашей жизни вам приходится тратить, чтобы добыть эти деньги.

Так что я до сих пор живу, по сути, как студент, и я хочу, чтобы так это и было.

6. Определение свободной программы

Но иногда мне говорили: “Почему вы говорите, что эти программы свободны, если они стоят 150 долларов?” Ну, в английском слово “свободный” принимает множество значений, и это их вводило в заблуждение. Мне даже потребовалось несколько лет, чтобы осознать, что мне нужно разъяснять это. Видите ли, одно значение указывает на стоимость, а другое значение указывает на свободу. Когда мы говорим о свободных программах, мы говорим о свободе, а не о стоимости. Так что думайте о “вольной речи”, а не о “бесплатном пиве”.

Некоторые пользователи получили свои копии GNU Emacs от меня по сети, они не платили. Некоторые пользователи получили свои копии от меня на ленте, и они заплатили. А некоторые получили свои копии от кого-то другого, не от меня, потому что каждый, у кого была копия, был волен распространять ее. Платили ли они тому другому? Ну, я не знаю; это было их дело. Им не нужно было мне докладывать. Так что GNU Emacs был бесплатным для некоторых пользователей и платным для других пользователей, но он был свободным и для тех, и для других, потому что у них у всех были определенные важные свободы, которые составляют определение свободной программы.

Итак, позвольте мне дать вам определение свободной программы. Видите ли, легко сказать: “Я — за свободу”. То есть это может сказать даже Буш [смех]. Я не думаю, что он знает, что это значит. Но дело в том, что пока вы не заставите человека быть более конкретным, это просто ни к чему не обязывающие пересуды. Так что позвольте мне дать вам — позвольте теперь мне быть более конкретным и дать вам определение свободной программы.

Программа свободна для вас, конкретного пользователя, если у вас есть четыре следующих свободы:

Свобода 0 — свобода выполнять программу, как вам угодно; свобода 1 — свобода помогать самому себе, изучая исходный текст, чтобы понять, что программа в действительности делает, а затем править ее, чтобы она делала то, что вы хотите; свобода 2 — свобода помогать своему соседу, распространяя копии среди других; и свобода 3 — свобода помогать строить свое сообщество, то есть свобода публиковать измененную версию, с тем чтобы другие могли получать пользу от ваших изменений.

Все четыре этих свободы существенны. Это не уровни свободы, это четыре свободы, каждая из которых должна быть у вас, чтобы программа могла считаться свободной. Каждая из них является свободой, в которой никогда не должны отказывать никакому пользователю компьютера.

[gnu.org/philosophy/free-sw.html]

7. Свобода 2: моральная дилемма

Почему выбраны эти конкретные свободы? Почему нам следует определять их именно так?

Свобода 2 необходима, чтобы вы могли жить честной жизнью, чтобы вы могли быть этичны, быть добропорядочным членом общества. Если вы пользуетесь программой, которая не дает вам свободу 2, свободу помогать своему соседу, свободу распространять копии среди других, то вы встаете перед потенциальной моральной дилеммой, которая может возникнуть в любой момент, когда кто-то приходит и говорит: “Можно мне скопировать эту программу?” Что вы будете делать в этом случае? Вы вынуждены выбирать одно из двух зол. Одно зло — сделать копию программы для этого человека и нарушить лицензию. Другое зло — соблюдать лицензию, но быть плохим соседом. Так что вам приходится выбирать меньшее из зол, то есть сделать копию для этого человека и нарушить лицензию [смех, аплодисменты].

Понимаете, в этом случае зло меньше, потому что оно направлено на того, кто преднамеренно пытался разобщить вас с остальным обществом и тем самым сделал в отношении вас нечто крайне дурное; и следовательно, он заслуживает этого. Однако все время лгать людям нехорошо. Когда кто-то говорит: “Я позволю вам получить копию этого, но вам придется обещать не обмениваться этим ни с кем”,— правильно будет ответить нет. После того, как вы обдумали эту моральную дилемму, вы должны предвидеть, что, когда вы станете применять эту программу, она приведет вас к необходимости выбора одного из двух зол, а следовательно, вам нужно отказываться применять эту программу. Вам следует просто сказать ей: “Нет, благодарю”,— и в этом-то и состоит мой принцип. Если кто-то предлагает мне программу, которой я не волен обмениваться с вами, я буду говорить нет из принципа.

На самом деле я однажды был в аудитории, перед которой выступал Джон Перри Барлоу, и он сказал: “Поднимите руки, если у вас нет никаких несанкционированных копий программ”. Он был удивлен, когда увидел, что кто-то поднял руку, но потом он увидел, что руку поднял я. И тогда он сказал: “А, это вы, ну конечно”,— потому что он знал, почему у меня нет несанкционированных копий: дело в том, что все мои копии программ свободны и каждый может делать санкционированные копии. В этом-то все и дело.

8. Свобода 2: дух доброй воли

Важнейший ресурс любого общества — дух доброй воли, готовность помочь своему соседу; не обязательно каждый раз, когда вас просят, но довольно часто. Именно в этом состоит разница между обществом, в котором можно жить, и джунглями, где все друг друга пожирают. Уровень этого духа не будет предельно высоким и не будет нулевым, но он будет где-то между этими значениями — а культурная деятельность может влиять на него, может повышать и снижать его. И важно работать над его повышением, потому что это облегчает жизнь каждому. Так что не случайно крупные мировые религии на протяжении тысяч лет поощряли этот дух доброй воли.

Итак, что делают мощные общественные институты, когда они говорят, что обмениваться дурно? Они отравляют этот жизненно важный ресурс, чего не может себе позволить никакое общество. А что они делают, когда говорят, что если вы обмениваетесь со своим соседом, то вы пират? Они говорят, что помощь своему соседу нравственно эквивалентна нападению на суда. Так вот, ничто не может быть более неправильно. Нападать на корабли очень и очень плохо; помогать своему соседу хорошо.

А что они делают, когда устанавливают суровые наказания для всякого уличенного в обмене? Сколько, по вашему мнению, страха понадобится для того, чтобы запугать всех так, что они перестанут помогать своему соседу? Хотите вы, чтобы эта кампания террора продолжалась в вашем обществе? Я надеюсь, что ответ отрицателен. Нам надо отменить войну с копированием, которую навязывают нашему обществу. Нам нужно сказать, громко и внятно: “Копировать и обмениваться со своим соседом хорошо, это законно, а законы, которые это запрещают, неправильны”.

9. Свобода 0 выполнять программу, свобода 1 править ее

Итак, вот основание для свободы 2: это по сути этическое основание. Нельзя вести этичную жизнь, если у вас нет свободы 2.

Свобода 0 нужна по совершенно другой причине: для того, чтобы вы могли контролировать свой собственный компьютер. Если вы ограничены в том, когда, сколько или как вы можете выполнять программу, то вы явно не пользуетесь своим компьютером свободно. Так что свобода 0 очевидна, но свободы 0 не достаточно, потому что все, что вам позволяет свобода 0 — это пользоваться программой так, как это запрограммировано ее разработчиком. Вы вольны делать это [жест рукой] или ничего. Чтобы быть по-настоящему свободным, вам нужно контролировать то, что делает программа, так что вам нужна свобода 1, то есть свобода помогать самому себе, свобода изучать исходный текст, а затем править его, чтобы он делал то, что вы хотите.

Если у вас нет свободы 1, вы не знаете, чем занимается программа. Разработчик говорит: “Просто доверьтесь мне”,— и вы можете только слепо верить. И вам приходится быть по-настоящему слепым ввиду того, что у несвободных программ нередки вредоносные функции, функции, которые заложены не для того, чтобы служить пользователю, а наоборот, чтобы навязывать что-нибудь пользователю, вредить ему или ограничивать его. Например, весьма распространены программы-шпионы.

[51-секундный перерыв в звукозаписи восполнен Ричардом Столменом в августе 2010 года]

Microsoft Windows шпионит за пользователем; были найдены конкретные функции шпионажа. Windows Media Player тоже шпионит; он сообщает в Microsoft обо всем, что просматривает пользователь.

[Конец заполненного перерыва в записи]

...конечно, делают это. RealPlayer, например, шпионит за вами. TiVo шпионит за вами. Некоторые люди отнеслись к TiVo с энтузиазмом, потому что внутри него применяются какие-то свободные программы. Но в нем есть также несвободные программы, и они шпионят за вами. Отсюда следует вывод, что этого не достаточно. Мы должны приветствовать не то, в чем применяются какие-то свободные программы, а то, что уважает свободу пользователя.

10. Цифровое управление ограничениями, лазейки, ошибки

Но программы-шпионы не так плохи, как другое. Есть несвободные пакеты программ, которые умышленно спроектированы, чтобы отказываться работать. Это называется цифровым управлением ограничениями — когда программа говорит: “Я не дам взглянуть на этот файл; я не дам скопировать это; я не дам редактировать это”. Так вот, кто эта программа такая, чтобы вставать у вас на пути? А иногда несвободные программы переконфигурируют вашу машину, например, делают так, чтобы она показывала рекламу, принимая в расчет, что вы не будете знать об этом заранее и не будете знать, как это впоследствии убрать.

А иногда в них есть настоящие лазейки. Например, в Windows XP есть лазейка: когда она запрашивает обновление, она рассказывает Microsoft, кто вы, так что Microsoft может подложить вам обновление, составленное только для вас. А в этом обновлении могли бы быть секретные учетные записи, специальные функции шпионажа, оно могло бы попросту отказаться работать. И вы по существу ничего не можете поделать. Итак, вот лазейка, о которой знает Microsoft и о которой знаем мы.

[Добавлено в 2010 году: позднее мы узнали, что Microsoft может принудительно “обновлять” — это еще гораздо более скверная лазейка.]

Возможно, есть другие лазейки, о которых мы не знаем; может быть, есть такие, о которых не знает даже Microsoft. Когда в январе я был в Индии, мне рассказали, что какие-то программисты в Индии были арестованы по обвинению в работе на аль-Каиду, они пытались ввести лазейку в Windows XP. Итак, очевидно, эта попытка провалилась. Но удались ли другие? Это мы не можем узнать никак.

Так вот, я не буду утверждать, что все разработчики несвободных программ закладывают вредоносные особенности. Есть те, кто пытается заложить особенности, которые были бы удобны для пользователя, и только их. Но они люди, так что они ошибаются. Они могут спроектировать особенности, вложив в них всю свою добрую волю, а вам они не понравятся, или они могут допустить в своих программах ошибки. А когда это происходит, вы к тому же и беспомощны; вы — беспомощные узники любого решения, которое они приняли. Независимо от того, сделано оно из добрых или злых побуждений, если вам оно не нравится, вы ничего не можете поделать.

Так вот, мы, разработчики свободных программ, тоже люди, мы тоже ошибаемся. Мне доводилось проектировать особенности, которые не нравились пользователям. Мне доводилось писать программы с ошибками. Разница в том, что вы — не узники наших решений, потому что мы не оставляем вас беспомощными. Если вам не нравятся мои решения, вы можете изменить их, потому что у вас есть свобода править их. Я не порицаю разработчиков несвободных программ, угнетающих пользователя, за то, что они люди и что они ошибаются; я порицаю их за то, что они оставляют вас беспомощными узниками их ошибок, отказывая вам в свободе самостоятельно исправить эти ошибки.

11. Свобода 3 не иметь хозяина

Но свободы 1 не достаточно. Свобода 1  свобода лично изучать и править исходный текст. Свободы 1 не достаточно, потому что есть миллионы пользователей, которые пользуются компьютерами, но не умеют программировать, так что они не могут воспользоваться свободой 1, во всяком случае, лично. И свободы 1 не достаточно даже для программистов, просто потому что программ так много, даже свободных программ, что ни у кого не хватит времени изучить их все, овладеть ими всеми и сделать все изменения, какие ему нужно.

Так что единственный способ, которым мы можем по-настоящему и полностью контролировать свои собственные программы — делать это совместно. Для этого-то и нужна свобода 3. Свобода 3 — свобода опубликовать измененную версию, чтобы другие тоже могли ею пользоваться. И это позволяет нам работать вместе, получая контроль над своими программами. Потому что я мог бы внести в программу это изменение и опубликовать измененную версию, а потом вы могли бы внести в программу то изменение и опубликовать измененную версию, а кто-то еще может внести в программу вот то изменение и опубликовать измененную версию. А теперь мы получили версию со всеми тремя изменениями, и все могут перейти на нее, если она всем нравится.

С этой свободой любой коллектив пользователей может получить совместный контроль и заставить программы делать то, что они вместе хотят. Предположим, есть миллион пользователей, который хотели бы определенного изменения. Ну, случайно некоторые из них окажутся программистами; допустим, десять тысяч из них умеют программировать. Так вот, рано или поздно некоторые из них внесут изменение и опубликуют измененную версию, и тогда весь этот миллион пользователей сможет перейти на нее. Понимаете, большинство из них не умеет программировать, но они все равно могут перейти на нее. Так что все они получают, что хотят.

Теперь давайте предположим, что есть только тысяча людей, которые хотят какого-то другого изменения, и никто из них не умеет программировать. Все равно они могут воспользоваться этими свободами. Они могут сформировать организацию, и каждый вложит деньги, так что если каждый вложит сто долларов, получится сто тысяч долларов. И в этот момент они могут пойти в программистскую компанию и спросить: “Сделаете ли вы это изменение за сто тысяч долларов, и когда вы можете это сделать?” А если ответ этой компании им не понравится, они могут пойти в другую компанию и спросить: “Сделаете ли вы это изменение, и когда вы можете это сделать?” Это прежде всего показывает нам, что эта тысяча пользователей, которые не умеют программировать, могут, пользуясь четырьмя свободами, получить изменение, которого они хотят. А во-вторых, это показывает, что свободные программы означают свободный рынок поддержки.

Несвободные программы, как правило, означают монополию на поддержку. В большинстве случаев исходный текст есть только у разработчика, так что только разработчик может предложить какую бы то ни было поддержку. Если вы хотите изменения, вам приходится обращаться к разработчику и выпрашивать. Так вот, если вы очень большой и важный, разработчик, может быть, уделит вам внимание. Если нет, разработчик скажет: “Уходите, не беспокойте меня”. Или, может быть, разработчик скажет: “Заплатите нам, и мы дадим вам сообщить об ошибке”. А если вы сделаете это, разработчик скажет: “Спасибо. В ближайшие шесть месяцев будет обновление. Купите обновление, и вы увидите, была ли эта ошибка исправлена, и какие новые ошибки мы для вас припасли”.

Но если программа свободна, вы имеете дело со свободным рынком, так что тот, кто очень ценит поддержку, может, вообще говоря, получить за свои деньги более качественную поддержку, пользуясь свободными программами. Так вот, одно из парадоксальных следствий этого состоит в том, что когда у вас есть выбор между несколькими несвободными программами для какой-то работы, то фактически это выбор между монополиями. Если вы берете эту программу, поддержка ее после этого будет монополией. Если вы берете эту программу [указывает рукой в другом направлении], поддержка ее будет другой монополией, а если вы берете эту программу [указывает рукой в другом направлении], поддержка ее будет еще одной монополией. Так что вы выбираете одну из этих трех монополий.

Так вот, говорит это о том, что простое наличие выбора между дискретным набором возможностей не является свободой. Свобода — нечто гораздо более глубокое и гораздо более широкое, чем наличие нескольких вариантов, которые вы можете выбирать. Многие пытаются приравнять свободу к наличию какого-то выбора, и они совершенно упускают из виду суть дела. Свобода значит, что вы принимаете решения о том, как вам вести свою жизнь. Если есть три варианта: выбрать этого хозяина, этого хозяина или этого хозяина, то это только выбор хозяев, а выбор хозяина — это не свобода. Свобода — когда никакого хозяина нет.

12. Авторское лево: запрещать запрещено

Итак, я обосновал эти четыре свободы. И тем самым я объяснил вам, что такое свободная программа. Программа свободна для вас, конкретного пользователя, если у вас есть все эти четыре свободы. Почему я определяю это таким образом? Причина в том, что иногда одна и та же программа может быть для каких-то пользователей свободной, а для остальных — несвободной. Это может показаться странным, поэтому позвольте мне привести вам пример, чтобы показать, как это происходит.

Самый большой известный мне пример — система X Window. Она разрабатывалась в MIT в конце восьмидесятых и выпускалась под лицензией, которая давала пользователю все четыре свободы, так что если вы получали X в исходном тексте по этой лицензии, то система была для вас свободной. Среди тех, кто получил ее, были различные производители компьютеров, которые распространяли системы Unix. Они получили исходный текст X, внесли изменения, необходимые для работы на их платформе, скомпилировали его, поместили двоичные файлы в свои системы Unix и распространяли только двоичные файлы среди всех своих клиентов по той же лицензии, что и остальную Unix — по тому же договору о неразглашении. Так что для тех многих пользователей система X Window была не более свободна, чем остальная Unix. В этой парадоксальной ситуации ответ на вопрос “свободна ли X?” зависел от того, где вы проводили измерения. Если вы проводили измерения, исходя из группы разработчиков, вы сказали бы: “Я наблюдаю все четыре свободы; эти программы свободны”. Если вы проводили измерения среди пользователей, вы сказали бы: “У большинства из них нет этих свобод; эти программы не свободны”.

Разработчики X не считали это за проблему, потому что их целью было не дать пользователям свободу, а достичь большого успеха, и с их точки зрения эти многочисленные пользователи системы X Window без свободы были просто частью их большого успеха. Но если говорить о проекте GNU, то наша цель состояла именно в том, чтобы дать пользователям свободу. Если бы то, что случилось с X, произошло с GNU, проект GNU был бы неудачей.

Так что я искал способа предотвратить это. И метод, который я нашел, называется авторским левом. Авторское лево юридически основано на авторском праве, и о нем можно думать как о том, что авторское право берут и переворачивают, чтобы получить авторское лево.

Вот как оно действует: мы начинаем с уведомления об авторских правах, которое в действительности юридически уже ничего не меняет, но оно напоминает людям, что на программу распространяется авторское право, а это значит, что, если не оговорено противное, копировать, распространять и изменять программу запрещено. А затем мы говорим: “Вам дается санкция на изготовление копий, на распространение их, на изменение этой программы и на публикацию измененных или расширенных версий”. Но есть одно условие, и это условие гласит, что любая распространяемая вами программа, которая содержит сколько-нибудь значительную часть этого, должна, в целом, распространяться на этих условиях, не более и не менее. Это значит, что независимо от того, сколько людей и насколько сильно изменяют программу, до тех пор, пока там остается любое существенное количество наших текстов, эта программа все равно должна быть свободной. В результате мы гарантируем, что никто не может поставить себя между вами и мной, срезать свободу и передать вам программу, лишенную свободы. Другими словами, запрещать запрещено.

13. Стандартная общественная лицензия GNU

Авторское лево делает четыре свободы неотчуждаемыми правами всех пользователей, так что куда бы ни зашли программы, вместе с ними идет свобода. Конкретная лицензия, которой мы пользуемся для реализации общей идеи авторского лева, называется Стандартной общественной лицензией GNU, или GNU GPL [4] для краткости. Эта лицензия применяется приблизительно для двух третьих или трех четвертых всех пакетов свободных программ. Но это все-таки оставляет существенное число пакетов, у которых лицензии другие. Некоторые из этих лицензий являются лицензиями с авторским левом, а некоторые — нет. Так что у нас есть свободные программы с авторским левом, а есть свободные программы без авторского лева. В обоих случаях разработчики уважали вашу свободу; они не пытались попрать вашу свободу. Разница заключается в том, что с авторским левом мы идем дальше — мы активно защищаем вашу свободу от всякого, кто попытался бы встать посредине и отнять ее у вас, в то время как разработчики свободных программ без авторского лева не делают этого. Они не пытались отнять вашу свободу, но они не защищают активно вашу свободу от кого бы то ни было другого. Так что я думаю, что они могли бы делать для свободы больше. Но они не сделали ничего плохого; постольку, поскольку они что-то делали, это было хорошо. Так что я не скажу, что они плохие, я просто скажу, что они могли бы сделать больше. Я думаю, что они совершают ошибку.

Но их работы являются свободными программами, так что вклад в наше сообщество они вносят, и эти программы, действительно, могут быть частью такой свободной операционной системы, как GNU.

13a. Разработка GNU

В восьмидесятые годы XX века наша работа над проектом GNU состояла в том, чтобы разработать или найти все эти части GNU, чтобы у нас могла быть полная система GNU. В некоторых случаях кто-то другой писал программу и делал ее свободной, а мы могли воспользоваться ею, и это было хорошо, потому что сокращало нам работу. Например, система X Window — одна из программ, разработанных другими по их собственному почину, но свободной программой они ее сделали, так что мы смогли ею воспользоваться.

Так вот, люди говорили, что работа так велика, что мы никогда ее не завершим. Ну, я думал, что когда-нибудь мы получим свободную операционную систему, но я был согласен, что работа велика; нам нужно было искать короткие пути. Так что, например, я всегда хотел, чтобы в GNU были средства организации окон. Я написал пару оконных систем в Лаборатории искусственного интеллекта еще до того, как приступил к работе над GNU, так что я, конечно, хотел, чтобы в системе это было. Но мы так и не разработали оконную систему GNU, потому что другие разработали X раньше. Я посмотрел на нее и сказал: “Ладно, она без авторского лева, но она свободна и популярна, она эффективна, так что давайте просто воспользуемся ею”. И таким образом мы сэкономили большой объем работы. Так что мы взяли ее, X, вставили ее в систему GNU и стали налаживать работу других частей GNU с X. Потому что целью было получить свободную операционную систему, а не свободную операционную систему, каждая часть которой была бы написана с этой целью нами и именно для этой системы.

14. Как заработать на свободных программах

Однако только время от времени кто-нибудь другой выпускал какие-то свободные программы, которые были полезны в GNU, и когда это случалось, это было совпадение, потому что они писали эти программы не для того, чтобы получить свободную операционную систему. Так что когда такое случалось, это было отлично, но было много других частей, которые нам нужно было разработать. Некоторые их них разрабатывались сотрудниками Фонда свободного программного обеспечения. Фонд свободного программного обеспечения — благотворительная организация с налоговыми льготами, целью которой является содействие свободным программам. Мы основали ее в октябре восемьдесят пятого года, после того как популярность GNU Emacs навела на мысль, что люди могли бы на самом деле начать вносить деньги на проект GNU. Так что мы основали Фонд свободного программного обеспечения, и он объявил о приеме пожертвований, а также взял на себя продажу магнитных лент с GNU Emacs. И так вышло, что это и составляло доходы ФСПО первые много лет — продажа копий программ и руководств, которые каждый был волен копировать. Так вот, это интересно, потому что это считалось невозможным; но мы все равно делали это.

Так вот, это значило, что мне нужно найти какой-то другой способ зарабатывать на жизнь. Как председатель ФСПО я не хотел конкурировать с ним; я думал, что это было бы нечестно и неприлично. Так что я начал зарабатывать на жизнь подрядами на изменения в программах, которые я написал, и уроками по этим программам. Так что люди хотели внести какое-то изменение в Emacs или GCC, они думали о том, чтобы нанять меня, потому что они понимали, что я — автор и мог бы сделать это лучше и быстрее. Так что я начал собирать по двести пятьдесят долларов в час и подсчитал, что я мог бы заработать на жизнь, если бы у меня было семь недель оплаченной работы в год — подразумевалось, что этого было достаточно для расходов, такого же количества сбережений и такого же количества налогов. А [когда у меня набиралось] столько денег, я думал: “Больше я не буду брать оплачиваемой работы на этот год, у меня есть дела поважнее”.

Так что у меня на самом деле было три различных источника дохода, связанных со свободными программами, в период, когда я работал над GNU. Два из них я описал; третьим было то, что мне платили за некоторые из моих выступлений. Заплатят ли мне за это выступление, я еще не знаю. [Смех]. Я сказал: “Заплатите мне, пожалуйста, сколько сможете”. Так вот, я думаю, Google, должно быть, может позволить себе заплатить мне солидную сумму, но я не знаю, заплатит ли. Во всяком случае, я понял, что имеет смысл выступить уже ради блага, которое это принесет движению.

15. Зачем пишут свободные программы

Итак, это поднимает вопрос, зачем люди разрабатывают свободные программы. Понимаете, есть люди, которые считают, что никто никогда не писал бы программы, если бы за это не платили, что это единственный мотив для написания программ, который мог бы быть у кого бы то ни было. Удивительно, до чего глупые и примитивные теории люди иногда принимают на веру из-за того, что это входит в господствующую идеологию.

Так вот, человеческая природа очень сложна. Что бы люди ни делали, они могли бы делать это по различным причинам. На самом деле одного человека нередко побуждает к совершению одного действия несколько разных мотивов. Тем не менее есть люди, которые говорят: “Если программа свободна, это значит, что никто не заплатил за то, чтобы ее написать, так что никто ее не напишет”. Так вот, очевидно, что они путают два значения этого слова, так что их теория основана на смешении понятий. Во всяком случае, мы можем сопоставить их теорию с эмпирическим фактом и увидеть, что по меньшей мере сотням, а может быть, тысячам людей платят за работу над свободными программами, в том числе некоторым присутствующим, как я думаю, и есть всего около миллиона или около того людей, разрабатывающих свободные программы по многим другим причинам, которые у них есть. Эта примитивная теория мотивации абсурдна.

Итак, рассмотрим, что мотивирует людей на написание свободных программ; каковы реальные мотивы? Ну, я не обязательно знаю о них. Всегда может быть человек, у которого есть мотив, о котором мне не известно или о котором я забыл. Я могу рассказать вам только о мотивах, которые я вспомню из личного опыта.

Один из мотивов — политические идеалы: улучшить мир, чтобы мы могли в нем жить вместе на свободе. Так вот, для меня это очень важный мотив, но это не единственный мой мотив. А есть другие, кто пишет свободные программы и у кого этот мотив полностью отсутствует.

Другой мотив, который очень важен — развлечение. Программирование страшно увлекательно. Не для всех, конечно, но для множества самых лучших программистов. А это люди, чьего вклада мы больше всего хотим. На самом деле это так увлекательно, это особенно увлекательно, когда никто не говорит вам, что делать, вот почему так много людей, работающих программистами, любят писать свободные программы в свободное время.

Но это не единственный мотив; другой мотив — общественное признание. Если 1% нашего сообщества пользуется вашей программой, это сотни тысяч пользователей. Это значит, что множество людей восхищается вами.

Другой, связанный с этим, но отличный от него мотив — профессиональная репутация. Если 1% нашего сообщества пользуется вашей программой, вы можете указать это в своей профессиональной автобиографии, и это лучше всякого диплома докажет, что вы — хороший программист.

Другой мотив — благодарность. Если годами вы пользовались свободными программами сообщества и цените их, то, когда вы пишете программу, это возможность отплатить чем-то сообществу, которое вам столько дало.

Другой мотив — ненависть к Microsoft. [Смех.] Так вот, это довольно-таки дурацкий мотив, потому что на самом деле Microsoft — только один из множества разработчиков несвободных программ, и все они делают одно и то же злое дело. Сосредоточиваться [единственно] на Microsoft — ошибка, и эта ошибка имеет плохие последствия. Когда люди слишком сосредоточиваются на Microsoft, они начинают забывать, что все другие делают то, что точно так же плохо. И они могут кончить тем, что будут думать, что любая конкуренция Microsoft — это хорошо, даже если это тоже несвободные программы и, таким образом, по природе своей это так же плохо. Так вот, верно, что эти другие компании не подчинили своему гнету столько пользователей, сколько Microsoft, но это не от недостатка желания; они просто не имели успеха в дурном обращении с таким же числом людей, как Microsoft, что едва ли их, с этической точки зрения, оправдывает. Тем не менее этот мотив действительно побуждает людей разрабатывать свободные программы, так что мы должны его учитывать как один из мотивов, приводящий к этому результату.

А другой мотив — деньги. Когда людям платят за развитие свободных программ, это часть мотивации работы, которую они выполняют. Действительно, когда мне платили за подготовку улучшений в различных программах, которые я написал, эти деньги тоже были частью моей мотивации выполнения этих конкретных задач.

[Ричард Столмен, 2010: мотив, который я забыл упомянуть — улучшение свободной программы по той причине, что вы сами хотите пользоваться этим улучшением.]

Так что есть много возможных мотивов для написания свободных программ. И к счастью, есть много разработчиков свободных программ, и разрабатывается множество свободных программ.

16. Ядро, Linux

Итак, в восьмидесятые годы XX века мы заполняли эти недостающие места в операционной системе GNU. К началу девяностых у нас было почти все необходимое. Только одной важной части недоставало, одной существенной части базовой системы, и это было ядро. Мы приступили к разработке ядра в 1990 году. Я искал короткий путь, какой-нибудь способ, которым мы могли бы начать с чего-то существующего. Я думал, что отладка ядра будет болезненной, потому что символьный отладчик тут не поможет, а когда оно дает сбой, это, скажем так, раздражает.

Так что я искал обходной путь, и в конце концов я его нашел, микроядро под названием Mach, которое было разработано как проект, финансируемый в Университете Карнеги-Меллона. Так вот, в Mach нет всех функций Unix; идея в том, что оно предоставляет определенные общие низкоуровневые функции, а вы реализуете остальное в пользовательских программах. Ну, это, как я думал, будет легко отлаживать, потому что это пользовательские программы; когда они дают сбой, система не умирает. Так что люди начали работать над этими пользовательскими программами, и мы называем это GNU Hurd, потому что это стадо серверов GNU (гну живут стадами, как вы сами понимаете) [5].

Как бы то ни было, я думал, что эта архитектура позволит нам справиться с работой быстрее, но не тут-то было; в действительности на то, чтобы заставить Hurd работать, ушло много лет, частично потому, что микроядро Mach было ненадежным, частично потому, что отладочная среда была не очень хороша, частично потому, что трудно отлаживать эти многопоточные асинхронные программы, а частично потому, что это был до некоторой степени исследовательский проект. По крайней мере, насколько это мне известно; сам я никогда напрямую в разработке Hurd не участвовал.

К счастью, нам не пришлось этого ждать, потому что в 1991 году Линус Торвальдс, студент финского техникума, разработал свое собственное ядро, применив традиционную монолитную архитектуру, и у него оно заработало по минимуму меньше, чем через год. Первоначально Linux — так называлось ядро — не было свободным, но в 1992 году он перевыпустил его под Стандартной общественной лицензией GNU, и в этот момент оно стало свободным. И таким образом было возможно, комбинируя Linux и систему GNU, сделать полную свободную операционную систему. И следовательно, цель, которую мы себе наметили, о которой я объявил в 1983 году, была достигнута: была получена, впервые, полная современная операционная система для современных компьютеров, и стало возможным взять современный компьютер и работать на нем, не предавая остальное человечество, не будучи угнетаемым. Вы могли сделать это, установив операционную систему GNU+Linux.

17. Свобода и проблема путаницы между GNU и Linux

Но люди, которые комбинировали GNU и Linux, стали путаться, они стали называть все это в целом Linux, что на самом деле является названием одной части. И каким-то образом эта путаница распространялась быстрее, чем мы могли исправлять ее. Так что я уверен, что вы слышали многих людей, говорящих о Linux как об операционной системе, операционной системе, основы которой берут начало в 1984 году под названием “проект GNU”.

Так вот, это явно неправильно. Эта система — не Linux; она содержит Linux, Linux — это ядро, но система в целом — это в основном GNU. Так что я прошу вас: не называйте ее, пожалуйста, “Linux”. Если вы называете ее “Linux”, вы выражаете Линусу Торвальдсу признательность за нашу работу. Так вот,он внес в систему одну из важных частей, но он внес не самую большую часть, и общий план появился задолго до того, как он принял в этом участие. Мы начали разрабатывать систему, когда он был в средней школе. Так что упоминайте, пожалуйста, равным образом и о нас; это самое малое, чего мы безусловно заслуживаем. Вы можете сделать это, называя систему GNU/Linux, GNU+Linux или GNU&Linux — поставьте любой знак препинания, какой, по вашим ощущениям, выражает это наилучшим образом.

[gnu.org/gnu/gnu-linux-faq.html]

Так вот, конечно, частично я прошу об этом потому, что мы заслуживаем признательности, но на самом деле это не очень важно. Если бы это был просто вопрос признания, об этом не стоило бы поднимать столько шума. Но здесь решается нечто большее. Понимаете, когда люди думают, что система — это Linux, тогда они неверно предполагают, что план всей системы исходит от него, так что они оглядываются на его точку зрения и следуют ей. Так вот, его точка зрения аполитична. Он мотивируется не борьбой за свободу. Он не верит, что пользователи компьютеров заслуживают свободы обмениваться и изменять программы. Он никогда не поддерживал нашу философию. Хорошо, у него есть право на свои взгляды, и тот факт, что он не согласен с нами, не снижает ценности его вклада.

Причина, по которой у нас есть система GNU+Linux, заключается в многолетней борьбе за свободу. В проекте GNU мы не разрабатывали Linux, точно так же, как мы не разрабатывали X, TeX или разные другие свободные программы, которые сейчас составляют важные части системы. Но людям, которые не разделяют наших ценностей, которые не мотивировались решимостью жить свободно, незачем было бы ставить себе целью получить полную систему, и они никогда бы этого не сделали и никогда бы не произвели такой системы, разве что для нас.

Но в наши дни об этом забывают. Вы увидите, если оглянетесь вокруг, что в большинстве обсуждений систему GNU называют “Linux” и обычно ссылаются на нее как на “открытый исходный текст”, а не “свободные программы”, и не упоминают свободу как проблему. Об этой проблеме, в которой заключается причина существования системы, по большей части забывают. Вы видите множество специалистов, которые предпочитают думать о технических вопросах в узко техническом контексте, не заглядывая за них, на социальные последствия их технических решений. Попирает программа вашу свободу или уважает ее — это часть социального контекста. Это ровно то, что специалисты склонны забывать или принижать. Нам нужно постоянно работать, чтобы напоминать людям о том, чтобы они уделяли свободе внимание, и к сожалению, в то время как мы продолжаем делать это, пользователи нашей системы часто не обращают на это внимания, потому что они не знают, что это наша система. Они не знают, что это система GNU, они думают, что это Linux. Вот почему совсем не безразлично, будете ли вы напоминать людям, откуда пошла эта система.

Люди мне скажут, что просить о признательности некрасиво. Так вот, я прошу о признательности не для себя лично; я прошу для проекта GNU, который объединяет тысячи разработчиков. Но они правы вот в чем: люди, которые ищут повода найти зло, увидят в этом зло. Так что они продолжают и говорят: “Вам следует пустить это на самотек, а когда люди называют систему “Linux”, вы можете в душе улыбаться и гордиться хорошо проделанной работой”. Этот совет был бы очень мудр, если бы предположение было верно: предположение, что работа проделана.

Мы отлично начали, но и только. Работу мы не завершили. Мы завершим работу, когда каждый компьютер будет работать исключительно под управлением свободной операционной системы и свободных прикладных программ. Работа состоит в освобождении обитателей киберпространства. Мы отлично начали; мы разработали свободные операционные системы, свободные графические среды, свободные наборы канцелярских программ, и теперь у них есть десятки миллионов пользователей. Но есть сотни миллионов пользователей несвободных систем, так что нам предстоит долгий путь. И несмотря на широкий спектр свободных программ, по-прежнему есть множество приложений, для которых нет свободных программ; так что впереди у нас еще гораздо больше работы.

Понимаете, нам стал виден конец работы. Может быть, мы отстоим от него на один порядок по величине, пройдя через много порядков. Но это не значит, что то, что осталось, легко. И сегодня у нас есть то, чего не было раньше: у нас есть враги — могущественные, богатые враги, достаточно могущественные, чтобы подкупать правительства.

18. Враги свободных программ

Сначала у GNU и движения за свободные программы врагов не было. Были люди, не проявлявшие интереса,— таких было много,— но никто не пытался активно помешать нам разработать и выпустить свободную операционную систему. Сегодня нам пытаются помешать, и главное препятствие, стоящее перед нами, заключается в этом, а не в самой работе.

В США есть два разных закона, которые запрещают различные виды свободных программ.

Один из них — Закон об авторском праве цифрового тысячелетия, который использовался для запрета свободных программ воспроизведения DVD. Если вы покупаете DVD, закон разрешает вам просматривать его на вашем компьютере, но на свободные программы, которые позволили бы вам это делать на вашей системе GNU/Linux, в США была наложена цензура. Так вот, это касается довольно узкого спектра программ: программ для просмотра зашифрованных носителей. Но многие пользователи хотели бы делать это, и если они не могут делать это с помощью свободных программ, они могут смотреть на это как на повод воспользоваться несвободными программами, если они не ценят своей свободы.

Но по-настоящему большая опасность исходит из патентного права, потому что США позволяет патентовать программные идеи. Так вот, составление нетривиальной программы подразумевает комбинирование сотен различных идей. Делать это очень трудно, если любая из этих идей может быть чьей-то монополией. Это делает разработку программ похожей на пересечение минного поля, потому что при каждом конструктивном решении с вами, вероятно, ничего не случится, но есть определенный шанс, что вы наступите на патент, и ваш проект на нем подорвется. И, учитывая то, как много шагов вам придется сделать, это суммируется в серьезную проблему. У нас есть длинный список функций, отсутствующих в пакетах свободных программ из-за того, что мы опасаемся реализовывать их.

[http://endsoftpatents.org]

А теперь в FCC обсуждается распространение нормы о широковещательном флаге на программы. FCC приняла норму, в которой требуется, чтобы в цифровых телевизионных приемниках был механизм противодействия копированию, и это должно быть устойчиво к несанкционированному изменению системы, что означает невозможность реализации в виде свободных программ. Они еще не до конца решили о том, распространяется ли это на программы, но если решение будет положительным, то это будет запрет на GNU Radio — свободную программу, которая может декодировать цифровые телепередачи.

Далее, есть угроза, исходящая от аппаратуры, спецификации которой секретны или которая спроектирована, чтобы мешать контролю над аппаратурой со стороны пользователя. Сегодня есть большое количество аппаратуры, которую вы можете достать для своих персональных компьютеров и спецификации которой секретны. Вам продают аппаратуру, но вам не говорят, как с ней работать. Так как же нам писать свободные программы для работы с ней? Итак, нам приходится либо выяснять спецификации с помощью обратной разработки, либо оказывать рыночное давление на эти компании. И в обоих случаях нас ослабляет факт, что так много пользователей GNU/Linux не знают, почему была разработана эта система, и никогда не слышали об идеях, о которых я вам сегодня рассказываю. А все потому, что когда они слышат об этой системе, они слышат, что ее называют “Linux”, и она ассоциируется с аполитичной философией Линуса Торвальдса. Линус Торвальдс до сих пор работает над развитием Linux. Разработка ядра была важным вкладом в наше сообщество. В то же время он показал очень многим плохой пример, пользуясь несвободной программой в своей работе. Так вот, если бы он пользовался несвободной программой частным порядком, я никогда бы даже не услышал об этом, и я не поднимал бы вокруг этого такого шума. Но приглашая других людей, работавших над Linux, пользоваться ею вместе с ним, он показывает очень многим пример, узаконивая применение несвободных программ. Так что когда люди это видят, так сказать, если они думают, что это допустимо, они не могут считать, что несвободные программы плохи. И вот когда эти компании говорят: “Да, наша аппаратура поддерживает Linux, вот вам драйвер в двоичном виде, который вы можете установить, и тогда она будет работать”,— эти люди не видят в этом ничего плохого, так что они не отвечают своим рыночным давлением и не ощущают потребности помочь в обратной разработке.

Итак, когда мы сталкиваемся с различными опасностями, которые мы должны отражать, мы ослаблены недостатком решимости. Так вот, устойчивая мотивация к борьбе за свободу не гарантирует, что мы выиграем все эти сражения, но она, безусловно, поможет. Она заставит нас быть упорнее, а если мы будем упорнее, мы выиграем больше сражений.

19. Предательские вычисления

Нам будет необходимо политически организоваться и не допускать, чтобы нам полностью запретили писать свободные программы.

Сегодня одна из коварнейших угроз будущему свободных программ исходит от предательских вычислений, представляющих собой заговор множества крупных корпораций. Они называют это “доверенными вычислениями”, но что они под этим подразумевают? Они подразумевают, что разработчик приложения может доверять вашему компьютеру в том, что тот подчиняется ему и не подчиняется вам. Итак, с вашей точки зрения, это предательские вычисления, потому что ваш компьютер больше не будет вам подчиняться. Этот план предназначен для того, чтобы вы больше не контролировали свой компьютер.

[gnu.org/philosophy/can-you-trust.html]

Есть различные вещи, для которых могут применяться предательские вычисления, например, чтобы запретить вам выполнять любую программу, не разрешенную разработчиком операционной системы. Это одно из того, что они могли бы делать. Но они, возможно, не думают, что посмеют зайти так далеко. Но другое, что они планируют сделать,— это чтобы были данные, доступные только для конкретного приложения. Смысл в том, что приложение сможет записывать данные в зашифрованном виде так, чтобы они могли быть расшифрованы только этим же самым приложением, так что никто другой не мог бы независимо написать другую программу для доступа к этим данным. И конечно, они стали бы применять это для ограничения доступа к опубликованным произведениям, понимаете, что-то взамен DVD, чтобы было не только незаконно, но невозможно написать свободную программу для воспроизведения этого.

Но ничто не заставит их остановиться на применении этого к опубликованным данным. Они могли бы делать это и с вашими данными. Представьте, что через десять лет предательские вычисления станут обычными и Microsoft решит выйти с новой версией формата Word, в которой предательские вычисления применяются для шифрования ваших данных. Тогда будет невозможно написать свободную программу для чтения файлов Word. Microsoft пробует каждый возможный метод, чтобы не допустить, чтобы у нас была свободная программа чтения файлов Word. Во-первых, они перешли на секретный формат Word, так что людям приходилось вычислять этот формат. Ну, мы более или менее его вычислили. Есть свободные программы, которые прочтут большинство файлов Word (но не все). Но потом они нашли новую идею. Они сказали: “Давайте применять XML”. И вот что Microsoft имеет в виду, когда говорит, что они применяют XML: в начале файла есть тривиальный заголовок, в котором сказано: “Это XML, а здесь расположены данные в двоичном формате Word”,— а затем идут данные в двоичном формате Word, а потом в конце что-то указывает: “Это были данные в двоичном формате Word”. И это они запатентовали. Я в точности не знаю, на что этот патент распространяется, а на что — нет, но, как понимаете, есть вещи, которые мы можем делать либо при чтении, либо при записи файла в этом формате, за что они, вероятно, могут подать на нас в суд. И я уверен, что если к их услугам будут предательские вычисления, то они воспользуются и ими.

Вот почему мы проводим кампанию, в которой отказываемся читать файлы Word. Так вот, есть много причин, по которым вам следует отказываться читать файлы Word. Одна из них состоит в том, что в них могли бы быть вирусы. Если кто-то присылает вам файл Word, вам не следует в него заглядывать. Но смысл в том, что вам не следует даже пытаться в него заглянуть. Сейчас есть свободные программы, которые прочтут большинство файлов Word. Но в действительности будет гораздо лучше, если вместо того, чтобы читать файл, вы ответите сообщением со словами: “Пожалуйста, пришлите мне это в несекретном формате. Посылать людям файлы Word — плохая идея”. Это потому, что нам нужно преодолеть тенденцию пользоваться секретными форматами для связи в обществе. Нам нужно убедить людей настаивать на публично документированных стандартных форматах, которые каждый волен реализовать. Формат Word — самый злостный нарушитель, так что лучше всего начинать с него. Если кто-то присылает вам файл Word, не пытайтесь читать его. Ответьте словами: “Вам никак не следует этого делать”. А в www.gnu.org/philosophy есть хорошая страница для ссылок. На ней дано объяснение того, почему эта проблема важна.

[gnu.org/philosophy/no-word-attachments.html]

20. Помощь GNU

Так вот, www.gnu.org — сайт проекта GNU. Так что вы можете зайти туда за более подробной информацией. В каталоге /gnu вы найдете историю, а в каталоге /philosophy вы найдете статьи по философии свободных программ, а в каталоге /directory вы найдете Каталог свободных программ, в котором сейчас перечислено свыше 3000 готовых к применению пакетов свободных программ, которые будут работать в системе GNU/Linux.

[Сейчас их свыше 6000, и они расположены в directory.fsf.org]

Так вот, моя речь приближается к концу, но перед завершением я хотел бы упомянуть, что у меня есть наклейки для раздачи. На этих наклейках показаны летающий гну и летающий пингвин, и тот, и другой довольно нереалистичны, но это же сверхгерои. И если не будет возражений, у меня есть кое-что на продажу от лица Фонда свободного программного обеспечения, так что если вы купите это, вы поддержите нас. У меня есть вот эти значки с надписью “спроси меня о свободных программах — все дело в свободе”, брелоки и заколки с GNU, довольно симпатичные. Так что вы можете их купить. Вы также можете поддержать нас, став членом-партнером. Так вот, вы можете сделать это просто на нашем сайте, но у меня также есть несколько карточек, которые вы можете получить, если вы хотели бы присоединиться [прямо сейчас].

21. Святой Игнутий

Итак, сейчас я завершу свою речь, представив свое второе я. Понимаете, люди иногда обвиняют меня в заносчивости. Так вот, я надеюсь, это не верно. Я не собираюсь обвинять кого-то только за то, что тот менее тверд в убеждениях, чем я. Я попытаюсь призвать его стать более твердым, но это — другое дело. Так что я не думаю, что я заносчив, но у меня есть склонность к святости, потому что я святой; быть святым — моя работа.

[Облачается в черную ризу и нимб из магнитного диска]
[Смех, аплодисменты]
[Ричард держит портативный компьютер как святое писание и машет]

Я — святой Игнутий церкви Emacs. Я благословляю твой компьютер, дитя мое.

Emacs возник как текстовый редактор, который стал образом жизни многих пользователей компьютеров, а затем — религией. Знает кто-нибудь, для чего использовалась группа новостей alt.religion.emacs? Я знаю, что она была, но поскольку я никогда не читал сетевых новостей, я не знаю, о чем там говорили.

Во всяком случае, сейчас у нас есть великий раскол между двумя соперничающими версиями Emacs, есть у нас и святые; правда, нет богов.

Чтобы быть членом церкви Emacs, вы должны повторять символ веры: вы должны говорить: “Нет системы, кроме GNU, а Linux — одно из ее ядер”.

У церкви Emacs есть преимущества по сравнению с другими церквями, которые я мог бы упомянуть. Чтобы быть святым церкви Emacs, не требуется целомудрия. Так что если вы ищете церковь, чтобы стать в ней святым, вы могли бы подумать о нашей.

Однако решимость жить в нравственной чистоте для этого необходима. Вы должны изгнать зло несвободных операционных систем, которые владеют всеми вашими компьютерами под вашим практическим контролем, либо в вашем подчинении, и вы должны установить чисто (т.е. пречисто) свободную операционную систему, где “чисто-пречисто” можно понимать в более чем одном смысле, а затем устанавливать поверх нее только свободные программы. Если вы исполнитесь решимости и претворите ее в жизнь, то вы тоже будете святыми, и у вас когда-нибудь тоже может появиться нимб — если вы его раздобудете, потому что их больше не выпускают.

Иногда меня спрашивают, не считает ли церковь Emacs грехом пользоваться vi. Так вот, бесспорно, VI-VI-VI — это редактор Зверя [смех], но пользоваться свободной версией vi — это не грех, это епитимья.

А иногда меня спрашивают, действительно ли мой нимб является старым компьютерным диском [указывает на нимб]. Это не компьютерный диск, это мой нимб. Но он был компьютерным диском в прошлой жизни.

Итак, благодарю за внимание.

[Аплодисменты]

22. Об анонимности, кредитных картах, сотовых телефонах

Итак, я немного поотвечаю на вопросы.

Аудитория. А вы знаете, можете вы нам сказать, почему Линус Торвальдс, у которого отношение к этому очень и очень отличается от вашего, выпустил Linux под вашей [неразборчиво]? Чем он руководствовался?

Ричард. Я не знаю, почему Линус Торвальдс перевел Linux на GNU GPL. Это нужно спрашивать у него. Я не припоминаю, чтобы когда-нибудь где-то читал об этом. Я не знаю.

Аудитория. Можете вы сказать что-нибудь о нынешних работах по встраиванию безопасности в саму сеть?

Ричард. Я не знаю... он сказал: “Работы по включению безопасности в сеть”. Я не знаю, что это значит.

Аудитория. [неразборчиво] убрать анонимность из самой сети.

Ричард. Убрать анонимность? Ну, я не знаю об этих работах, но думаю, что это ужасно. Я не участвую в электронной коммерции, потому что я не люблю покупать по кредитным картам. Я хочу покупать анонимно, и я покупаю анонимно в магазине за наличные. Я не люблю оставлять Старшему Брату любых записей обо мне. По этой же причине у меня нет сотового телефона. Я не хочу носить персональное следящее устройство. Нам надо активнее защищать свою личную жизнь от систем слежки. Итак, хотя я не знаком с конкретными работами, о которых вы говорите, я нахожу это опасным, гораздо более опасным, чем недостаток безопасности компьютеров. Так вот, возможно, это потому, что я не пользуюсь Windows; так что у меня меньше проблем.

Аудитория. [неразборчиво]

Ричард. Нет, не можем. По существу он спрашивает, можем ли мы монополизировать форматы файлов. Так вот, ответ на этот вопрос таков: мы не можем делать это с помощью лицензий, основанных на авторском праве, потому что авторское право не распространяется ни на какие идеи, принципы, методы работы или системы; оно распространяется только на выражения авторского произведения. Так что мы не можем с помощью таких своих лицензий, как GNU GPL, запретить кому бы то ни было писать собственные программы для обработки этого же самого формата.

Мы могли бы, наверное, получить патенты; однако оказывается, что патенты очень и очень отличаются от авторских прав; у них нет почти ничего общего, и оказывается, что получить патент стоит больших денег, и еще больше денег уходит на обеспечение патента. А с другой стороны, вы не должны предполагать, что то, на что Microsoft получает патенты, важно из-за того, что это большое улучшение. Это просто должно быть другим. Microsoft может получить патент на что-нибудь, касающееся формата файлов, которые чем-то отличаются, а потом они могут принудить большинство пользователей перейти на новый формат, в котором применяется эта идея. И Microsoft может делать это из-за своей власти над рынком, из-за того, что они его контролируют.

Мы этого не можем. Весь смысл свободных программ состоит в том, что у разработчиков нет власти; все контролируется пользователями. Мы не можем принуждать пользователей переходить на что бы то ни было, даже ради их собственной безопасности.

Как вы знаете, мы пытались примерно с 1992 года убедить пользователей прекратить применять формат GIF, потому что этот формат запатентован и некоторые пользователи попадут под суд. Так что мы говорили: “Прекратите, пожалуйста, все пользоваться форматом GIF ради тех, на кого подадут в суд, если общество будет применять этот формат”. А нас не слушали. Так что дело в том, что мы не можем делать то, что делает Microsoft, потому что это основано на власти, которая у них есть, а поскольку мы решили уважать свободу людей, у нас нет власти над обществом.

24. Опасности публичных серверов: потеря свободы

Аудитория. Итак, когда кто-то пользуется Google, у них нет доступа к исходному тексту того, чем мы пользуемся, так что у них нет способа [неразборчиво] что мы делаем, так что пользование этим нарушает их свободу.

Ричард. Когда человек связывается с сервером Google, у него нет ни двоичных файлов, ни исходного текста программы, которой пользуется Google, потому что это Google пользуется той программой; этот человек не пользуется программой. Так что я не стал бы ожидать, что он будет вправе изменять программы, которые работают на вашем компьютере. У вас должна быть свобода изменять программы, которые работают на вашем компьютере, но я никогда не ожидал бы, что у меня будет свобода зайти на ваш компьютер и поменять там программы. Почему вы должны давать мне делать это? Так что вот как я смотрю на то, что человек пользуется сервером Google для поиска.

Так вот, одна опасность здесь возможна. Опасность исходит не от Google и ему подобных. Опасность исходит от Hotmail и ему подобных. Когда люди начинают пользоваться сервером в сети для хранения своих данных и выполнения работ, которые они на самом деле могли бы выполнять на своих собственных компьютерах, это вносит опасность. Я никогда не понимал людей, которые говорят, что будущее — за тонкими клиентами, потому что я не могу себе представить, почему я мог бы когда-нибудь делать это таким образом. У меня есть персональный компьютер, и он способен выполнять такие задачи, как чтение почты; почта у меня будет на моем собственном компьютере, я не собираюсь оставлять ее на чьем-то сервере. Тем более — на сервере, которому у меня нет оснований доверять. И конечно, если вы в наши дни позволяете своим личным данным храниться на чьем-то сервере, то вы с тем же успехом могли бы вручать их прямо генеральному прокурору США и его гестапо.

[Ричард Столмен, 2010: Gmail в этом отношении сопоставим с Hotmail. См. также gnu.org/philosophy/who-does-that-server-really-serve.html; там описана другая проблема, актуальная для некоторых, но не всех, сетевых служб.]

Аудитория. [неразборчиво]

Ричард. Он спрашивает: “Если бы люди пользовались тонким клиентом, а все вычисления проводились на удаленном сервере”. Да, это действительно значит, что люди теряют свободу, потому что, сами понимаете, вы не можете изменять программы, которые установлены на чьем-то чужом сервере; вместо того, чтобы выполнять их на своем компьютере, вы теряете контроль. Так вот, я не думаю, что это хорошо, и таким образом, я буду призывать людей не связываться с этим. Люди будут продолжать разрабатывать программы для выполнения этих задач на вашей собственной машине.

{Уже уходите? [Смех] Я надеюсь, не потому, что вас обидело что-то, что я сказал. Ну вот, наша встреча не состоится. Ну, да ладно.}

Аудитория. Являются ли Creative Commons другой ветвью этой же религии или другой религией?

Ричард. Ну, во-первых, это не религия, это была шутка. Церковь Emacs — это шутка. Имейте, пожалуйста, в виду, что слишком серьезное отношение к любой церкви может быть опасно для вашего здоровья, даже если это церковь Emacs. Так что религия тут ни при чем.

Это вопрос этики. Это вопрос того, что хорошо для общества и в какого рода обществе мы хотим жить. Это не вопросы догмы, это вопросы философии и политики.

Лицензии Creative Commons составлены для произведений искусства, и я думаю, что для них они хороши. Проблематика произведений искусства не совсем совпадает с проблематикой программ.

Программы представляют собой пример практических, функциональных произведений. Вы пользуетесь ими для выполнения работы. Главное назначение программы состоит не в том, что люди читают ее текст и думают: “Ах ты, как это здорово, какую он проделал отличную работу”. Главное назначение программы состоит в том, что вы выполняете ее, а она что-то делает. Да, те, кто интересуется программированием, будут также читать ее и учиться, но это — не главное назначение. Она представляет интерес потому, что выполняет работу, а не просто из-за того, что ее приятно читать. В то время как в искусстве главное применение произведений — ощущения, которые вы получаете, когда смотрите на них или слушаете их. Так что это очень разные способы применения, и как результат, этические проблемы копирования и модификации тоже различаются.

Для практических, функциональных работ люди должны обладать всеми четырьмя свободами, в том числе свободой публикации модифицированной версии. Но в отношении искусства я бы этого не сказал. Я думаю, что есть определенная минимальная свобода, которая у нас всегда должна быть при пользовании любым опубликованным произведением, и это свобода некоммерческого буквального распространения точных копий. Но я бы не сказал, что она должна идти дальше, чем этот минимум. Так что я думаю, что лицензии Creative Commons очень полезны и хороши для искусства.

26. Вредоносные свободные программы

Аудитория. Поскольку у каждого есть свобода изменять программы и переопубликовывать их, как вы избежите саботажа?

Ричард. Да никак. Дело в том, что вы не можете этого никогда. Так что вы просто смотрите на эти различные версии и видите, какая вам больше нравится. Вы не можете избежать саботажа и в случае с несвободными программами; фактически саботаж может идти от разработчика. Как я говорил, разработчики часто закладывают вредоносные особенности. И тогда вы полностью беспомощны. Со свободными программами вы, по крайней мере, можете прочесть исходный текст, можете сравнить две версии. Если вы подумываете о переходе с этой версии на ту версию, вы можете сравнить их и увидеть, чем они отличаются, и поискать вредоносные части.

27. Запатентованные форматы файлов

Аудитория. Вы случайно не знаете, какие популярные форматы файлов секретны, а какие нет?

Ричард. Ну, из популярных форматов файлов, я знаю только о некоторых форматах Microsoft, что они секретны. Но с другой стороны, есть другие форматы с патентными проблемами. Например, до сих пор есть патент, распространяющийся на сжатие LZW, которое применяется в формате GIF. И у кого-то есть патент, который, как он утверждает, распространяется на формат JPEG, и он на самом деле судится с кучей компаний. А потом, есть патент на звукозапись в MP3, так что свободные программы для записи MP3 в США загнали в подполье [1]. Вот почему нужно переходить на формат Огг Ворбис. А потом, когда вы посмотрите, скажем, на видеоформат MPEG-2, то говорят, что есть 39 различных патентов США, которые распространяются на различные аспекты MPEG-2. Так что таких проблем много.

28. Игры как свободные программы

Аудитория. Есть ли программы, которые как-то смешиваются между Creative Commons и функциональными программами, такие как игры или?..

Ричард. Ну, во многих случаях вы можете рассматривать игру как на комбинацию программы и сценария. И тогда имело бы смысл рассматривать игру как программу, а сценарий — как художественное произведение. С другой стороны, вы ведь видите, что для пользователей очень полезно редактировать и переопубликовывать измененные версии этих сценариев. Так что, хотя это похоже на художественные произведения, на самом деле для пользователей кажется полезно, если они вольны изменять их.

29. Свободы GPL для автомобилей и сохранения семян

Аудитория. Предвидите ли вы выход этой философии свободных программ дальше, за границы, на продукты, услуги...

Ричард. Когда вы говорите: “Продукты, услуги”,— не могли бы вы быть конкретнее?

Аудитория. [неразборчиво] автомобили

Ричард. Итак, должна ли философия свободных программ применяться к автомобилям? Хорошо, философия свободных программ состоит в том, что вы должны быть вольны копировать и править их. Итак, если у вас есть устройство копирования автомобилей, я думаю, что вы должны быть вольны скопировать любой автомобиль. Но таких устройств копирования нет, так что это вопрос бессмысленный. А второе — изменения. Так вот, да, я думаю, что если у вас машина, то вы должны быть вольны изменять ее, и на самом деле многие свои машины изменяют. Так что на это могут налагаться какие-то ограничения, но в значительной мере эта свобода существует. Так что мы видим, что этот вопрос лишен смысла, когда вы говорите о физических объектах. Вообще говоря, устройств копирования физических объектов нет.

Если мы представим себе, что когда-нибудь в будущем такие устройства появятся, ну, тогда положение будет другим, и эта перемена вызовет свои последствия в этике и политике. Если бы у нас были устройства копирования пищи, я уверен, что сельскохозяйственные деловые круги пытались бы запретить людям иметь и пользоваться такими устройствами. И это было бы грандиозной политической проблемой, как сейчас представляет грандиозную политическую проблему то, должно ли быть разрешено фермерам сохранять семена. Так вот, я убежден, что у них есть принципиальное право сохранять семена и не давать им это делать — тиранство. Демократическое государство никогда бы так не поступило.

30. Лучше никаких программ, чем несвободные

Аудитория. [приблизительно] Считаете ли вы проблемой недопроизводство свободных программ в связи с тем, что никто не хочет вкладывать деньги [неразборчиво]?

Ричард. Я не знаю, что вы хотите сказать словом “недопроизводство”. Мы видим, что какие-то люди разрабатывают свободные программы, а какие-то — нет. Мы могли бы представить себе, что больше людей разрабатывает свободные программы и что, в таком случае, у нас их больше. Но, видите ли, кризис ресурсов на самом деле заключается в чрезмерной эксплуатации. А это может произойти, например, с полем, но с программами этого не происходит: вы не можете перерасходовать программу, она не изнашивается. Так что в действительности здесь нет аналогии.

Аудитория. Итак, возьмем ваш пример, скажем, есть полезная программа, а тысяча людей хочет изменить ее. Вы сказали, что они могут сложить свои деньги вместе и нанять программиста, который бы внес это изменение. Но каждый индивидуум в этой группе скажет: “Ну, я просто дам остальным 999 заплатить за это изменение”.

Ричард. Да, они это могут, но это было бы довольно глупо, потому что если бы они поняли, что в результате это не будет сделано, то если это для них сколько-нибудь важно, то им гораздо лучше объединиться и вложить свои деньги, чтобы подготовить это изменение. А сделают они это или нет — в любом случае я не согласен, что здесь произошла какая-то трагедия. Если они объединились, заплатили за изменение и получили его, это хорошо, а если они не объединились, не заплатили за это изменение — это тоже хорошо; я полагаю, что им этого не так уж и хотелось. Ни то, ни другое не плохо.

Несвободные программы — зло, и для нас будет лучше, если не будет ничего, чем если будут несвободные программы. Кризис ресурсов может произойти либо при перерасходе, либо при недостаточной отдаче, но в случае программ перерасход невозможен. Недостаточная отдача происходит, когда программа не свободна. Тогда этот ресурс не удается использовать. И таким образом, я хотел бы, чтобы разработка несвободных программ прекратилась. Несвободная программа хуже, чем отсутствие программ вообще, потому что ни то, ни другое не позволяет вам выполнять работу свободно, но несвободная программа могла бы соблазнять людей покончить со своей свободой, а это очень плохо.

31. Переносимость свободных программ

Аудитория. Есть ли потенциальный конфликт между философией свободных программ и переносимостью [неразборчиво]?

Ричард. Нет, я не вижу в этом смысла. Я не вижу противоречия между философией свободных программ и переносимостью. И в мире свободных программ мы упорно и всесторонне работали над достижением переносимости. Мы делаем наши программы очень переносимыми, мы стандартизуем наши программы, чтобы другие люди легко могли получить переносимость, так что мы способствуем переносимости во всех возможных направлениях. В то же время вы видите, как Microsoft преднамеренно вводит несовместимости и преднамеренно блокирует возможность совместной работы различных программ. Microsoft может делать это благодаря своей власти. Мы этого не можем. Если мы сделаем программу несовместимой, а пользователям это не понравится, они изменят ее. Они могут изменить ее так, чтобы она стала совместимой. Так что мы не в том положении, в каком можно навязывать несовместимость кому бы то ни было, потому что мы решили не пытаться получить власть над другими людьми.

32. Делают ли какие-то свободные программы запутанными нарочно?

Аудитория. Что-нибудь [неразборчиво] запутанное [неразборчиво] понимать это.

Ричард. Ну, я с вами не согласен. Помилуйте, это же глупо. Если вы говорите, что программу трудно понимать, это не то же самое, как если ее ограничивают люди. Это не то же самое, как если говорить: “Вам запрещено это видеть”. Так вот, если вы находите это неясным, вы можете работать над тем, чтобы сделать это более ясным. На деле разработчики, вероятно, пытаются, чтобы это было ясным, но это нелегко и, если вы только не хотите сравнить наши программы с несвободными программами и увидеть, какие из них понятнее, то у вас нет основания для того заявления, которое вы делаете. Насколько я слышал, несвободные программы, как правило, гораздо хуже, по той причине, что разработчики соображают, что никто этого не увидит, так что их никогда не смущает то, насколько это плохо.

33. Несвободные программы на переднем крае

Аудитория. От многих вы слышали аргумент, что люди, которые производят устройства или [неразборчиво] аппаратуру — что им нужны несвободные программы, чтобы вырваться на передний край, потому что, если бы они отдавали программы бесплатно, то конкурент мог бы изготовить устройство [неразборчиво].

Ричард. Я этому не верю. Я думаю, это полная ахинея, потому что они конкурируют друг с другом, и каждый говорит: “Нам нужно делать программы несвободными, чтобы вырваться вперед других”. Ну, если бы ни один из них не делал этого, что же, все они потеряли бы позиции? Я хочу сказать, ну и что из того? Нам не нужно покупаться на это, и их продукты нам тоже покупать не следует.

34. Какая может быть свобода, когда запрещено запрещать?

Аудитория. Я сказал бы [неразборчиво]

Ричард. Пожалуйста, не делайте этого. Вопрос, который вы хотите поставить, возможно, не плох, но попытайтесь поставить его нейтрально, без нападок.

Аудитория. У меня в голове есть мысль, так что я просто выскажусь. Дело в том, что регистрируя [неразборчиво] что-то и говоря, что “вы можете перераспространять эту программу, но вам нужно соблюдать эти четыре свободы”, вы ведь ограничиваете мою свободу?

Ричард. Нет. Это не дает вам получить власть; не давать А угнетать Б не значит отрицать свободу А, потому что угнетение других — это не свобода. Это власть.

Так вот, могут быть люди, которые хотели бы пользоваться властью, а мы не даем им этого, но это хорошо, и это никому не отказывает в свободе.

Я хочу сказать, что вы могли с тем же успехом сказать, что если вы сбрасываете диктатора, а диктатор говорит: “Вы отнимаете мою свободу приказывать всем!” Но это не свобода, это власть.

Так что я провожу различие между свободой, то есть контролем над своей собственной жизнью, и властью, то есть контролем над жизнью других. Нам необходимо проводить это различие; если мы будем игнорировать различие между свободой и властью, то мы потеряем способность судить о том, свободно общество или нет. Понимаете, если вы не различаете этого, то вы посмотрите на сталинскую Россию и скажете: “Ну, там было столько же свободы, просто вся она была у Сталина”. Нет! В сталинской России у Сталина была власть, а свободы у людей не было; свободы там не было потому, что это свобода только тогда, когда речь идет об управлении своей собственной жизнью. Управление жизнью других людей — это никакая не свобода, ни для тех, кто правит, ни для тех, кем правят.

35. Может ли Google помогать свободным программам

Аудитория. Есть ли, по вашему мнению, что-нибудь, чем Google как компания могла делать более в духе свободных программ?

Ричард. На самом деле я недостаточно знаю, чем занимается Google, чтобы у меня было какое-то мнение. Но если бы Google хотела пожертвовать какие-то деньги в Фонд свободного программного обеспечения, мы с радостью приняли бы их. Я встретил здесь нескольких людей, которые работают над конкретной свободной программой, а именно, Linux, ядром. И я не спрашивал, публикуют ли они свои улучшения. [Аудитория. Они публикуют.] А, это хорошо, это приносит пользу. Я хочу сказать, если вы хотите внести вклад в какие-то другие свободные программы, это тоже было бы славно, но я не знаю, есть ли у вас потребность в этом. И конечно, если у вас когда-нибудь была бы возможность выпустить какую-то другую общеполезную новую свободную программу, это тоже было бы хорошо.

[Ричард Столмен, 2010 год: Сейчас Google распространяет некоторые крупные несвободные программы. Некоторые из них написаны на JavaScript, и серверы устанавливают их незаметно для вас.]

36. Свободные программы под Windows: хорошо или плохо

Я отвечу еще на три вопроса.

Аудитория. Итак, если я разрабатываю свободные программы для такой несвободной системы, как Windows, по существу я поддерживаю эту несвободную систему. Делаю ли я этим хорошее или плохое?

Ричард. Ну, в этом есть хороший аспект и плохой аспект. Что касается ваших программ, то вы уважаете свободу других людей, так что это хорошо, но тот факт, что она работает только под Windows — это плохо. Так что в действительности вам не следует разрабатывать их под Windows. Вам не следует применять Windows, это плохо. Это не так плохо, как быть разработчиком Windows, но это все-таки плохо, и вам не следует этого делать.

Аудитория. Итак, вы говорите: “Просто не делайте этого вообще”.

Ричард. Ну да, не пользуйтесь Windows. Пользуйтесь вместо этого GNU/Linux и разрабатывайте свою свободную программу для GNU/Linux. И тогда это будет хорошо в обоих отношениях.

Аудитория. Но разве не могла бы она открыть пользователям Windows эту идеологию?

Ричард. Могла бы, но свободных программ для Windows уже достаточно, чтобы получить этот эффект. И дело в том, что разработка программ под Windows будет создавать для людей практический стимул пользоваться Windows, а не GNU/Linux. Так что, пожалуйста, не делайте этого.

[Ричард Столмен, 2010 год. Для ясности: может быть полезно делать так, чтобы свободные программы работали также под Windows, как он сказал; однако писать свободную программу, которая работает только под Windows — это пустая трата средств.]

37. Процесс SCO

Аудитория. Какими были бы последствия, если бы SCO выиграла процесс против Linux? Как это сказалось бы на...

Ричард. Я не знаю, это зависит от многого. Это не сказалось бы на GPL. Но какие-то тексты, возможно, из Linux пришлось бы удалить. А была ли бы это большая проблема или крошечная проблемка — это зависит от того, что это за тексты, так что тут ничего сказать нельзя. Но я не думаю, что SCO представляет реальную проблему. Я думаю, патенты на программы, предательские вычисления и аппаратура с секретными спецификациями — вот где настоящие проблемы. Вот против чего нам нужно бороться.

38. Проблема Столмена с набором текста

Аудитория. У меня вопрос неидеологического характера. Я лично очень интересуюсь вашей борьбой с травмами при кумулятивном воздействии и влиянием, которое она оказала на разработку GNU Hurd.

Ричард. Никакого, потому что я никогда не работал над GNU Hurd. Мы наняли человека для того, чтобы написать GNU Hurd. Я никакого отношения к его написанию не имел. Было несколько лет, когда я не мог печатать помногу, и тогда мы нанимали людей, чтобы печатать за меня. А потом я обнаружил, что если взять клавиатуру с мягким откликом, то я снова могу печатать.

39. Открытый исходный текст: хорошо или плохо

Аудитория. Каково ваше мнение об открытом исходном тексте?

Ричард. Ну, движение за открытый исходный текст чем-то похоже на движение за свободные программы, только с отброшенным философским фундаментом. Так что они не говорят о том, что правильно, а что — нет, о свободе, о неотъемлемых правах, они просто не представляют это в терминах этики. Они говорят, что у них есть методология разработки, которая, по их словам, обычно приводит к превосходным в техническом отношении программам. Так что они апеллируют только к практическим, техническим ценностям.

И то, что они говорят, может быть верно, и если это убеждает кого-то писать свободные программы, то это полезный вклад. Но я думаю, что они упускают существенный момент, когда не говорят о свободе, потому что именно это делает наше сообщество слабым — что мы недостаточно говорим и думаем о свободе. Те, кто не думает о свободе, не ценят своей свободы — они не будут защищать свою свободу и утратят ее. Взгляните на акт “Pat-riot” США. Понимаете, люди, которые не ценят свою свободу, утратят ее.

40. Конец

Итак, благодарю за внимание, и если кто-то желает купить что-то из этих сувениров ФСПО или...

[Аплодисменты]

Примечание

  1. Сроки действия всех патентов на MP3 истекли к 2018 году.

Примечания переводчиков

  1. ITS — англ.Incompatible Timesharing System”.
  2. TINT — англ. “оттенок”, “TINT Is Not TECO”;
    FINE — англ. “прекрасный”, “FINE Is Not Emacs”;
    SINE — англ. “синус”, “SINE Is Not Emacs”;
    EINE — нем. “одна”, “EINE Is Not Emacs”;
    ZWEI — нем. “два”, “ZWEI Was EINE Initially”;
    MINCE — англ. “фарш”, “MINCE Is Not Complete Emacs”.
  3. new — англ. “новый”.
  4. GNU GPL — англ.GNU General Public License”.
  5. “Hurd” созвучно английскому “herd” (стадо).