01 октября 2004
Обновлено 17.05.2023

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - изображение обложка

Open Source представляет из себя одно из самых спорных явлений IT-индустрии. Противостояние его сторонников и противников является, пожалуй, самой заметной тенденцией в софтовом мире последних лет. И это неудивительно, ведь, как только заходит речь об Open Source, все сразу вспоминают о Microsoft и ее продуктах, на примере которых принято доказывать ущербность и несостоятельность проприетарного софта (т.е. программ с закрытым исходным кодом).

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 1

Sourcefourge.net — сайт, предоставляющий Open Source-разработчикам хостинг для размещения их проектов и весь необходимый инструментарий.
Мода превозносить Open Source и всячески обливать грязью Microsoft и других софтверных гигантов, не желающих открывать исходники своих программ, получила в последнее время широкое распространение, и ей уже подвержены даже те люди, которые сидят в ОС Windows , готовят документы в MS Office , выходят в интернет через Internet Explorer , пользуются почтовым клиентом MS Outlook , рисуют в Adobe Photoshop , отстреливают вирусы “ Антивирусом Касперского ” и вообще слабо представляют себе, что такое открытые исходники. Исходно открытый Open Source (“открытые исходники”) — это метод разработки и лицензирования программ, при котором каждый желающий имеет право на свободное распространение (или продажу) приложения, свободную модификацию (сохраняя в коде информацию об авторах программы), свободную публикацию собственных улучшений и свободный доступ к его исходным кодам (такое определение дает сетевая энциклопедия Wikipedia ). Как ни странно, Open Source-проекты появились раньше, чем проприетарные программы. Точкой отсчета в истории открытых исходников принято считать рождение сети ARPANET ( Advanced Research Projects Agency NETwork , 1968 год), основанной примерно на тех же принципах, что и Open Source. Следующей вехой в истории этого явления стала вторая версия ОС UNIX (это была самая первая многозадачная и многопользовательская операционка), написанная в 1969 году программистом Кеном Томпсоном (Ken Thompson) из Bell Labs , которая стала очень популярной во многом благодаря тому, что ее исходники распространялись свободно. В 1973 году сотрудники агенства DARPA ( Defense Advanced Research Projects Agency ), Боб Кан (Bob Kahn) и Винтон Серф (Vinton Cerf), создают протокол TCP/IP, ставший впоследствии одним из краеугольных камней сети Интернет. Чуть позже, в 1979 г., университет Беркли (Калифорния) выпускает BSD UNIX (Berkeley Software Distributions), созданную в качестве ответа на инициативу компании АТ &T перевести UNIX на платную основу. Корпорации DEC ( Digital Equipment Corporation ) и Sun объявляют о начале коммерческого распространения BSD UNIX, но вскоре AT&T и Sun договариваются об объединении своих версий UNIX, способствовав тем самым созданию Open Software Foundation. Сейчас на UNIX работает подавляющее большинство почтовых серверов интернета.

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 2

Кен Томпсон
В 80-х годах наступил перелом. Проприетарные программы перехватили инициативу у Open Source-проектов и заняли доминирующее положение на рынке. Появление в 1984 проекта GNU (это акроним от “ GNU’s Not Unix ”, произносится как “ guh-NEW ”), у истоков которого стоял один из самых ярых сторонников Open Source — Ричард Столлмен — и который должен был способствовать распространению бесплатных программ с открытыми исходными кодами (этот способ распространения окрестили GPLGeneral Public License ), не смог кардинально изменить ситуацию. Гораздо большее значение имел выход в начале 90-х первого работоспособного дистрибутива операционной системы Linux (за авторством финна Линус Торвальдса), которой прочили (и прочат до сих пор) быструю победу над Windows. Увы, Linux не смог одолеть операционки от Microsoft, даже несмотря на то, что в его разработке приняло огромное количество людей — около 40 тысяч человек. Недружелюбие к пользователю, отсутствие поддержки сторонних разработчиков (много вы знаете игр под Linux?) и целый ряд других факторов не позволили этой ОС получить признание среди обычных пользователей, хотя в сфере серверного ПО “пингвины” сумели отхватить большой кусок пирога. Впрочем, в ближайшем будущем все еще может измениться: в последнее время все большее число стран высказываются за массовое внедрение Open Source-программ в госсекторе наравне с продуктами Microsoft (на эту компанию мы постоянно ссылаемся потому, что именно она заказывает музыку на софтовом рынке). Объясняется это не только финансовыми причинами (ибо программы редмондовцев порой обходятся даже дешевле приложений с открытыми исходниками): многие страны просто не хотят зависеть от Microsoft, продукты и форматы которой проникли буквально повсюду. Программы по внедрению открытого ПО начаты в Великобритании, Франции, Норвегии, Италии, Дании, Индии, Финляндии, Швеции, Таиланде, Малайзии, Вьетнаме, Японии, Южной Корее, Бразилии, Венесуэле (в последних двух этот процесс идет особенно активно) и многих других государствах. В Китае вообще планируют разработать свою собственную версию Linux и сделать ее на своей территории стандартом. Microsoft, тем не менее, не унывает, действуя своим излюбленным способом: покупает на корню всех и вся либо занимается откровенным демпингом. В 2002 г. корпорация планировала начать крупномасштабные поставки компьютерной техники и софта на общую сумму $1 млрд. (прописью: один миллиард ) долларов, доведя тем самым до истерики Стива Джобса, главу компании Apple , которая всегда была основным поставщиком ПО для американской системы образования. Сделка сорвалась, поскольку на дыбы встали все антимонопольные органы США. Тогда Microsoft заключила соглашение с правительством ЮАР о бесплатных поставках программного обеспечения в 32 тысячи школ этой страны. Такая щедрость легко объяснима: рынки Азии и Африки таят в себе большой потенциал, поэтому в данный момент Microsoft уделяет им приоритетное внимание. Так, относительно недавно корпорация сообщила о том, что выпустит сентябре в Малайзии и Таиланде специальную версию своей ОС (названную Windows XP Starter Edition ) по сверхнизкой цене — всего $36. На Китай, который, как я уже говорил выше, облизывается на Linux, это распространяться не будет — по словам Билла Гейтса, который недавно совершил турне по некоторым странам Азиатско-Тихоокеанского региона, на рынке Поднебесной хватит места и Windows, и Open Source-проектам. Несколькими днями позже, будучи в Малайзии, Билл отметился другим, еще более громким заявлением. По его мнению, открытые исходники не только “ не гарантируют совместимость и препятствуют интеграции ”, но являются угрозой всей для IT-индустрии. Говоря об опасности открытых программ, Microsoft в то же время делает прямо противоположное — открывает… исходный код своих программ. Речь, конечно, идет об открытии кода только ограниченному кругу лиц (сторонним разработчикам, госструктурам и экспертам в этой области), но сам факт не может не удивлять. Гениальный ход — бить врага (т.е. движение Open Source) его же оружием. Pro Как видите, разработчики проприетарного программного обеспечения достаточно серьезно воспринимают угрозу со стороны Open Source и не сидят сложа руки. Да, Open Source породил такие известные проекты, как браузер Mozilla , web-сервер Apache , язык программирования Perl , технологию PHP , но является ли он панацеей от всех бед, как об этом твердят его ортодоксальные поклонники? Почему о тотальном переходе на Open Source в последнее время говорят все чаще и чаще? Что это — мода или свидетельство того, что это движение набирает силу? Каковы плюсы и минусы приложений с открытыми исходниками? Преимущества этих программ очевидны, и о них мы уже говорили выше: это, прежде всего, — свобода распространения, свобода модификации кода, свобода публикации собственных улучшений, отсутствие затрат на приобретение лицензий и наличие большого огромного количества дополнительных модулей

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 3

Марк Андриссен
(довольно часто — бесплатных). Open Source позволяет участвовать в разработке программ большому количеству людей. Любые ошибки и недочеты, будучи обнаруженными, исправляются очень быстро — в отличие от мира проприетарного софта. Достаточно вспомнить недавнюю историю с уязвимостью в Internet Explorer, о которой в Microsoft знали еще осенью прошлого года, но устранили ее только в июле — только после того, как этой “дырой” начали пользоваться хакеры и распространять через нее троян Padodor. А меньше чем через две недели появилась информация об обнаружении еще четырех, не менее серьезных, уязвимостей. Заплаток для их устранения нет до сих пор (на момент написания статьи). Неописуемая оперативность, правда? Будь это Open Source-проект, апдейт выпустили бы в рекордные сроки. Марк Андриссен, основатель Netscape Communications и вообще весьма известная в софтовом мире личность, озвучил в начале этого года на конференции Open Source in Government ряд причин, которые, по его мнению, приведут к победе Open Source уже в ближайшем будущем. Далеко не со всеми его аргументами можно согласиться, но ознакомиться с ними стоит: 1) интернет основан на открытых исходниках; 2) открытые исходники распространяются именно через интернет; 3) создание программ, основанных на Open Source, было бы невозможно без интернета; 4) софт, основанный на Open Source, лучше защищен, чем закрытое программное обеспечение; 5) Open Source — это позиция на плечах гигантов (по аналогии с известным изречением Ньютона; имеется в виду, что открытое ПО основано на уже существующих наработках); 6) Open Source подпитываются за счет антиамериканских настроений (крупнейшие софтовые компании сконцентрированы в США, поэтому во многих азиатских странах продукцию той же Microsoft отвергают по идеологическим причинам); 7) бесплатная Linux, чьи исходные коды открыты, ничуть не хуже, чем дорогое серверное ПО; 8) благодаря Open Source можно сократить расходы на перенос многих программ на все типы компьютеров; 9) идеологической основой Open Source служит уважение к чужим достижениям; 10) за счет Open Source увеличивается число фирм, разрабатывающих софт, даже если это не является основным направлением их деятельности; 11) все больше компаний начинают поддерживать Linux. Contra Минусы Open Source куда менее очевидны, чем плюсы, да и упоминают о них намного реже. Посему поговорим о них подробнее.

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 4

Проект Xbox-Linux, предназначенный для установки на консоль Microsoft Xbox. Обратите внимание на то, что авторы постоянно подчеркивают слово “ваш”…
В сознании обывателя давно сформировался предрассудок о том, что проприетарный софт есть несомненное зло, с которым надо бороться любыми способами (вспомните хотя бы, сколько существует анекдотов про Windows), а Open Source выставляется как единственный путь к всеобщему благоденствию. При этом подавляющее большинство таких грамотеев в глаза не видели крупных Open Source-проектов (речь, разумеется, идет о Linux, OpenOffice и им подобных; мелкие программы прикладного характера не в счет) и вообще весьма смутно представляют, что это такое. А между тем, в малораспространенности открытого софта виноваты прежде всего не злобные софтверные гиганты, старающиеся всячески задушить это движение, а сами разработчики Open Source. В марте этого года в онлайновом журнале First Monday была опубликована статья Мишель Левеск, канадской исследовательницы информационных технологий Университета Торонто, которая выделила ряд факторов, препятствующих широкому распространению крупных проектов с открытыми исходниками. Первый фактор, выделяемый Мишель, — пренебрежительное отношение разработчиков к интерфейсу. Авторы Open Source-программ пишут их в первую очередь для себя и для других специалистов, им неведомы мучения обычных пользователей, которые “не в теме” (особенно если приложение распространяется бесплатно). Софтверные компании не могут позволить себе такого, поскольку их продукты рассчитаны на массового пользователя и, хоть плачь, должны иметь максимально удобный и интуитивный интерфейс. Вторая проблема приложений с открытыми исходниками — неграмотно составленная или очень краткая документация (а то и вообще — отсутствие таковой). Корни этой проблемы следует искать в том же самом месте, что и в случае с предыдущим фактором, — программисты, создающие Open Source-проекты, плохо представляют себе, чем живут рядовые пользователи, для них главное то, что программа работает, а все остальное — дело десятое. Отсюда проистекает третья проблема — чрезмерный акцент на функциональность программы в ущерб всему остальному. Но больше всего Open Source вредит четвертый фактор: принципиальное нежелание многих разработчиков перенимать опыт коллег, работающих над проприетарными программами. Аргументация презабавная: “Они плохие, потому что они

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 5

Браузер Mozilla, один из самых известных Open Source-проектов.
плохие!”. Любопытно было бы поинтересоваться у этих людей, почему программы с закрытым кодом по-прежнему удерживают ключевые позиции среди desktop-пользователей. Есть и другие факторы, о которых Мишель не упомянула. Во-первых, все защитники открытых исходников почему-то постоянно забывают о том, что большое количество людей, работающих над Open Source-программой, еще не есть гарантия ее качества. Самый яркий пример — Linux, в разработке которого, как я уже говорил выше, участвовало 40 тысяч человек. И где, спрашивается, результат? Да, эта ОС имеет сильные позиции в сфере серверного ПО, но для рядовых пользователей она как была, так и осталась “вещью в себе”, непонятной и недружелюбной программой. Создать по-настоящему конкурентоспособную операционную систему или пакет офисных приложений можно лишь при наличии единого руководства, четкого плана, большого бюджета (исчисляемого десятками миллионов долларов) и грамотной маркетинговой политики — чего у большинства разработчиков программ с открытыми исходниками никогда не было и нет. Во-вторых, считается, что закрытое ПО защищено намного хуже, чем Open Source-программы. В качестве примера обычно приводят Windows, уязвимости в которой обнаруживают едва ли не ежедневно, и Linux, “дыры” в котором действительно находят намного реже. Убедительный, казалось бы, аргумент. Но Юджин Спаффорд (Eugene Spafford), крупный специалист в области безопасности и защищенности операционных систем, считает иначе. По его мнению, Linux не менее уязвима, чем Windows, а столь частое обнаружение “дыр” в последней объясняется лишь ее популярностью. “Дыры” ищут целенаправленно, ведь для многих специалистов по безопасности обнаружение очередной уязвимости — это шанс заявить о себе (а какой резон искать “дыры” в “пингвинах”?). Linux тоже далеко небезупречен (подтверждением этого является частый выход патчей для него), и будь он столь же распространен, как и Windows, в нем бы находили ничуть не меньшее количество “дыр”.

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 6

Юджин Спаффорд
Глючность и обилие ошибок в продуктах Microsoft объясняются вовсе не криворукостью ее программистов, а отсутствием стимула что-то улучшать. Долгое время у ее программ не было по-настоящему серьезных конкурентов, и лишь усилие позиций Linux в последние годы заставило редмондовцев зашевелиться. А конкуренты вместо того, чтобы наконец взяться за ум и выдать нечто действительно стоящее, инициируют бесконечные судебные процессы. Кроме того, будь Windows, MS Office и другие программы этой компании изначально столь некачественными продуктами, как их малюют, Microsoft никогда бы не стала тем, чем она является сейчас, и ей не помогли бы никакие маркетинговые ухищрения. “ Посмотрите, пиратских версий Windows в мире намного больше, чем всех Open Source-программ вместе взятых. А все потому, что наши программы намного лучше и удобнее открытого софта ”, — сказал недавно Билл Гейтс. Кто-нибудь хочет поспорить? Третье заблуждение заключается в непонимании многими людьми разницы между freeware и Open Source. Между словосочетаниями “открытый софт” и “всегда бесплатно” так часто ставят знак равенства, что порой и сам начинаешь сомневаться — а вдруг это действительно так? Такая точка зрения действительно имеет право на существование, если придерживаться той трактовки понятия Open Source, которую дают апологеты движения GNU. Но на самом деле одно вовсе не подразумевает другое: тот же Linux, например, вполне успешно продается RedHat , Debian и другими компаниями. На разработку серьезного софта требуются серьезные деньги (расходы на оборудование, софтверные, оплата труда программистов и т.д.), а прогнозы тех, кто возвещает скорое пришествие эры freeware, следует воспринимать не просто скептически — их надо поднимать на смех. Кстати, если Microsoft (надо отдать ей должное) хоть как-то, но совершенствует Windows, постоянно изобретая что-то новое и тратя на это большие деньги (вспомните-ка, сколько денег она направила на одно только распространение Service Pack 2 для Windows XP), то некоторые Open Source-разработчики (не будем показывать пальцем в сторону RedHat) не стесняются продавать уже готовые наработки Linux-коммьюнити, взимая за это весьма солидные деньги (плату, правда, берут только с тех, кому нужна техническая поддержка, но тем не менее). Еще один распространенный миф — сказки о гораздо более широкой функциональности Open Source-программ. Дескать, любая инновация может внедрена в рекордные сроки. На самом же деле, тем же самым могут похвастаться и проприетарные программы — если, конечно, их авторы позаботились о поддержке плагинов (внешние модули, добавляющие в приложение новые функции). Плагины для тех Internet Explorer или Adobe Photoshop (закрытых, между прочим, программ) выходят постоянно, а все потому, что они распространены намного шире, чем открытые программы. У Open Source-разработчиков же, как ни прискорбно, на реализацию даже самых простейших функций, которые давным-давно есть в проприетарном софте, уходят месяцы, а иногда и годы. К тому же, плагины сами по себе намного безопаснее, ведь они не вносят изменения в исходный код основной программы, тогда как кривой апдейт для Open Source-софта может попросту “убить” приложение. Стоит ли говорить о том, что в апдейт какой-нибудь злоумышленник может запросто встроить троян или шпионскую программу? Не менее странно выглядят и заявления о “бессмертии” Open Source-проектов. Да, действительно, если автор забросил многообещающий проект, его могут поддерживать другие люди, если они забросили — подберут другие, и так до бесконечности. То же самое вполне применимо и к миру проприетарного софта — примеров, когда у одной и той же закрытой программы сменилось несколько владельцев, более чем достаточно. Многие разработчики не хотят открывать исходники своих программ не потому, что они против Open Source, а потому, что они просто боятся воровства. Представьте себе, вы открыли исходники своего проекта, а какой-то умник взял да и использовал твои многолетние наработки в своей программе, причем с закрытыми исходниками. Попробуй потом докажи свою правоту. Взгляд изнутри В анализе перспектив Open Source сторонним наблюдателем по определению должна присутствовать некоторая доля необъективности, поскольку человек, который “не в теме”, может не понимать вещи, которые кажутся очевидными “инсайдерам”. Поэтому мы решили обратиться к одному из российских Open Source-разработчиков, дабы получить взгляд “изнутри”. Встречайте: Роман Иванов , участник проекта WackоWiki ( http://wackowiki.com )

Все об Open Source. Плюсы и минусы программ с открытыми исходными кодами - фото 7

Роман Иванов
“Игромания” ([И.]) : Роман, почему вы решили распространять свои проекты именно на принципах Open Source? Роман Иванов ([Р.И.]) : Во-первых, мой основной открытый проект, WackoWiki, — это своего рода наследник проекта WakkaWiki , который перестал развиваться. Соответственно, лицензию мы просто унаследовали. Во-вторых, если бы программа не была открытой, она бы не завоевала такой популярности — многие веб-студии и даже некоторые наиболее крупные компании рунета используют WackoWiki в качестве среды для ведения своих проектов и накопления знаний. Опять же, зарубежных инсталляций у него не меньше, чем в России, что позволяет налаживать контакты с другими исследователями и разработчиками. [И.]: В чем преимущества Open Source перед закрытым софтом и каковы его недостатки? [Р.И.]: Для меня основное преимуществ открытого софта заключается в том, что я всегда могу подправить его под себя. Вот, скажем, есть замечательный аутлайнер Wikidpad. Но мне не нравятся его шорткаты и его wiki-разметка. Если бы он был открытым, я бы исправил это для себя за 20 минут. А так — жду уже полгода, пока автор сделает его настраиваемым в достаточной мере. Второе важное преимущество — то, что большая часть вот таких адаптаций под себя уже кем-то сделана. Если есть хорошее сообщество, то обменяться этими апдейтами очень легко. На днях в Живом Журнале ( www.livejournal.com ) образовался такой микропроектик — собрать в одном месте все правки и настройки, которые полезно сделать в системе Mantis Bugtracker , чтобы его можно было использовать с куда большим удобством. Третье преимущество в том, что брошенные автором проекты продолжаются другими людьми, если проект был достаточно хорош. См. выше, про происхождение WackoWiki. Недостатки? Прежде всего то, что ресурсоемкие области не могут быть охвачены свободным ПО без крупных инвестиций со стороны корпораций или государств. Например, открытого OCR (ПО для распознавания отсканированных текстов) удовлетворительного качества не существует. Точно так же, как и крупных игровых проектов с открытым кодом. [И.]: Многие считают, что открытый софт защищен намного хуже, чем проприетарный, а значит, и более уязвим. Согласны ли вы с этим мнением? [Р.И.]: Любопытное заявление. Я слышал прямо противоположные вещи. Но неважно. Понимаете, security by obscurity ( попытка добиться безопасности ПО, закрывая исходные коды — прим. авт.) — самый плохой способ обеспечения безопасности. Одна из самых громких историй, доказывающих неправильность этой позиции, — история про секретный “вход” в базу данных Interbase , который оставался незакрытым много лет — до тех пор, пока корпорация Borland/Inprise не решила открыть код проекта. Кто знает, кому было известно про существование этого “входа”? Кто знает, кто им пользовался и какие данные он смог украсть? [И.]: Почему, по вашему мнению, движение за открытые исходники до сих пор проигрывает схватку с разработчиками закрытого софта (например, уже много лет говорят об усилении позиций Linux, но он по-прежнему остается малораспространенным)? [Р.И.]: Это смотря где. На серверах, особенно интернет-серверах (веб, DNS, роутинг и т.п.) открытые ОС имеют очень сильные позиции. Linux и десктоп — тема настолько острая, что я бы лучше воздержался от комментариев. А вообще, нельзя сказать, что открытый софт однозначно проигрывает закрытому. Как и о том, что выигрывает. Надо смотреть на конкретные проекты. Например, невзирая ни на что, доля браузеров на движке Mozilla Gecko постоянно растет ( спорное утверждение — по данным на начало июня доля Internet Explorer составляла 93,9%, в то время как доля Mozilla — всего 2,1%. В прошлом году “ослику” принадлежал чуть больший кусок браузерного “пирога” — 95%, но говорить о сокращении его доли нельзя: причиной таких незначительных колебаний может являться всего лишь погрешность измерений — прим. авт.). Или вот пример: больше половины моих знакомых пользуется Miranda IM вместо закрытой ICQ — и не потому, что “Миранда” открытая, а потому, что она действительно лучше. [И.]: Каковы перспективы Open Source в обозримом будущем? Кто выйдет победителем из противостояния разработчиков проприетарного софта и Open Source? Или они и дальше будут существовать параллельно? [Р.И.]: Да нет никакого противостояния. Есть противостояние между конкретными продуктами. И то далеко не во всех областях. Думаю, в ближайшее время победа одной из двух моделей нам не грозит.
*** * *** Может показаться, что мы выступаем против открытых исходников. Это не так. Open Source — это несомненное благо и усиление позиций данного движения будет лишь подстегивать конкуренцию, способствуя появлению более качественного ПО и ослаблению влияния крупных софтверных корпораций (в первую очередь Microsoft, имеющей свои рычаги буквально повсюду). Важно лишь понимать, что в ближайшем будущем открытые программы усилят свои позиции (прежде всего — за счет стран Азии, где Open Source развивают главным образом в пику Microsoft в частности и Америке вообще) и, возможно, достигнут паритета с проприетарным ПО; но полной и безоговорочной победы Open Source, о которой на каждом углу твердят адепты этого движения, можно даже и не ждать. И это правильно — ведь свои достоинства и у тех, и у других.

Комментарии
Чтобы оставить комментарий,Войдите или Зарегистрируйтесь