12.05.2006

Тезисы о свободном софте

image

Данная статья не является догмой, а скорее, рекомендациями - уточнениями написанными на основе общения и переписки с различными участниками сообщества, как с «сомневающимися» так и с довольно опытными пользователями-аналитиками и разработчиками.

Данная статья не является догмой, а скорее, рекомендациями - уточнениями написанными на основе общения и переписки с различными участниками сообщества, как с «сомневающимися» так и с довольно опытными пользователями-аналитиками и разработчиками. В результате чего, к моему изумлению, были обнаружены огромные пробелы и непонимание всех тонкостей и прелестей мира свободного программного обеспечения. Я попытаюсь развеять некоторые, наиболее часто встречающиеся мифы, отпугивающие многих потенциальных членов сообщества и предостеречь от типичных ошибок и неверных толкований идеологии «Free Software». За основу, для моих доводов была взята лицензия GNU GPL, как самая распространенная в мире свободного ПО.

Свободное ПО – религия, а члены его сообщества – фанатики.

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

В своё время, ныне известного учёного, Галилея, тоже считали фанатиком за то, что он излагал, как теперь оказалось, очевидные вещи, и даже поплатился за это жизнью. В разное время человечество сталкивалось с различными проявлениями фанатизма – инквизиция в христианстве, репрессии в коммунизме, нацизм, фашизм и т.д. и т.п. Человек, в котором нетерпимость дошла до фанатизма, всюду видит измену, предательство, нарушение верности единому, он подозрителен и мнителен, всюду открывает заговоры против своих меркантильных интересов и жажды власти. В фанатизме всегда преобладает направленность к принудительному единству, к обязательной для всех ортодоксии, к порядку, подавляющему свободу.

Сейчас мы наблюдаем ту же картину; разработчики проприетарного (т.е. закрытого, с различными ограничениями) ПО ревностно прячут от нас исходные коды, всячески ограничивают доступ серийными номерами и паролями, устанавливают различные степени защиты от копирования, тем самым лишая человека естественной потребности – обмениваться и пользоваться информацией. Про патенты и прочее бюрократическое зло я вообще молчу (колесо уже объявили интеллектуальной собственностью, как это до сих пор не запатентовали возможность дышать?). И кто же после этого по-Вашему фанатик? Или что, по Вашему, фанатичного в золотом правиле Ричарда Столлмена «Если мне нравится программа, то я должен поделиться ей с другими, кому она тоже нравится»?

Свободное ПО должно распространяться только бесплатно, продавать его нельзя.

Действительно, было бы неплохо, особенно пользователям, получать программы бесплатно, но, к сожалению, это вовсе не так. Как правило, выясняется, что те, кто так утверждает, путают понятия «Free Software» - свободное программное обеспечение и «Freeware» - бесплатное программное обеспечение, которое к свободному не имеет никакого отношения, т.к. не предоставляются исходные коды, а значит пользователь лишается свободы изучать и адаптировать программу к своим нуждам, улучшать её и публиковать улучшения, поэтому и нет никаких гарантий, что оно в дальнейшем останется бесплатным, для общества от таких программ очень мало пользы.

Разработчику свободного ПО предоставлен выбор – либо распространять программы бесплатно, по альтруистическим убеждениям, либо продавать за «любую разумную, по его мнению, цену», и в этом одна из прелестей свободы.

Мало того, идеология «Free Software» поощряет продажу свободного ПО; распространяя программы за деньги, разработчики получают финансирование для развития своих проектов, а дистрибьюторы имеют дополнительную возможность поддержать своих разработчиков, за счёт полученной прибыли.

Модель свободного ПО экономически не выгодна.

Как правило, данное утверждение вытекает из предыдущего; что свободное ПО можно распространять за деньги, мы уже определились, осталось выяснить, стоит ли в него вкладывать деньги. Модель свободного ПО ничем не отличается от любой другой модели; свободные программы обладают такими же свойствами, как проприетарные (и даже более) и, как любая другая продукция, являются объектом авторского права. Эффективность любой экономической модели напрямую зависит от его потребности, а значит необходимы анализ рынка сбыта и изучение потребительского спроса.

К счастью, такие исследования уже проводились и продолжают проводиться, поэтому, ведущие разработчики компьютерной индустрии, такие как IBM, Intel, Sun, Novell, Red Hat, Google и многие-многие другие, поддерживают свободное ПО, участвуют в его разработке и активно используют в своих инфраструктурах. За последние годы, из систем для разработчиков-энтузиастов, решения на основе свободного программного обеспечения, превратились в надёжную и популярную платформу для бизнеса. Именно экономическая эффективность, позволяет этим решениям предоставлять инструменты, необходимые бизнесу для быстрой адаптации к постоянно меняющимся рыночным условиям и требованиям заказчиков.

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

Термин «Свободное ПО» (Free Software) устарел, сейчас используется «ПО с открытыми исходными кодами» (Open Source).


Чтобы понять, какой термин и что обозначает, необходимо обратиться к корням их появления.

История «свободного ПО» начинается с Ричарда Столлмана; именно он впервые употребил термин «free software» и чётко объяснил его значение в 1983 году, когда начал проект GNU по созданию полноценной свободной операционной системы . Однако он не считал, что создаёт некую принципиально новую концепцию. До конца 70-х годов значительная часть программного обеспечения разрабатывалась в научных учреждениях — университетах. Университетские традиции редко поощряли сокрытие информации друг от друга. Поэтому программы передавались и модифицировались свободно.
История «Open Source» начинается в 1997 году, когда проект Debian утвердил Социальный Договор Debian, в состав которого входил Debian Free Software Guidelines – набор условий для включения программ в состав дистрибутива. Позже, в апреле 1998 года, участники саммита Freeware Summit 98 отделились от идеологии Свободного ПО и договорились о создании маркетинговой программы для открытого программного обеспечения Open Source Initiative (OSI). Основу своего положения передрали из Debian Free Software Guidelines, тогда же и родился термин «Open Source», потому что понятие «Free Software» посчиталось слишком «неоднозначным», из-за двусмысленного слова «free» в англ. языке, чтобы использовать новый термин в бизнесе, хотя сущность, якобы, осталась прежней.

С лёгкой руки Эрика Реймонда, OSI предложили отличную методологию разработки программного обеспечения в короткие сроки; каждый желающий мог присоединиться к новому проекту, поэтому для выполнения задач быстро формировалась команда разработчиков. И эта модель, на зависть многим корпорациям, отлично работает, используя Интернет как инструмент. Но это, пожалуй, единственное достижение OSI перед сообществом.

«Однозначный» термин, на самом деле внёс ещё большую путаницу; помимо общепринятого понятия «Free Software» и, собственно самого «Open Source», появились сторонники движений «Free/Open Source Software» и «Free/Libre Open Source Software» и т.д., которые постоянно но безуспешно пытаются ещё более точно выразить то, что было сформулированно более 20-ти лет назад ("free is like freedom, not free beer").

Одной из главной задач движения свободного ПО было свести все лицензии к минимуму и сконцентрировать разработчиков вокруг одной-двух лицензий, в то время как OSI породило целую «лавину» новых лицензий; на данный момент насчитывается 58 лицензий и эта цифра продолжает расти! И для чего например, у одной компании существуют, практически равноправные лицензии типа Sun Industry Standards Source License и Sun Public License, если определение «Open Source» такое простое и понятное? Причём многие лицензии не являются свободными: Apple Public Source License, Reciprocal Public License, Lucent Public License (Plan9), Sun Community Source License, Open Public License, и т.д. никаких свобод, кроме, в основном, доступа к исходным кодам не предлагают, а значит бесполезны для конечного пользователя. И это неудивительно, несколько крупных спонсоров, например OSDL, являются сторонниками патентов и проприетарного ПО, которые могут и влияют на OSI. И я не удивлюсь, если скоро в составе их лицензий появятся Microsoft's Shared Source CLI, C#, и Jscript License – тоже ведь предоставляют доступ к исходным кодам.

Далее не буду повторяться а просто отправлю Вас к статье Ричарда Столлмена Почему термин «Free Software» лучше, чем «Open Source».

Как сказал Давид Уилер из OSI "Те, кто использует термин «Open Source» хотят подчеркнуть технические преимущества такого ПО (например, большую надежность и безопасность), тогда как те, кто использует термин «Free Software», хотят подчеркнуть независимость от контроля со стороны третьих лиц за использованием ПО". Модели «Open Source» и «Free Software» используют два различных метода для достижения схожих целей в разработке программного обеспечения. Различие этих методов лучше всего сформулировать так: «open source» – это методология разработки, «free software» – это социальное общественное движение. Какое из этих понятий использовать – решать Вам, это ещё одна негласная свобода ;).

Свободное ПО является более уязвимым, т.к. предоставляет исходные коды.


В любом программном обеспечении обязательно есть ошибки. Но если эта программа принадлежит проприетарной компании (человеку или организации), то исходные коды недоступны для чтения. Поэтому найденными ошибками могут беспрепятственно пользоваться потенциальные взломщики до тех пор, пока компания-владелец не решит устранить эту уязвимость, тем самым ставя себя и сохранность своих данных в чью-то зависимость, ведь только от владельца зависит когда, где и как исправлять ошибку. Период времени, необходимый для устранения найденной уязвимости зависит от очень многих факторов – разработчики, отвечающие за внесение исправлений, могут посчитать ошибку незначительной или слишком сложной для устранения. Кроме того, внесенные изменения могут оказаться бесполезными, т.к. проблема обычно оказывается более сложной, чем видимая угроза. Доступ к исходным кодам решает эти и многие другие проблемы, например, пользователь, если ему позволяет соответствующая квалификация, может устранить уязвимость самостоятельно.

На самом деле, доступ к исходным кодам, помимо известных свобод, предоставляет авторам проектов возможность привлечь как можно больше потенциальных разработчиков для улучшения своих программ. В мире свободного ПО принято обо всех ошибках сообщать разработчику, а доступность исходников предоставляет возможность присылать исправленные куски кода (Bagfixes). Как сказал В. Лопатин в одном из интервью, «Исходные коды доступны большему количеству разработчиков, а значит, уязвимости устраняются до того, как ими могут воспользоваться потенциальные злоумышленники». Даже среди вирусописателей в свободных системах существует негласный этикет, согласно которому, вначале разработчику сообщается о найденной ошибке, и только после выпуска патча или выхода новой версии запускается злонамеренный код, тем самым стимулируя пользователей обновлять систему, поэтому, в мире свободного ПО вирусы не распространены. В связи с чем, можно сделать вывод, что свободное ПО является менее уязвимым, и практика это подтверждает.

Принцип Copyleft'а на самом деле ограничивает свободу.

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

Принцип Copyleft'а на самом деле защищает ПО авторским правом (copyright'ом), и добавляет условия распространения, служащие юридическим инструментом, дающим каждому право на использование, изменение и повторное распространение кода программы или любой производной программы, но только если условия распространения не изменены. Таким образом, код и эти свободы становятся юридически неразделяемыми. Т.о. "Copyleft" применяет авторское право, что гарантировать свободу пользователя и разработчика (в том числе свободу зарабатывать). Программы не защищённые Copyleft'ом – беззащитны и не имеют никаких гарантий, что третьи лица не закроют код и не присвоят себе авторские и имущественные права, без ведома разработчика.

P.S. Принцип свободы и уважения моральных норм не должен подвергаться сомнению, так как он является фундаментом демократии, который сейчас является основой современного цивилизованного общества. Если не следовать этим принципам, мы деградируем и вынуждены будем сделать шаг назад – в средневековье.

Dumus, координатор Северо-Кавказской Группы Пользователей Linux
www.nclug.ru                                        icq: 980523
Action "Use Free Software" - http://action.nclug.ru

или введите имя

CAPTCHA