Термин «free software» — «свободное программное обеспечение», если переводить на русский буквально — был сформулирован впервые тридцать лет назад. И есть какая-то злая ирония в том факте, что и сегодня ещё большинству компьютерных пользователей он непонятен. Спросите пойманных наудачу десять человек, что это значит — и внятный ответ вы услышите не более чем от двоих.
Что тому виной? Не редкость свободного софта, конечно же: нынче почти каждый сталкивается с ним ежедневно — на компьютерах (хотя бы в виде браузера Firefox), на смартфонах/планшетках (Android), в WiFi-роутерах (внутри которых очень часто скрывается Linux). Не виноваты и теоретики, в какой-то момент погрязшие в философских спорах относительно нюансов терминологии. Может быть дело в том, что понимание программного обеспечения как собственности легче ложится на наше первобытное сознание, воспитанное в категориях «личного имущества»? Так или иначе я предлагаю пройтись по ключевым терминам и моментам истории снова: вспомнить, как это было, где началось и куда привело. Заодно проясним и ответ на поставленный вопрос.
Отцом-основателем термина free software считается американец Ричард Столлман. Этот бородатый дядька славится своими радикальными воззрениями на компьютерный мир, но важно понимать, что таким он был не всегда. «Заболев» компьютерами в детстве, он долго применял их так сказать непосредственно, по ходу учёбы и работы (по образованию он физик, а первые свои крупные софтверные разработки выполнил в лаборатории искусственного интеллекта в MIT). Всё это случилось ещё до наступления 80-х, то есть до проникновения компьютеров в быт. В те далёкие времена вычислительные машины были дорогими, громоздкими, а потому общими, принадлежали компаниям и организациям. И очень естественно, что и программное обеспечение тоже было «общим». Программами делились без ограничений и без условий. И только с появлением персонального компьютера и формированием широкого рынка ПО, этой счастливой эпохе пришёл конец.
Столкнувшись с ограничениями на изучение, применение и распространение программ (производители стали требовать «уважать авторские права», стали называть копирование без спросу «пиратством»), Столлман и превратился в того фанатика, каким мы знаем его сейчас. Философия у него простая и может быть сведена к следующему постулату: машинный код равноценен речи. Это означает, что на программы распространяется принцип свободы слова: программное обеспечение может и должно быть так же свободно, как свободна наша речь!
Чтобы люди не путали свободное и бесплатное (несвободную программу могут распространять бесплатно, но это не делает её свободной), Столман же придумал знаменитое сравнение слова и пива. Полученная в подарок бутылка пива может быть выпита, но не может быть перепродана, скопирована, не может быть изучена ради восстановления рецепта скрывающегося в ней напитка. Получив бутылку пива, вы ограничены в правах — и это в точности ситуация с бесплатным программным обеспечением: лицензия на него не позволяет вам делать ничего, кроме запуска. А вот слово, речь — это свободное ПО: с ним можно делать всё, что вам заблагорассудится (в том числе и зарабатывать на нём: ведь можно же выступать с речами за вознаграждение). Единственным условием чаще всего является передача тех же прав следующему за вами пользователю.
Практик по натуре, Столлман подкрепил свои рассуждения делом. В 1983 году он основал проект GNU Project, который ведёт до сих пор. Это проект по разработке операционной системы, которая могла бы распространяться и использоваться свободно. Главной лицензией для проекта стала придуманная Столлманом GNU General Public License (GPL) — остающаяся самой популярной среди свободных лицензий. Системные утилиты и прикладные программы Столман с единомышленниками написали сами, а ядром операционки стала Linux. Вот, кстати, почему Ричард настаивает, чтобы Linux называли не просто Linux, а GNU/Linux: очень многое из того, чем пользуется среднестатистический линуксоид, было разработано в рамках GNU Project.
Скажу откровенно, лично мне сопоставление слова и пива не кажется удачным. Оно полезно для англоязычных пользователей, поскольку в английском языке слово «free» имеет два смысла: это и «свободное» (лишённое ограничений) и «бесплатное» (распространяемое по нулевой цене). Но пользователям русскоязычным, по моему опыту, легче объяснить смысл свободного софта, если представить его в виде... лыжни! Встать на неё, прокатиться по ней может всякий желающий. Никто не вправе запретить по ней ездить — потому что и топтали её все вместе. И что ещё важно, каждый, кто по ней бежит, тем самым уже помогает содержать её в порядке. Так же и свободный софт выигрывает от каждого нового пользователя: ведь не обязательно уметь программировать — даже советы, рассказы, просто новые вопросы это уже помощь сообществу!
Но вернёмся к истории. Вплоть до второй половины 90-х годов философия Столлмана оставалась фундаментом для свободного программного обеспечения. Но появление WWW заставило взглянуть на старую задачу под новым углом. К тому моменту стало ясно, что применение свободной модели способно облегчить жизнь не только энтузиастам, а и обычным компаниям: они могут сэкономить на разработке (заимствуя чужой свободный код, привлекая добровольных помощников и т.п.), получают преимущество перед конкурентами (ведь свободное ПО можно продавать бесплатно или очень дёшево, а зарабатывать на поддержке). Однако уже упомянутая проблема двусмысленности слова «free» мешала продвижению концепции свободы в большой бизнес: предприниматели попросту боялись, что их заставят раздавать свои программы бесплатно, они не понимали, что свободная программа быть бесплатной не обязана.
И вот, чтобы избежать путаницы, несколько крупных фигур из мира свободного софта — Линус Торвальдс, Эрик Реймонд (автор статьи, а потом и книги «Собор и базар», увлекательно описывающей свободную модель разработки, в частности, на примере Linux), Гвидо ван Россум (создатель Python), Фил Циммерман (применивший концепцию свободного софта для своей программы PGP) и некоторые другие собрались в 1998 году и устроили мозговой штурм. Они решили, что необходим новый термин — и остановились на варианте «open source software».
В буквальном переводе на русский это означает «программное обеспечение с открытым исходным кодом». И для англоязычной аудитории такой термин действительно лучше, чем «free software»: он лишён смысла «бесплатное». Определение же у него практически такое же, как у «free software», так что большинство лицензий, квалифицируемых как «free», могут быть квалифицированы и как «open source».
К несчастью, желая избежать путаницы, авторы термина «open source software» создали новую. «Фундаменталисты» (Столлмана и др.) отказались признать, что новый термин равноценен старому. Проблема тут не техническая, а скорее философская: в их понимании, «открытые исходники» не содержат указания на свободу — ведь, помните, машинный код для Столлмана равноценен речи. Поэтому не пугайтесь, если однажды станете очевидцем сражения сторонников того и другого лагеря. Практической разницы между free software и open source software нет.
Опять же, нам, русскоязычным пользователям, проще, чем англосаксам. Наш термин «свободное программное обеспечение» очень удачно вмещает в себя и смысл free software, и open source. Не нужно ломать голову! Свободное ПО — это все программы, выпущенные под лицензиями GPL, BSD, некоторыми из Creative Commons, и им подобными.
В настоящий момент зреет другая проблема. Дело в том, что свободный софт проник в цифровой мир очень глубоко: Firefox, Android, Linux-прошивки для «умных» устройств и прочее помогают нам каждый день. Но чем глубже свободные корни уходят в несвободное ПО и «железо», тем труднее распознать, с чем мы имеем дело в каждом конкретном случае. Хороший пример — операционная система Android. Формально, она основана на ядре Linux, то есть свободна. Однако многие её функции спрятаны в несвободных компонентах, которыми владеет Google.
Фундаменталисты вроде Столлмана такую смесь считают неприемлемой, вредной, даже опасной. Но есть над чем задуматься и простому пользователю: контролируя программу, производитель контролирует и пользователя — а готовы ли лично вы поступиться своими свободами ради удобства?
P.S. В статье использованы иллюстрации Ade Oshineye, Eric Raymond.
--------------------------------------
Вы всегда можете обратиться к этой заметке, воспользовавшись адресом Linux.su/080416.shtml