Linux и Интернет (1 часть)



В последнее время большинство журналов, газет и on-line-СМИ, так или иначе связанных с компьютерами (и даже не связанных, например «Times», «Playboy» или «Деловой Петербург»), считают своим долгом опубликовать материал про «модную» операционную систему нашего времени — Linux. Отчасти это стремление вызвано именно модой, отчасти — пристрастием к «бунтарской новизне» (в этом свете мода на Linux выглядит почти как культ Че Гевары), но отчасти — и объективными причинами.

Вместо предисловия
Когда редакция журнала «Мир Internet» предложила написать мне статью про Linux, это заставило меня задуматься. Написать, как во всяческих журналах для пользователей, еще одну статью? С рассуждениями об истории Unix, о Линусе Торвальдсе (нужно ли и мне пояснять, что это автор Linux... нет, ничего больше на эту тему я не скажу — читайте другие статьи) и о компании Red Hat? Или пусть это будет еще одна статья для ГТ-менеджера на тему «Почему Linux более [подставить эпитет по вкусу], чем Windows»? Нет, такие идеи меня не привлекли. И тут я задумался о названии журнала. «Мир Internet» позиционирует себя как журнал для пользователей Сети — той самой Сети, которой Linux обязан не только своей феноменально быстро растущей популярностью, но и самим своим существованием. И я решил, что в своей статье я постараюсь осветить все те же популярные вопросы (бесплатность, Linux vs. Windows, история Unix, наконец), но сделаю акцент на их связь с Интернетом. Насколько это получилось — решать вам.

Откуда взялась Linux?
Linux — это операционная система. Фактически, важнейшим фактором, обеспечившим возможность ее появления, явился тот же фактор, который позволил Интернету из экспериментальной академическо-военной сети превратиться в важнейшее средство общения око-локомьпьютерной (и не только) общественности. Это — резкий рост мощности персональных компьютеров, сопровождающийся обвалом цен. О каком Интернете и о какой Unix-подобной системе для персональных компьютеров можно было бы говорить, если бы сейчас, как в далеких 80-х, Mac SE с 4 Мбайт оперативной памяти и жестким диском в 20 Мбайт стоил бы несколько тысяч долларов?
Но с появлением процессоров Intel 386 возникла сравнительно дешевая (на тот момент стоимостью все же скорее одна, чем несколько тысяч долларов) платформа, позволяющая программисту сравнительно легко организовать многозадачность. Тогда-то и стали появляться версии Unix для персональных компьютеров...
Теперь нам необходимо понять, чем же в то время являлась операционная система Unix. Я не буду здесь рассказывать о различных вариантах Unix и о том, как они друг из друга произрастали. Эту информацию вы с легкостью найдете хотя бы в Интернете. Для меня важно то, что существенная доля настоящих компьютеров (а первые Macintosh и 286, не считая всяческих скончавшихся MSX и прочих, таковыми, конечно, не являлись) работала под управлением именно Unix. Итак, Unix была Настоящей Операционной Системой. И именно поэтому идея перенести Unix на PC была совершенно естественной.
К несчастью, крупные фирмы, занимавшиеся разработкой операционных систем, оказались абсолютно не в состоянии предвидеть Революцию. Стремительное распространение PC застало врасплох всех — кроме одной-един-ственной крупной компании. Мы все знаем эту компанию. Перспективы рынка PC пленили воображение тогда еще не столь богатого, но уже амбициозного президента и совладельца компании Microsoft Уильяма Гейтса. Сочетание великолепной интуиции лидера с агрессивной рыночной политикой и «хлопание ушами» конкурентов позволили Microsoft привести мир в то состояние, в котором мы видели его три года назад, — то есть обеспечить безраздельное господство операционной системы от Microsoft — той самой Windows различных сортов.
А что же тем временем происходило с Unix? Упорствующие в своем заблуждении крупные производители пытались не замечать «ненастоящих» PC, делая упор на Большие Машины и на собственную специализированную технику. И мало-помалу уступали свои позиции на рынке. Та же судьба (только с более тяжелыми последствиями — вплоть до полного умирания) постигла разрабатываемые энтузиастами коммерческие версии Unix для PC, например Minix Энди Танненбаума.
Но были еще и некоммерческие, свободно распространяемые версии Unix. В первую очередь нас интересует разработанный Линусом Торвальдсом Linux. Конечно, операционная система, созданная отдельно взятым студентом, ни при каких условиях не смогла бы соперничать с разработкой крупной фирмы. Однако Линус сделал то, что не могли позволить себе разработчики коммерческих операционных систем, — он распространил исходные тексты своей ОС через Интернет и призвал интернет-сообщество (тогда еще очень малочисленное) присоединиться к разработке Linux. Сам Линус как-то сказал, что ему просто повезло — нашлись желающие помочь ему. Не будем ломать голову над тем, прихоть ли это судьбы или закономерный результат, — главное, что Linux начал развиваться силами энтузиастов, взаимодействующих друг с другом через Сеть.
Именно эта поддержка интернет-сообщества позволила Linux в течение нескольких лет... нет, конечно, не вытеснить Microsoft с какой-либо заметной части рынка, но все же превратиться в полноценную операционную систему и остаться «на плаву». А затем все и началось...
Что же происходит в последние год-два? Что явилось причиной головокружительного успеха Linux и выхода этой «широко известной в узких кругах» системы «на публику»?
Я склонен объяснять феномен Linux развитием Интернета. За последние год-два число пользователей Сети резко выросло. Поскольку Интернет служит основным средством распространения Linux, то и количество пользователей Linux растет. Таким образом, превращение Интернета вслед за PC в предмет бытовой техники определило успех Linux. Система, распространяемая по Интернету, разрабатываемая по Интернету и, вдобавок, идеально работающая с Интернетом, просто не могла не стать популярной.

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

Финансовый фактор
Итак, бесплатность Linux. Как вы, может быть, уже читали в «Плейбое», Linux — бесплатная операционная система. Это означает, что вы не должны платить что-либо кому-либо за использование Linux. Вы можете поставить Linux как на домашний компьютер, так и на коммерческий сервер крупной компании, не заплатив за это ни копейки (ни цента). Абсолютно законно.
Сама по себе бесплатность значит не очень много. Однако Сеть, подобно волшебной палочке, превращает бесплатность в доступность. Именно Интернет позволяет вам получить свою копию Linux тогда, когда вам вздумается. Не могу не привести пример: некоторые крупные производители Unix-систем (SCO и Sun Microsystems, например) с недавних пор распространяют свои системы бесплатно для некоммерческого использования, убедившись на собственном горьком опыте, что системные администраторы и ГТ-менеджеры почему-то предпочитают использовать именно те операционные системы, с которыми они имели дело раньше, пусть и на домашнем компьютере. Однако доступными предлагаемые Unix-системы не являются. Вы должны, как минимум, оплатить носители (CD) и их доставку. Не знаю, как сейчас, а еще полгода назад требующаяся для, например, продуктов SCO сумма составляла около $60. И их еще требовалось заплатить посредством чека или кредитной карточки. А это означает практически полную недоступность для России, например, да и для некоторых других стран тоже. Полагаю, что и американский студент еще подумает, прежде чем заплатить сумму, превышающую стоимость доступа в Интернет на месяц в три раза. А именно из студентов вырастают программисты, менеджеры, системные интеграторы и прочие ГТ-специалисты.

Социальный фактор
Следующий интересующий нас фактор — социальный. Популярность Linux поддерживается огромным очень лояльным к Linux сообществом. Это люди, которые пишут статьи в защиту Linux. Это люди, которые покупают плюшевых пингвинов (пингвин, как известно, символ Linux). Это люди, которые готовы назвать своего кота «Дебиан» (Debian — одна из версий Linux). Это люди, которые готовы в три часа ночи ответить в группе новостей или на доске объявлений на ваш вопрос о тонкостях настройки прокси-сервера под Linux. Короче говоря, это фанаты Linux — в хорошем смысле.
И опять же — Интернет. Влияние волшебной палочки еще больше, чем для предыдущего фактора. Здесь Сети удается создать нечто из ничто. Именно Сеть позволяет сообществу публиковать статьи на многочисленных информационных серверах. Именно через Интернет распространяется информация о том, где купить плюшевого пингвина. Сеть же позволяет вообще существовать тому самому Debian Linux — ведь этим проектом занимаются более 300 разработчиков-энтузиастов по всему миру, взаимодействующих друг с другом, координирующих свою деятельность посредством отнюдь не бумажной почты.
Еще один важный момент — техническая поддержка. Поскольку Linux как таковая не является коммерческой операционной системой и свободно распространяется через Интернет, то получить техническую поддержку можно, либо заплатив какой-либо компании, специализирующейся на оказании такого рода услуг (причем, как правило, консультацию можно получить только по нескольким «коммерческим» вариантам Linux), либо обратившись со своими вопросами к Linux-сообществу при помощи соответствующих группы новостей или списка рассылки. Причем последний вариант — «общественная техническая поддержка» — зачастую дает куда более ощутимые результаты. На большинство вопросов вы получите исчерпывающий ответ в течение суток. Если у вас возникла какая-либо серьезная проблема с одной из программ, то почти наверняка вам удастся привлечь внимание разработчика самой программы.
Как вы можете видеть, Интернет служит тем «цементом», который позволяет из отдельных песчинок собрать мощное Linux-сообщество, активно работающее как над развитием самой системы, так и над ее пропагандой и помощью нуждающимся. В сочетании с доступностью Linux это приводит к сампроизвольному появлению той сущности, которую многие производители какого-либо коммерческого программного продукта пытаются собрать при помощи всяческих конференций «Разработка N на базе М», а также «форумов», «зон», «developer community» на своих web-сайтах. У кого-то получается лучше, у кого-то хуже, но у всех не идет ни в какое сравнение с Linux-сообществом, растянутым по всей Всемирной Паутине.

Философский фактор
Последний — философский — фактор не имеет большого значения для обычного пользователя. Однако именно идеология открытого программного обеспечения привлекает к Linux высокопрофессиональных программистов, и именно они и разработали 95% всей системы.
Я не буду обсуждать здесь в деталях, что такое открытое программное обеспечение. Для этого существуют более подходящие издания и более подходящие статьи. Главное, что для программиста эта идеология означает возможность использования и модифицирования разработок своих коллег, а также полный доступ к описаниям используемых программными продуктами форматов и протоколов (в отличие от Microsoft Exchange или Microsoft Word, например). Открытое программное обеспечение — это целая философия со своими учеными и своими классическими трудами (например, к таковым относится «Собор и базар» Эрика Реймонда). И именно этим идеям обязан Linux участием в разработке системы множества великолепных специалистов, тех, для кого программирование — не только ремесло, но и искусство.
Казалось бы, при чем здесь Интернет? Но при ближайшем рассмотрении становится понятно, что роль Интернета в этом факторе не меньше, чем в предыдущих двух случаях: Сеть обеспечивает как доступность открытых программных продуктов, так и возможность коммуникации между программистами. Действительно, какую пользу принесла бы абстрактная возможность ознакомиться со структурой какой-то программы, если бы эта программа не являлась доступной? И далее, отсутствие возможности коммуникации между автором программы и сторонними программистами не позволило бы последним вносить улучшения в программу и эффективно исправлять замеченные ошибки. Интернет, как добрая фея, делает все это реальностью.
Еще одним фактором, не столь сильно влияющим на популярность Linux непосредственно, но очень значимым для улучшения качества самой системы (а следовательно, косвенно увеличивающим ее популярность), является возможность коммуникации разработчиков с пользователями. Например, в том же Debian Linux с момента его появления пользователями сообщено более чем о пятидесяти тысячах ошибок различной важности, большая часть из которых уже исправлена. (Не следует думать, что в других операционных системах ошибок меньше — в них просто меньше развиты средства взаимодействия с пользователями.)

Теория и реальность
До сих пор мы обсуждали теоретические факторы, поддерживающие популярность Linux. Однако все они способны привлечь лишь человека, уже заинтересовавшегося Linux. Вы можете развернуть сколь угодно широкую кампанию по рекламе касторки в качестве прохладительного напитка, но она не станет от этого популярнее. Так что же изначально привлекает широкие массы к Linux?
Прежде чем я выскажу свои соображения на этот счет, давайте договоримся о терминологии. Я разделю «среднего юзера» на три составляющие: пользователя, разработчика и системного администратора. В каждом человеке, сидящем перед монитором, в какой-то пропорции перемешаны эти составляющие. Пользователь в основном пользуется прикладными программами, разработчик пишет свои программы, а системный администратор занимается настройкой системы. Итак, я попытаюсь описать, чем, на мой взгляд, приятен Linux для каждого из этих «виртуальных пользователей».

Пользователь
Как ни странно, пользователя внутри нас привлекают в Linux (по крайней мере, сначала) не функциональность или удобство работы, а графические «рю-шечки». И до недавнего времени Linux отставал в этом направлении от Windows. Казалось бы — безнадежно. Но не прошло и двух лет, а ситуация кардинально изменилась. Я не буду здесь описывать множество различных графических интерфейсов, а приведу лишь один пример. Неподражаемым по количеству «красивостей» является диспетчер окон Enlightenment в сочетании с графическим интерфейсом Gnome. Обратите внимание на бегущие в нижней части экрана «волны» — фон рабочего стола представляется пользователю стеной большого зала, на полу которго разлилось озеро (как видно на рисунке, в нем отражается одно из окон).
Перечислять прочие графические интерфейсы, описывать их и приводить к ним картинки можно бесконечно. Краткий список из пары десятков различных интерфейсов вместе со ссылками заинтересовавшийся читатель может найти на www.PLi6.org/xwinman.

Продолжение статьи - читать.