LXF164:Философия открытого кода
Olkol (обсуждение | вклад) (→Марксизм) |
Olkol (обсуждение | вклад) м (Olkol переименовал страницу LXF162:Философия открытого кода в LXF164:Философия открытого кода) |
Текущая версия на 13:54, 31 октября 2018
|
|
|
Содержание |
[править] Философия свободного ПО
Джонатан Робертс изучает место Linux в мире этических, экономических и религиозных воззрений.
Как мы недавно обнаружили в TuxRadar, люди очень любят поспорить. Мы поинтересовались (сами — держа язык за зубами), как воспринимают Linux: марксистским или капиталистическим.
Полученные ответы немало нас повеселили, но многие из них были весьма продуманны и заставили и нас задуматься о том, как Linux и движение свободного ПО соотносятся с широкими философскими, экономическими, религиозными и этическими воззрениями и спорами, занимающими человечество на протяжении веков. Глядя на то, как сам Линус Торвальдс втянулся в столь праздную болтовню, что показало его недавнее интервью на BBC, мы решили, что было бы интересно продолжить беседу. Мы взглянем на Linux и движение CПО со стороны, изучая их под видом продолжающихся дебатов, и рассмотрим несколько теорий и возможность их применения к нашей любимой ОС.
Сначала предупредим: нам в Linux и свободном ПО важнее всего то, что это – практическая реальность: просто здорово, что все это работает, что это свободно и что люди могут получить огромное удовольствие, используя и создавая его – а некоторые при этом умудряются еще и нажиться. Все остальное – просто гарнир, так что не стоит особо расстраиваться из-за того, что вы прочитаете!
«Нам важнее всего в Linux и свободном ПО то, что это реальность.»
[править] Что такое теория игр?
В этой статье мы немного поговорим о теории игр, но вы можете не знать, в чем она заключается. Определение в Wikipedia не очень помогает разобраться с этим: оно гласит, что это изучение конфликта и сотрудничество между ответственными за принятие рациональных решений лицами посредством математической модели. Что же это означает на самом деле?
Хороший способ разобраться с тем, что это означает – рассмотреть пример, игру под названием «дилемма заключенного». Стенфордская энциклопедия философии описывает эту игру так: «Предположим, полиция арестовала двоих участников вооруженного грабежа. К сожалению, у нее недостаточно улик, чтобы убедить присяжных. Однако улик хватает, чтобы посадить обоих арестованных на два года за кражу автомобиля, использованного для бегства с места преступления. Главный следователь делает следующее предложение каждому из арестованных: если ты сознаешься в ограблении и сдашь подельницу, причем она не сознается, то ты свободен, а она получит десять лет. А если вы оба сознаетесь, то получите по пять лет каждый. Ну, а если никто из вас не сознается, вы получите по два года за кражу машины».
Из этого описания игры понятно, что если первый арестованный рационально обдумает ситуацию – то есть попытается понять, какой вариант минимизирует их срок заключения – то их мыслительный процесс может выражаться таким образом:
» Если второй человек молчит, то я должен его сдать. Это простой выбор между свободой и двумя годами тюрьмы.
» Если второй сознается и сдает меня, то я, опять же, должен сдать его. Это простой выбор между десятью и пятью годами тюрьмы.
Рационально рассуждая, становится ясно, что единственный выход для каждого подозреваемого – сдать другого. Что бы ни делал второй, это гарантирует наилучший исход.
Похожий анализ применим ко множеству всяких ситуаций, в том числе к эволюции языка, юриспруденции и многим другим концепциям. Это мощный инструмент с массой возможностей для применения в современном мире.
Раз уж мы упомянули интервью Линуса Торвальдса для BBC, давайте с него и начнем. Линус сказал: «...открытый код реально работает только тогда, когда им занимаются по своим эгоистическим причинам... в целом собственность по GPLv2 являет собой очень простую модель “ты – мне, я – тебе”: я вам отдам свои улучшения, если вы пообещаете отдать свои».
В наблюдении Торвальдса интересно то, что оно связано с дискуссиями в области философии, этики, биологии, психологии и даже математики, и уходит корнями аж в сочинения Платона (как минимум!). В своем диалоге «Государство» Платон обсуждает правосудие и мораль, и размышляет о том, являются ли они по своему происхождению социальными структурами или неким абстрактным благом.
Рассуждая таким образом, Главкон, один из героев диалога, предлагает идею волшебного перстня, которое делает того, кто его носит, невидимым. Он предполагает, что и законопослушный, и незаконопослушный владелец такого кольца будут вести себя одинаково: брать что-то на рынке, проникать в дома и «возлечь» с приглянувшимся человеком или убить своего врага. Он говорит: «Если человек, овладевший такою властью, не пожелает когда-либо поступить несправедливо и не притронется к чужому имуществу, он всем, кто это заметит, покажется в высшей степени жалким и неразумным», поскольку «несправедливость гораздо более выгодна, чем справедливость» [цит. по: Платон, собр. соч. в 4-х т., изд-во «Мысль», 1994, – прим. ред.].
Какой пессимистичный взгляд на людей! Согласны вы с Главконом или нет, очевидно, что это точка зрения Линуса: без социальных ограничений вроде GPLv2 я не смогу быть уверен в том, что, поделившись с вами своими улучшениями кода, я, в свою очередь, получу от вас ваши. Зачем вам это делать? В конце концов, если у вас будет мой код, и вы продолжите улучшать свой, вы получите передо мной преимущество – вам удастся делать меньше работы, но при этом иметь лучший результат – а люди эгоистичны!
Похоже, даже Платон как минимум подозревал, так же, как и Торвальдс, что мир вряд ли изменится, если кто-то скажет: «Давайте все дружно споем “Кумбайя”, собравшись вокруг костра, и сделаем этот мир лучше».
[править] «Зайцы» и безопасность
Брюс Шнайер [Bruce Schneier] обращается к той же проблеме в своей последней книге «Лжецы и посторонние», что доказывает актуальность этого спора для мира технологии, как изнутри, так и за его пределами.
В книге он описывает игру «Ястребы и голуби», из теории игр. Суть ее в том, что в дикой популяции, где пищевые ресурсы ограничены и все стремятся получить к ним доступ, птицы делятся на голубей и ястребов. Ястребы агрессивны и готовы драться за еду: если встретятся два ястреба, они будут драться, и в результате один получит пищу, а другой – раны; возможно, смертельные. Голуби пассивны, и встречаясь около еды, они стараются поделиться между собой. Если голубь встретит ястреба, то ястреб совершенно точно получит пищу, потому что голубь предпочтет уступить.
Хотя из этой игры можно сделать множество выводов, самое важное наблюдение, сделанное Шнайером, заключается в том, что при любом сценарии в выборке всегда будет по меньшей мере несколько ястребов. Если бы изначально население на 100 % состояло из голубей, некоторые из них мигом смекнули бы, что они получат для себя больше пищи, если поведут себя, как ястребы, очень мало при этом рискуя нарваться на других ястребов, поскольку голубей большинство.
Конечно, по мере роста популяции ястребов наступит момент, когда это начнет оказывать дурные последствия на всю популяцию. Голуби начнут страдать от недостатка пищи и вымирать, уступая в конфликтах за еду, а ястребы начнут сталкиваться друг с другом чаще, и для них тоже возрастет риск гибели в результате этих стычек.
Ладно, довольно о ястребах и голубях. Какое отношение они имеют к свободному ПО и GPL? Ну, вывод здесь такой: не позволь нам GPL «быть эгоистами», по словам Торвальдса, мы оказались бы в такой ситуации, когда чересчур много ястребов хватали бы код, ничего не возвращая взамен и постепенно уменьшая доверие и сотрудничество, и в итоге популяция программистов открытого кода вымерла бы.
В остальной части книги Шнайер предлагает различные «механизмы безопасности», способные помочь нам доверять действиям других людей, создавая возможность сотрудничества даже в том случае, если мы не можем доверять (эгоистичным) мотивам других.
Шнайер указывает на такие вещи, как закон, эволюция зеркальных нейронов, и т. д., и GPL тоже можно понимать в этом смысле, т. е. как механизм безопасности, созданный для обеспечения доверия и сотрудничества. И еще он очень разумен.
[править] Свободное ПО и экономика
Помимо того, что это просто интересное тематическое исследование для всех, кто заинтересован в сотрудничестве, свободное ПО привлекает пристальное внимание из-за своего сходства с различными экономическими системами.
Хорошим примером будет Билл Гейтс, который в 2005 году сказал: «В наши дни завелся особый вид коммунистов, которые под разными предлогами хотят отменить поощрение для... разработчиков программ».
Конечно, есть вероятность, что Гейтса куда меньше интересовал этот вопрос с экономической точки зрения, и он куда больше был озабочен тем, чтобы отпугнуть испытывающие любовь к свободному рынку капиталистические американские фирмы от применения свободного ПО; это замечание всплывает настолько часто, что на него стоит обратить внимание.
Во-первых, стоит отметить, что свободное ПО имеет мало общего с советским коммунизмом, ключевыми понятиями в котором было централизованное планирование и огромное полицейское государство с исправительными лагерями и принудительным трудом. Те, кто давно знаком со свободным ПО, знают, что централизованное планирование – вещь редкая, если вообще возможная: рост количества форматов пакетов, дистрибутивов, офисных пакетов, сред рабочего стола, сетевых и почтовых серверов – достаточное тому свидетельство. Более того, никого не принуждают работать над свободным ПО или применять его. Фактически, поскольку все наши форматы данных реализованы в открытом коде, любой может заново реализовать их в конкурирующей программе, и глазом не моргнув.
Многие выдвигали эти аргументы, чтобы доказать – к немалому огорчению Гейтса, как нам представляется – что свободное ПО имеет с советским коммунизмом меньше общего, чем многие проприетарные компании. Такие компании, как Apple и Microsoft, известны своим планированием сверху вниз, и их даже хвалят за него; они также печально известны тем, что вынуждают людей использовать их пакеты программ и оборудования посредством применения по умолчанию закрытых проприетарных форматов данных, которые конкурирующие программы не могут нормально реализовать.
[править] Марксизм
Если у свободного ПО мало общего с советским коммунизмом, возможно, у него больше общего с марксизмом. Одна из основных идей этого мировоззрения – та, что, владея средствами производства, будь то оборудование, знания или нечто другое, высшие классы эксплуатируют низшие; не владея средствами производства, рабочие обязаны «добровольно» работать за зарплату, чтобы быть в состоянии купить все необходимое для выживания: жилье, одежду, еду и развлечения.
На деле они не могут выбирать, работать им или нет, и у них никогда не будет излишков зарплаты или доли в распределении прибыли. Одна из самых живучих идей Маркса заключалась в его надежде на то, что эта ситуация может измениться, если рабочие получат свободу, в бесклассовом обществе с совместной собственностью на средства производства.
Поскольку в современном мире одним из главных средств производства является компьютер, свободное ПО очень неплохо вписывается в систему Маркса. Код находится в совместной собственности. Все могут свободно читать его, изучать его, делиться им и, в конце концов, перекомпилировать его. В таком виде невозможно принуждение рабочих теми, кто располагается в классовой системе выше, поскольку в любой момент они могут принять решение использовать средство производства, код, для собственных нужд.
[править] Свобода мысли
Эбен Моглен оспорил пагубность воздействия, оказываемого совместной собственностью на код, на наше общество в своем вступительном выступлении на Wizards of OS 3 под названием «Мысли свободны: свободное ПО и борьба за свободу мысли».
Он заявил, что «защищать невежество значит защищать рабство» (он отлично умеет находить нужные слова!). Его идея заключается в том, что без знания экономики, без знания технических наук, культуры – всего того, что движет этот мир – низшие классы не имеют ни малейшей надежды на улучшение своего положения и ни малейшей надежды получить в собственность средства производства. Заслуга свободного ПО – как и свободного оборудования, свободной культуры и всех свобод – в высвобождении средств, благодаря которым свобода мысли и информации оказалась доступна, если не сказать, достигнута. Web-серверы не предназначены только для владельцев средств производства, потому что код является свободным, и любой может при желании поделиться любым культурным достижением.
Может быть, это только слова, а может быть, и средство создания всемирной децентрализованной валюты, подобной Bitcoin, или планы использования машин для создания вашего собственного небольшого городка, как в Global Village Construction Set [платформа для создания сельскохозяйственных машин с открытым кодом, – прим. пер.]. И важно то, что все это стало возможным благодаря общей собственности на код.
[править] Стихийный порядок
Свободное ПО, пожалуй, действительно поддержал бы Маркс, но вы будете удивлены, узнав, что можно очень солидно обосновать возможность для него стать моделью свободного рынка, столь милого сердцу капиталиста и столь ненавистного марксистам и противникам глобализации по всему миру. Ну, пусть не свободного рынка, но по крайней мере одной из его основных идей – стихийного регулирования.
Одна из основных идей свободного рынка заключается в том, что, словно повинуясь невидимой руке, колебания цен координируют усилия отдельно взятых лиц на благо общества. Эта идея очень похожа на идеи Адама Смита [Adam Smith] и Фридриха фон Хайека [Friedrich von Hayek], использовавших термин «стихийный порядок» для ее описания, но на самом деле она берет начало у Дэвида Хьюма [David Hume], одного из величайших философов шотландского просвещения.
Хьюм полагал, что при отсутствии центрального управления организовывать жизнь общества и урегулировать и минимизировать конфликты начинают привычки и традиции. Однако, в отличие от Смита и Хайека, Хьюм полагал, что людские страсти не исчерпываются жаждой прибыли, и порядок и привычки могут появиться из любви к иным вещам.
Какое отношение это имеет к свободному ПО? Ну, это же очевидно, правда? Свободное ПО – пример стихийного порядка в том виде, как его понимал Хьюм. Поскольку оно не приносит прибыли его разработчикам и распространяется бесплатно, в нем отсутствуют ценовые колебания; в сообществах свободного ПО люди свободно сотрудничают и общаются для создания ПО, которое общество в целом считает ценным.
Однако имеются определенные сигналы, оказывающие влияние на выбор того, над чем будут работать создатели проекта. Например, если пользователи некой программы найдут лучший эквивалент, они, очевидно, перейдут на него. Разработчики, не желая работать над никому не нужной программой, с тем же успехом могут поискать новые проекты, которые люди сочтут полезными.
Таким образом, даже без ценовых сигналов разработчики свободного ПО направляют свои усилия в области, приносящие наибольшую пользу наибольшему числу людей, что и будет большим благом для общества в целом. |
[править] Свободное ПО или открытый код?
Одним из классических споров внутри и вокруг мира свободного ПО и ПО с открытым кодом является вопрос о том, как же его называть. Некоторые говорят исключительно «свободное ПО», некоторые – исключительно «открытый код», некоторые используют то одно, то другое название, а есть и группа, которая выдвигает странные выражения, сочетающие и то, и другое одновременно, например free/libre open source software (FLOSS).
Те, кто глубоко вовлечен в движение свободного ПО, определенно считают, что название важно, и пишут целые сочинения на данную тему; то же самое можно сказать и об активистах движения открытого кода, поскольку они нашли время, чтобы предложить новое название и описание, с целью дистанцироваться от движения свободного ПО. Но так ли это важно на самом деле?
После этой статьи мы полагаем, что название важно. Как стало понятно после рассмотрения множества тем, которые мы применяли в той или иной степени к свободному ПО и ПО с открытым кодом, философию и политику можно применить к чему угодно, и люди увидят в этом то, что им захочется. Без ясного и понятного названия, которое будет выражать то, что, по нашему убеждению, мы делаем, кто-то сможет интерпретировать наши действия и работу в ином свете, нежели мы изначально предполагали.
[править] Что еще почитать
Многие тезисы этой статьи являют собой только наброски, предоставляя лишь весьма общее описание весьма сложных и тонких идей.
В результате было бы неплохо почитать об этих идеях поподробнее. Чтобы помочь вам в этом, предлагаем несколько указателей на ресурсы, которые помогли в написании этой статьи и могут стать первым шагом в изучении темы.
» Янис Варуфакис [Yanis Varoufakis], экономист компании Valve’s (игровая компания), написал превосходный материал о стихийном порядке на своем рабочем месте: http://blogs.valvesoftware.com/economics/why-valve-or-what-do-we-need-corporations-for-and-how-does-valves-management-structure-fit-into-todays-corporate-world
» Брюс Шнайер, «Лжецы и посторонние [Liars and Outliers]» – захватывающая книга и прекрасный стартовый пункт для знакомства с теорией игр и эволюционной этикой.
» Персональная страница Эбена Моглена дает ссылки на его выступления и презентации на тему СПО; многие из них опираются на марксистскую теорию. htpp://moglen.law.columbia.edu
» Платон, «Республика». Полная бесплатная версия работы Платона доступна на MIT http://classics.mit.edu/Plato/republic.html [или http://www.lib.rus.ec/s/32877, – прим. ред.]
» Стенфордская эциклопедия философии [Stanford’s Encyclopedia of Philosophy] предоставляет отличные ознакомительные статьи (достаточно подробные) по множеству упомянутых и других тем. http://plato.stanford.edu