Медовый горшок, увы, смоляная яма
Медовый горшок, увы, смоляная яма
Когда Гейтс и Аллен набрели на идею продавать программное обеспечение, они столкнулись с критикой как хакеров так и здравомыслящих воротил бизнеса. Хакеры понимали, что программное обеспечение было всего лишь информацией, и возражали против идеи его продавать. Эти возражения были отчасти морального свойства. Хакеры вышли из научного и университетского мира, где императивом служит свободный доступ общественности к результатам чьей-либо работы. Они были также частично практическими; как вы можете продать нечто, что может легко быть скопировано? Дельцы, которые полярны с хакерами во многих вопросах, имели свои собственные возражения. Привычные к продаже тостеров и страховых полисов, они естественно с трудом понимали, как длинный набор единиц и нулей мог бы стать популярным продуктом.
Очевидно Microsoft эти возражения были до фонаря, как и «Яблоку». Но возражения остались. Самым хакерским из всех хакеров, абсолютным хакером (UR-hacker — сокращение от Ultima Ratio — последний довод — прим. перев.) как таковым, был и остался Ричард Столлман, которого так взбесила практика продажи программного обеспечения, что в 1984-м (тот же год, когда Macintosh поступил в продажу) он пришел и основал нечто называнное Фонд Сфободного Программного Обеспечения (FSF), в которым начали работу над чем-то типа GNU. Это самое GNU — сокращение от «GNU Не Unix», но это — шутка по большей части, поскольку GNU по сути своей и есть Unix. Из-за бодяги с торговой маркой («Unix» — торговая марка AT&T) они просто не могли заявить, чтобы воссоздают Unix, и типа, чтобы перестраховаться, всем сказали, что это вовсе не то, о чем все подумали. Вопреки несравненному таланту и драйву мистера Столлмана и других приверженцев GNU, их заява на создание свободного «Униха», чтобы конкурировать против Microsoft и «Яблочных ОС», была чем-то типа попытки выкопать еще одно метро чайной ложкой (в аббревиациях названий некоторых программ проекта FSF/GNU, традиционно присутствуют буквы YA — от yet another — прим. перев.). Пока, разумеется, всем не настал Linux, до которого я дойду чуть позже.
Но основная идея воссоздать операционную систему с листа была вполне озвучена и полностью осуществлена. Это было сделано много раз. И присуще самой природе операционных систем.
Операционные Системы, по правде говоря, не так уж необходимы. Нет причины почему достаточно упертый кодировщик не мог бы начинать с нуля каждый проект и писать свежий код, чтобы выполнять такие основные операции низкого уровня, как управление чтенем/записью головок дисковых накопителей и отображением отдельных пикселей на экране. Самые первые компьютеры программировались таким образом. Но так как почти каждой программе нужно выполнять те же основные операции, этот метод провел бы к обширному дублированию усилий разработчиков.
Нет ничего более тупого для хакеров, чем дублирование усилий. Первая и наиболее важная умственная привычка, которую люди вырабатывают в себе, когда они узнают как писать компьютерные программы, это стремление обобщать, обобщать, обобщать. Чтобы делать их код настолько модульным и гибким, насколько это вообще возможно, большие проблемы разбиваются на небольшие процедуры, которые могут многократно использоваться в других контекстах. Следовательно, разработка операционных систем, несмотря на свою техническую необязательность, была неизбежной. Поскольку по сути своей, операционная система не что иное, как библиотека, содержащая наиболее часто используюемый код, написанный один раз (и надо надеяться написанный хорошо) и далее доступный для каждого разработчика, которому оно надо.
Таким макаром, частная, закрытая, секретная операционная система является противоречием. Она идет вразрез с самой идеей операционной системы. И в любом случае невозможно сделать ее секретной. Исходный код, как строки текста подлинника, написанного программистами — может содержаться в секрете. Но ОС в целом является набором небольших подпрограмм, которые выполняет очень специфические, очень четко определенные виды работ. Естественно эти подпрограммы должны быть опубликованы, явно и точно, иначе ОС полностью бесполезна для программистов; они не смогут использовать те подпрограммы, если не получат полного и четкого понимания, какого дьявола эти подпрограммы делают.
Единственная вещь, которая не публикуется — как именно подпрограммы делают то, что они делают. Но как только вы узнаете, что процедура делает, обычно совсем легко (если вы — хакер) написать вашу собственную рутинку, которая делает ровно то же самое. Это может занять время, и это скучная и неблагодарная работа, но в большинстве случаев не трудная.
Что трудно в хакерстве, как в сочинительстве, это не писанина сама по себе, а решить, что в натуре должно быт написано. И поставщики коммерческих «Осей» уже решили, и опубликовали свои решения.
Это в основном было понятно давно. MS-DOS дублировалась функционально конкурирующим продуктом, написанным заново, названным ProDOS, который делал все те же вещи совершенно таким же образом. Другими словами, другая компания смогла написать код, который делал ровно то же самое, что и MS-DOS, и получала за это прибыль. Если вы используете операционнуую систему Linux, вы можете получить свободную программу Wine которая является эмулятором Windows; то есть, вы можете открыть окошко в вашей настольной системе, в котором выполняются программы «Окон». Это означает, что полностью функциональная ОС Windows воссоздана в Unix, подобно модели корабля в бутылке. И сама Unix, которая является значительно более навороченной, чем MS-DOS, была воссоздана заново много раз. Ее версии продают компании Sun, Hewlett-Packard, AT&T, Silicon Graphics, IBM, и другие.
Иными словами, народ переписывал основной код операционной системы так долго, что вся технология, которая составляет «операционную систему» в традиционном (доГИПовом) значение этой фразы, теперь так дешева и настолько обобщена, что буквально свободна. Гейтс и Аллен не только могли бы не продавать MS-DOS сегодня, они могли даже не пускать ее в оборот, поскольку более мощные «оси» давно доступны. Даже исходники «Окошек» (тех, которые были единственными «Окошками» до 1995) перестали стоить что-либо, не имеет смысла вообще владеть чем-то, что может эмулироваться в Linux, которая сама по себе свободна.
Таким образом продажа операционных систем совсем не то, что продажа автомобилей. Даже старый рыдван чего-то да стоит. Вы можете использовать его, пока не развалится, или разобрать на запчасти. Это — судьба произведенных товаров, чтобы медленно и мягко дешеветь по мере старения и конкурировать с более современными продуктами.
Но судьба операционных систем — стать свободными.
Microsoft — большая компания прикладных программ. Приложения, как например, Microsoft Word — та область, где новшество приносит реальные, прямые, осязаемые преимущества пользователям. Новшества могли быть новой технологией прямо из научно-исследовательского отдела, или они могли быть в категории бубенчиков и свистулек, но в любом случае они часто полезны и, кажется, делают пользователей счастливым. И Microsoft — становится большой научно-исследовательской компанией. Но Microsoft не настолько хороша как компания операционных систем. И это не обязательно потому, что их операционные системы так плохи с чисто технологической позиции. «Оси» от Microsoft имеют свои проблемы, конечно, но они значительно лучше, чем они обычно бывают, и вполне подходят для большинства людей.
Почему тогда я говорю, что Microsoft не такая крутая компания операционных систем? А потому, что сама природа операционных систем такова, что для них бессмысленно разрабатываться и принадлежать одной специфической компании. Это неблагодарная работа, во-первых. Приложения создают возможности для миллионов доверчивых пользователей, тогда как операционные системы навязывают ограничения тысячам недовольных кодеров, таким образом, изготовители операционных систем навсегда занесены в черный список каждого, кто чего-нибудь понимает в мире высоких технологий. Приложения используются людьми, чья большая проблема состоит в понимании всех подробностей, тогда как ОСи бацают кодировщики, которых бесят ограничения. Продажа операционок была хороша для Microsoft только до тех пор, пока приносила им деньги, чтобы начать действительно хороший бизнес прикладных программ и нанимать много интеллектуальных исследователей. Теперь это надо бы сбросить, подобно ступени ускорителя ракеты. Большой вопрос — способна ли Microsoft сделать это. Или она помешалась на продаже ОС так же как «Яблоко» — на продаже аппаратных средств?
Знаете, эта способность Apple монополизировать поставку своего собственного железа уже отмечалась учеными обозревателями, как большое преимущество перед Microsoft. На какое-то время она казалось, устанавливает их на значительно более прочную позицию. В итоге, она почти убила, и все еще может убить их. Проблема, для Apple, что большинство компьютерных пользователей в мире настроены приобретать более дешевые аппаратные средста. Но дешевое железо не может выполнять MacOS, и потому эти люди переключились на Windows.
Замените «аппаратные средства» на «операционные системамы», а «Яблоко» на «Microsoft» и вы увидите, как тот же прикол может повториться снова. Microsoft доминирует на рынке ОС, который приносит им деньги и кажется прикольной идеей сейчас. Но более дешевые и лучшие ОСы уже доступны, и они становятся все популярнее в тех частях мира, которые не так насыщены компьютерами, как США. Лет через десять, большинство компьютерных пользователей в мире смогут начать освоение этих более дешевых ОСей. Но эти Оси, пока не позволяют, в своем теперешнем виде, выполнять любые приложения Microsoft, и значит эти люди будут использовать что-то другое.
Чтобы показать это более прямо: каждый раз, когда кто-то решает использовать «не-мелкомягкую» ОС, отделение операционных систем Microsoft, очевидно, теряет клиента. Но, при современном положении вещей, отдел прикладных программ Microsoft тоже теряет клиента. Это не такая уж большая проблема, пока почти все используют ОпСистемы от Microsoft. Но как только доля участия «Окон» на рынке начнет ускользать от них, математика начнет выглядеть достаточно мрачной для людей в Редмонде.
На этот аргумент можно возразить, что Microsoft может просто перекомпилировать приложения, чтобы выполнять их под другими ОС. Но эта стратегия идет в разрез с нормальными корпоративными инстинктами. Снова показателен пример «Яблока». Когда для Apple настали холода, они должны были портировать свою ОпСистему на дешевые железяки PC. Но они этого не сделали. Взамен, попытались максимально использовать свои блестящие аппаратные средства, добавляя новые характеристики и расширяя линейку продуктов. Но это только делало их ОС более зависимой от этих специальных железных примочек, которые в итоге сделали только хуже.
Аналогично, когда Microsoft на рынке ОС слегка поплохело, их корпоративные инстинкты подсказали им набить свои операционные системы примочками, и затем снова подсадить прикладные программы на эти специальные навороты. Но это только поставило их в зависимость от применения ОС, с сокращением доли рынка, так что им поплохело еще сильнее.
Рынок операционных систем — смертельная ловушка, смоляная яма, пучина отчаяния. Есть только две причины, чтобы инвестировать в Apple и Microsoft. (1) каждая из этих компаний участвует в том виде отношений, что мы должны назвать взаимозависимостью с клиентами. Клиенты хотят верить, а Apple и Microsoft знают, как дать им, что они хотят. (2) каждая компания очень напрягается, чтобы пришпандорить новые фишки к своей ОпСистеме, которая работает, чтобы обеспечить лояльность клиента, по крайней мере, еще чуть-чуть.
Соответственно, сухой остаток этого очерка будет вращаться около этих двух тем.