Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта. Благодаря им мы улучшаем сайт!
Принять и закрыть

Читать, слущать книги онлайн бесплатно!

Электронная Литература.

Бесплатная онлайн библиотека.

Читать: В начале была командная строка - Нил Стивенсон на бесплатной онлайн библиотеке Э-Лит


Помоги проекту - поделись книгой:

Следуя той же программе, будет, вероятно необходимо переместить штаб-квариру BeOS в весьма менее комфортабельную атмосферу. (Бедность сестра таланта. — прим. перев.) Общее неудобство окружающей среды введет это отношение в рамки и поистине это не бог весть какой рецепт успеха. Я предложил бы Сиэттл, но я думаю он уже занят. Вы могли попробовать Вашингтон, Округ Колумбия, но определенно, не Сан-Диего и не Таксон.

--------------

К несчастью, системка сообщений о дефектах Be удаляет имена людей, которые сообщают об этих самых дефектах (чтобы защитить их от возмездия!?), так что я не знаю, кто это написал.

Итак, это должно быть выглядит, что я как раз каркаю о техническом и моральном преимуществе Debian Linux. Но как почти всегда случается в мире ОпСистем, все более сложно, чем кажется. У меня есть Windows NT работающие на другой машине, и на днях (Январь, 1999), когда у меня была проблема с ней, я решил позволить себе снова сходить в Службу Поддержки Microsoft. На этот раз поисковый движок действительно работал (хотя, чтоб этого добиться, я должен идентифицировать себя как «продвинутого»). И вместо трескотни в каком-то бесполезном FAQ, он нашел около двухсот документов (я использовал очень неопределенные критерии поиска), которые были очевидно сообщениями о дефектах — хотя они и назывались как-то иначе. У Microsoft, другими словами, есть система, которая работает эквивалентно базе данных о дефектах Debian. Она выглядит и ощущается иначе, конечно, но содержит техническую галиматью и не подозревает о существовании ошибок.

Как я объяснял, продажа ОСей за деньги — в основном несостоятельная позиция, и единственный способ, которым «Яблоко» и Microsoft могут их поиметь — осуществляя технологические подвижки так энергично, как только они могут, заставляя людей поверить в них, и платить за них. Конкретная картинка: случай «Яблока», того самого творческого свободного мыслителя, и в случай Microsoft, той самой приличной технобуржуазии. Точно как Disney, они делают деньги на продажах интерфейса, волшебного зеркала. Оно должно быть гладким и достоверным, иначе вся иллюзия рухнет и бизнес-план накроется подобно миражу.

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

Когда Apple занимается такого рода корпоративным поведением, некто хочет верить, что они действительно пытаются делать все наилучшим образом. Мы все хотим дать «Яблоку» фору перед сомнением, поскольку помним их старые победы над хламом Билла Гейтса, и из-за того, что у них есть хороший пиар. Но когда Microsoft делает то же, почти не нужно помогать появлению параноических конспирологов… Очевидно они что-то прячут от нас! И они все еще так сильны! Они пытаются свести нас с ума!

Этот метод в работе с клиентами пришел прямиком из Центрально-Европейского тоталиторизма середины Двадцатого Столетия. На ум приходят прилагательные «Кафкианский» и «Оруэлловский». Это не могло продолжаться дольше, чем существовала Берлинская Стена, и теперь Microsoft имеет публично доступную базу данных об ошибках. Она называется как-то иначе, и нужно время, чтобы ее обнаружить, но она — там.

Они, другими словами, приспособились к двух-ярусной структуре «Элой/Морлок» технологического общества. Если вы — Элой, вы устанавливаете «Окна», следуете инструкциям, надеетесь на лучшее, и безмолвно страдаете, когда «они падают». Если вы — Морлок, вы идете на вебсайт, заявляете им, что, вы — «продвинутый», находить базу данных об ошибках, и добиваетесь правды прямиком от некоторого анонимного инженера Microsoft.

Но раз Microsoft предприняла этот шаг, опять напрашивается вопрос, есть ли какое-нибудь указание присутствия в «ОСевом» бизнесе вообще. Клиенты могли хотеть платить $95, чтобы сообщить о проблеме на Microsoft если, в свою очередь, они получают некоторый совет, который никакой другой пользователь не получает. Это имеет полезный побочный эффект хранения пользователей отчужденными друг от друга (типа «разделяй и властвуй» — прим. перев.), что помогает поддерживать иллюзию, что дефекты являются редкими недоразумениями. Но раз результаты тех сообщений об ошибках становятся открыто доступны на вебсайте Microsoft, все изменяется. Никто не собирается тратить по $95, чтобы сообщить о проблеме, когда велики шансы, что какой-нибудь другой неудачник сделает это раньше, и что инструкции по исправлению дефекта затем окажутся в свободном доступе на сайте. И по мере того как размер базы данных об ошибках растет, в конечном счете становится общим местом, в частности в отношении Microsoft, что их ОСи имеют столько же «жуков» как их конкуренты. В этом нет ничего зазорного; как я упоминал, дебиановская база данных о дефектах зарегистрировала уже 32000 сообщений. Но это ставит Microsoft на одну доску с другими и делает более трудной для ее клиентов — тех, кто хочет верить — возможность поверить ей.

Memento mori

Когда линуховая машина наконец исплевала жаргонную начальную телеграмму, она приглашает меня, войти в систему с именем пользователя и паролем. В этой точке машина все еще выполняет интерфейс командной строки, с белыми буквами на черном экране. Нет окон, меню, или кнопок. Она не отвечает на мышь; она даже не знает, что мышь — «где-то рядом». Можно выполнять много программулей уже отсюда. Emacs, например, существует в консольной и ГРАФИЧЕСКОЙ версиях интерфейса пользователя (реально есть две версии графического интерфейса пользователя, отражающие какие-то «религиозные разногласия» между Ричардом Столлманом и некоторыми хакерами, которые с ним расплевались). То же справедливо для многих других юниховых программ. У многих ГРАФИЧЕСКОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ нет совсем, и многие из них способны работать из командной строки. (В смысле, работаете вы скажем в сессии G-Nome или KDE, или какой там оконный менеджер пленяет ваши взоры, — запускаете старый-добрый терминал в окошечке на одном из рабочих столов и в нем — любимый Vi в последнем его воплощении)

Разумеется, поскольку у моего компьютера только один экран монитора, я могу увидеть только одну командную строку, так что вы могли подумать, что я мог только взаимодействовать с одной программой за один раз. Но если я удерживаю нажатой кнопку Alt и затем нажимаю функциональную клавишу F2 в верху моей клавиатуры, я обеспечиваюсь свежим, чистым, черным экраном с приглашением для входа в систему в верхней части. Я могу войти в систему здесь и запустить некоторую другую программу, затем нажать Alt-F1 и вернуться к первому экрану, который все еще делает то, что делал, когда я его покинул. Или я могу нажать Alt-F3 и войти в систему на третьем экране, или четвертом, или пятом. На одном из этих экранов я могу войти в систему в качестве себя самого, на другом как root (традиционное имя администратора системы), на следующем — я могу регистрироваться на каком-нибудь другом компьютере через Интернет.

Каждый из этих экранов называется, по-юниховому, tty, что является сокращением от «телетайп». Так, когда я использую мою линуховую систему таким образом, я возвращаюсь прямиком в ту небольшую комнату в Средней Школе Эймса, где я впервые писал код двадцать пять лет тому «обратно», за исключением того этот tty — тише и быстрее чем телетайп, и способен выполнять гораздо более развитое программное обеспечение, как например, emacs или «ГНУсные» средства разработки.

Легко (легко по стандартам Unix, а не Apple/Microsoft), настроить линуховую машину так, что она будет запускаться непосредственно с ГРАФИЧЕСКИМ ИНТЕРФЕЙСОМ ПОЛЬЗОВАТЕЛЯ, когда вы ее запускаете. Таким образом, вы никогда не увидите экран tty вообще. Однако, я все еще позволяю тачке загружаться в черно-белом экране телетайпа, типа вычислительного memento mori. Обычно модно для писателя, держать человеческий череп на своем столе, как напоминание, что и он смертен, что все вокруг него — суета. Экран tty напоминает мне, что то же самое верно и для гладеньких интерфейсов пользователя.

Система X Window, которая является ГРАФИЧЕСКИМ ИНТЕРФЕЙСОМ ПОЛЬЗОВАТЕЛЯ Юниха, должна была работать на сотнях разных видеокарт с различными чипсетами, объемом видеопамяти, и шинами материнской платы. Аналогично, есть сотни разных типов мониторов на рынке новых и подержанных комплектующих, каждый с другой спецификацией, и значит вероятно свыше миллиона всевозможных сочетаний видеокарт и мониторов. Единственная вещь, которую они все умеют одинаково — то, что они все работают в режиме VGA, который является старым экраном командной строки, которую вы видите в течение нескольких секунд, когда запускаете «Виндов». Также и Linux всегда начинается в VGA, с интерфейсом телетайпа, поскольку сначала у него нет представления, какого рода аппаратные средства подключены к вашему компьютеру. Чтоб типа забраться дальше стеклянного телетайпа и в сам ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ, вы должны сообщить Linux точно, какие типы железяк у вас есть. Если вы сделаете это неправильно, вы получите чистый экран в лучшем случае, и в худшем может в натуре испортить ваш монитор, скормив ему сигналы, которые он не сможет обработать.

Когда я начал использовать Linux это приходилось делать «ручками». Я как-то раз затратил лучшую часть месяца, пытаясь заставить устаревший монитор, работать, и забил лучшую часть композиции книги чрезвычайно удручающими записками. В настоящее время, большинство линуховых поставок загружаются с программой, которая автоматически сканирует видеокарту и самонастраивает систему, так что получить работающую X Window почти так же легко, как и установить «яблочный» или «мелкомягкий» ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ. Критическая информация заносится в файл (текстовый файл ASCII, естественно) названный XF86Config, в который имеет смысл глянуть, даже если ваш дистрибутив создает его для вас автоматически. Для большинства людей он выглядит похожим на бессмысленные загадочные заклинания, которые и на самом деле таковы. В Apple/Microsoft системе нужна та же информация, чтоб запускать свой ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ, но она обычно запрятана где-то очень глубоко, и вполне возможно, в файле, который даже нельзя открыть и прочитать текстовым редактором. Все важные файлы, которые заставляют линуховую систему работать, вполне можно открыть. Они всегда текстовые файлы ASCII, так что вам не нужны специальные инструментальные средства, чтобы прочитать их. Вы можете просмотреть их всякий раз, когда вам вздумается, что хорошо, и… вы можете повозиться с ними и сделать вашу систему полностью раскуроченной, что уже не так хорошо.

Во всяком случае, допуская что мой файл XF86Config — совершенно правилен, я вожу команду «startx», чтобы запустить «оконную систему X». Экран с минуту моргает, монитор издает странные вибрации, затем предстает, как чистый серый рабочий стол с курсором мыши в середине. В то же самое время он запускает менеджера окон. X Window является прекрасной программулей низкого уровня; она обеспечивает инфраструктуру для ГРАФИЧЕСКОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ, и это — тяжелая промышленная инфраструктура. Но он не рисует окон. Они обрабатываются приложением другого типа, которое располагается поверх X Window, и называется оконным менеджером. Некоторые из них доступны и, разумеется, полностью свободны. Классический — twm (Оконный менеджер дяди Тома) но есть меньший и предположительно более эффективный вариант его, названный fvwm, тот, которым я как раз пользуюсь. Я положил глаз на совершенно другой менеджер окон, названный «Просвещение»(от enligtenment), которое может быть самый последний писк технологии, который я когда-либо видeл (с тех пор технология слегка продвинулась — прим. перев.), потому что (a) он — для Linux, (b) он — доступен для свободного пользования, (c) он разрабатывается очень узкой группой одержимых хакеров, и (d) он выглядит изумительно круто; это — своего рода менеджер окон, который можно показывать в фоне кина про «Чужих».

Во всяком случае, менеджер окон выступает в качестве посредника между X Window и любой софтиной, которую вы захотите использовать. Он делает рамки окон, меню, и так далее, пока сами приложения создают фактическое наполнение окон. Приложения могут быть любые: текстовые редакторы, веббраузеры, графические пакеты, или программные утилиты, как например, часы или калькулятор. Другими словами, с этой точки зрения, вы чувствуете, как если бы вы попали в параллельную вселенную, которая совсем как знакомая вам «Яблочная» или «Мелкомягкая», но немного и во всем другая. Прикольная графическая программа под Apple/Microsoft — Adobe Photoshop, но под Linux это — нечто названное GIMP. Вместо пакета Microsoft Office, вы можете купить что-то типа ApplixWare. Многие коммерческие программные пакеты, как например, Mathematica, Netscape Communicator, и Adobe Acrobat, доступны в Linux версиях, и в зависимости от того, как вы устанавливаете ваш оконный менеджер, вы можете заставить их выглядеть и вести себя так, как они это делали под MacOS или «Виндой».

Но есть один тип окна, которое вы увидите в линуховом ГРАФИЧЕСКОМ ИНТЕРФЕЙСЕ ПОЛЬЗОВАТЕЛЯ, который редок или не существует под другими ОСями. Эти окна названы «xterm» и содержат только строки текста — на этот раз черный текст в белом фоне, хотя вы можете заставить их быть другого цвета, если захотите. Каждое xterm окно — отдельный интерфейс командной строки — терминал в окне. Значит даже, когда вы в полноценном режиме графического интерфейса пользователя, вы можете все еще поговорить с вашей Linux машиной через интерфейс командной строки.

Есть много хороших юниховые софтин, которые не имеют ГРАФИЧЕСКОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ ваще. Это могло быть из-за того, что они были разработаны прежде, чем появилась X Window, или поскольку люди, которые писали их, не хотели заморачиваться созданием ГРАФИЧЕСКОГО ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ, или поскольку, им он просто не был нужен. В любом случае, те программы могут запускаться занесением их имен в командную строку окна xterm. Команда whoami, упомянутая ранее, — хороший пример. Есть другая, назвается wc («подсчет словей»), которая просто возвращает количество строк, слов, и символов в текстовом файле.

Способность выполнять эти небольшие программные утилиты в командной строке — большое достоинство Unix, и внатуре нефиг дублировать их чистыми ГИП ОпСистемами. Команда wc например, — та штука, которую ллегче написать с интерфейсом командной строки. Она, вероятно, состоит из не более чем нескольких строк текста программы, и башковитый программист мог бы, вероятно, написать ее в одну строчку. В скомпилированной форме она занимает просто несколько байтов дискового пространства (существуют отморозки среди программистов, которые могли бы набрать и сам исполняемый код, делающий то же самое, что и результат обработки исходников компилятором: во всяком случае, Крис Касперски. Но код, нужный, чтоб дать той же проге графический интерфейс с пользователем, должно быть разросся бы до сотен или даже тысяч строк, в зависимости от воображения программиста, захотевшего сделать это (надо быть ПОЛНЫМ отморозком, чтоб такого захотеть — прим. перев.). Скомпилированная в работоспособный кусок софта, она в основном состояла бы из кода графического интерфейса пользователя. Она бы медленно запускалась и расходовала бы много памяти. Это не стоило бы затраченных усилий, и таким образом «wc» никогда бы не была написана в виде независимой программы. Взамен пользователи ожидали бы чтоб появилась примочка для подсчета слов в коммерческом пакете программ.

ГРАФИЧЕСКИЕ ИНТЕРФЕЙСЫ ПОЛЬЗОВАТЕЛЯ имеют тенденцию навязывать большие расходы на каждый отдельный кусок софта, даже минимальный, и эти потери полностью изменяют среду программирования. Небольшие программные утилиты больше не стоят написания. Их функции взамен, имеют тенденцию быть поглощенными программными пакетами общего назначения. По мере того как ГРАФИЧЕСКИЕ ИНТЕРФЕЙСЫ ПОЛЬЗОВАТЕЛЯ становятся сложнее, и навязывают все больше и больше расходы, эта тенденция становится более повсеместной, и программные пакеты вырастают до колоссальных размеров; и с некоторого момента, когда они начинают объединяться друг с другом, как Microsoft Word, Excel и PowerPoint объединились в Microsoft Office: колоссальный универмаг программного обеспечения занимает часть города, когда-то заполненную небольшими магазинами, которые все поглощены им.

Это — нечестная аналогия, поскольку, когда небольшой магазин оказывается поглощен, это означает, что какой-то мелкий лавочник потерял свой бизнес. Конечно, ничто типа этого не случается, когда «wc» становится включенным в один из бесчисленных пунктов меню «Мелкомягкого Ворда». Единственным реальным недостатоком является потеря гибкости для пользователя, но это недостаток, на который большинство клиентов, очевидно не обращает внимания или не беспокоится о нем. Наиболее серьезный недостаток универмаговского метода, что большинство пользователей хотят или нуждаются в небольшой доле тогог, что содержится в этих гигантских программных пакетах. Остальное — мусор, мертвый груз. А еще у одного пользователя в следующей клетушке будут совершенно другие мнения о том, что полезно и что не.

Другая важная вещь, которую стоит упомянуть здесь, что Microsoft включил в натуре крутую примочку в офисный пакет: среду программирования на языке Бейсик. Бейсик — первый машинный язык, который я узнал, возвращаясь к тем лихим денькам, когда я использовал бумажную перфоленту и телетайп. (Как говорится, «и какой же хакер не знает бейсика…» — Прим. прев.) Используя версию Бейсика, которая приходит с Офисом, на котором вы можете написать ваши собственные небольшие программные утилиты, которые знают как взаимодействовать со всеми маленькими ключиками, прибамбасами, бубенчиками и свистульками в Офисе. Бейсиком проще пользоваться, чем языками, обычно используемыми в юниховом программировании командной строки, и Офис достиг намного, намного большего количества людей, чем инструментальные средства ГНУ. Таким образом, вполне возможно, что эта фишка Офиса, в конце концов, породит больше приколов, чем ГНУ. (Хотя нельзя сказать, не погрешив против истины, что в Редмонде придумали что-то новое — встроенные языки расширений имеются у многих юниховых программ: тот же ЛИСП напропалую используется в emacs для настройки и добавления возможностей… Просто в юнихе большинство задач гораздо проще решить иными средствами, не изобретая еще один велосипед — прим. прев.)

Но сейчас я говорю о прикладном программном обеспечении, не об ОпСистемах. И как я сказал, «мелкомягкие» софтины стремятся быть очень хорошими вещами. Я не пользуюсь ими часто, потому что я не отношусь к их целевому рынку. Если Microsoft когда-нибудь сделает пакет программ, которым, я воспользуюсь и заторчу, тогда действительно настанет время, чтобы сбывать их акции, потому что я окажусь в рыночным сегменте для одного.

Гикнутая усталость

(GEEK — в данном случае, фанат возни с железом и ОпСистемами: с точки зрения обычных сапиенсов, довольно гикнутое занятие)

За годы, когда я работал с Linux, я заполнил три с половиной записных книжки, отражающие мои опыты. Я начинаю записывать что-либо лишь тогда, когда делаю нечто заумное, подобно установке X Window или «ступлению по лезвию» соединения с Интернетом, и поэтому те записные книжки содержат только записки о моей борьбе и поражениях. Когда вещи по-моему ведут себя хорошо, я буду работать себе счастливо в течение многих месяцев, не записывая ни единственой памятки. Итак, эти записные книжки созданы для весьма мрачного чтения. Изменение чего-либо в Линухе связано с открытием всех тех разных мелких текстовых файлов ASCII и изменением слова здесь и символа там, что чрезвычайно существенно в том смысле, как система действует.

Многие файлы, которые определяют, как Linux работает, — не что иное, как командные строки, которые стали такими длинными и сложными, что даже линуховым хакерам влом кропотливо набирать их правильно. Работая с чем-то таким же мощный, как и Linux, вы можете легко потратить целых полчаса на создание единственной командной строки. Например, «find» команда, которая ищет файлы в вашей файловой системе, которая сочетает определенные критерии, фантастически мощные и общие. Его «руководство» — длиной одиннадцать страниц, и это вразумительные страницы; вы могли бы легко развернуть их в целую книгу. И буде это не слишком заумно и само по себе, вы можете всегда «затрубить» выход одной команды Unix на ввод другой (от слова pipe, использованного в качестве глагола — на юниховом жаргоне «трубка», такой же сложной. «pon», команда, которая используется, чтобы установить соединение PPP с Интернет (вообще-то, в разных системах могут быть разные команды: в юнихах это всякие дружественные надстроки над сложной, почти мистической для простого юзера сущностью демона коммутируемых соединений pppd), требует столько подробной информации, что практически невозможно запустить эту прогу целиком из командной строки. Взамен вы сводите большие куски своего ручного ввода в три или четыре дополнительных файла. Вам нужен «дозвонный» сценарий (to dial — набирать номер, и в этом смысле — дозваниваться — прим. перев.), который является фактически небольшой программой, сообщающей проге, как набирать телефонный номер и откликаться на различные события; файл опций, который включает вплоть до шестидесяти других настроек, указывающих, как соединение PPP должно быть установлено; и секретный файл, содержащий информацию о вашем пароле.

Возможно, есть «богоидные» (от godlike — в смысле, «богоподобные», но многие хакеры, как следует из уважаемого словаря жаргона от Стила, склонны в шутку применять термин bogus, к тем, кто слонен что-либо сравнивать с богом — эта «богость» последних часто приводит к тому, что их грандиозные замыслы становятся в натуре «[у]богими», часто — из-за нарушения принципа простоты «KISS» и более общего — бритвы Оккама — прим. перев.) хакеры Юниха где-нибудь в мире, которым не нужно использовать эти небольшие сценарии и файлы опций, как костыли, и кто может просто настучать фантастически сложные командные строки, без типографские ошибок и не тратя часы на перелистывание документации. Но я не один из них. Как почти все линуховые пользователи, я завишу от того, чтоб иметь все те подробности спрятанными к дьяволу в тысячи небольших текстовых файлов ASCII, которые в свою очередь запрятаны в тайники Юниховой файловой системы. Когда я хочу изменить что-то в способе, которым моя система работает, я редактирую те файлы. Я знаю, что если не отслежу каждого небольшого изменения, которое сделал, я не смогу вернуть вашу систему обратно к прежнему порядку работы, после того, как мне удалось все облажать. Хранение вручную записанных протоколов скучно, не говоря уже о своего рода анахроничности. Но необходимо.

Я вероятно уберег бы свою голову от многих болей, имея дело с компанией, называющейся Cygnus Support («поддержка от Сайнуса» — прим. перев.), которая существует, чтобы предоставить помощь пользователям свободного программного обеспечения. Но я этого не сделал, из-за того, что хотел увидеть, смогу ли я сделать что-то сам. Ответ оказался скорее «да», но еле-еле. И есть много «ужимок и прыжков» (ухищрений оптимизации — прим. перев.), которые я мог вероятно сделать в моей системе, к чему я никогда не оставлял попыток, частично из-за того, что меня прет от того, чтоб побыть Морлоком несколько дней, и частично из-за того, что я боюсь неисправности в системе, которая обычно работает хорошо.

Хотя Linux работает для меня и многих других пользователей, чистая мощность и общность является его ахиллесовой пятой. Если вы знаете, что делаете, вы можете купить дешевый ПиСюк из любого магазина компьютеров, выбросить нафиг диски с «Окнами», которые идут с ним, превращаете это в линуховую систему умопомрачительной сложности и мощности. Вы можете подцепить к нему до двенадцати других «Линух-боксов» и сделать его частью параллельного компьютера. Вы можете сконфигурировать его так, что сотни других люди смогут регистрироваться на нем прямо по Интернету, через хренову тучу модемных соединений, карт Ethernet, TCP/IP розеток, и каналов пакетного радио.). Вы можете навесить полдюжины других мониторов и поиграть в DOOM с кем-то в Австралии, прослеживая спутники связи на орбите и управляя освещением вашего дома и термостатами, и смотреть потоковое живое видео из вашей веб-камеры, и «серфить» по Сети, и разрабатывать печатные платы на других экранах. Но чистая мощность и сложность системы — качества, которые делают ее настолько технически более развитой по сравнению с другими ОСями — иногда заставляет ее казаться слишком ужасной для обычного повседневного использования. (Упертые юнихоиды: «Контрррра!» Переводчик: «Спакойна! Это еще не конец…»)

Иногда, другими словами, я просто захочу пойти в Диснейлэнд.

Идеальной ОпСистемой для меня была бы та, которая имела бы хорошо запроектированный ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ, который можно легко настроить и использовать, но который включает терминальные окна, где я мог бы возвратитьсяв интерфейс командной строки, и выполнять программное обеспечение ГНУ, когда это имеет смысл. Несколько лет тому назад, Be Inc. изобрела точно такую ОСь. Ее назвали BeOS.

Etre

Многие люди в компьютерном бизнесе пожили в интересное время, сталкиваясь с корпорацией Be, по той простой причине, что ничто, что касается ее, кажется не имеет абсолютно никакого значения. Она была запущена поздним 1990, что делает ее приблизительно ровесницей Linux. Изначально она посвящалось созданию новой операционной системы, которая, конструктивно, несовместима со всеми другими (хотя, как будет видно, она совместима с Unix в некоторых весьма важных аспектах). Если по определению «знаменитость» — кто-то, кто известен своей известностью, то Be в натуре антизнаменитость. Она известна своей незнаменитостью; она известна благодаря своей обреченности. Но она была обречена очень долго.

Миссия Be возможно поимела большее значение для хакеров, чем для всех прочих. Чтобы объяснить, почему, мне нужно ввести понятие «ремезло» (игра слов, хакерское cruft — искаженное craft, как уничижительное обозначение неудачных попыток «сделать как лучше» — прим. перев.), которое для людей, пишущих код, почти так же отвратительно, как и ненужное повторение.

Если вы были в Сан-Франциско, вы видали более старые здания, которые подверглись «сейсмическому апгрейду,», который часто означает, что абсурдные надстройки современной арматуры воздвигаются вокруг зданий, построенных, как говорится, в классическом стиле. Когда новые угрозы возникают — пусть это будет Ледниковый Период, для смеха — дополнительные слои все более высокотехнологичных причиндалов могут создаваться, в свою очередь, вокруг этих, пока исходное здание, не станет подобно святой реликвии в соборе — типа кусочка пожелтевшей кости, хранящейся в полтонне причудливой защитной рухляди.

Аналогичные меры могут быть предприняты, чтобы поддержать скрипучую деятельность старых операционных систем. Это случается все время. Выбрасывание на помойку дохлой старой ОСи должно упрощаться тем, что, в отличие от старых зданий, ОпСистемы не имеют эстетического или культурное значения, которое делает их внутренне стоящими сохранения. Но этого не происходит на практике. Если Вы работаете с компьютером, то вероятно настроили под себя ваш «рабочий стол», ту среду, в которой вы сидите, чтобы работать каждый день, и затратили кучу денег на программное обеспечение, которое работает в этой среде, и посвятили много времени ознакомлению с тем, как оно все работает. Это отнимает время, а время — деньги. Как уже упоминалось, желание поиметь взаимодействие с сложными технологиями упрощенным при помощи интерфейса, и окружать себя с виртуальными фенечками и газонными орнаментами — естественно и повсеместно — возможно, это реакция против сложности и ужасающей абстрактности компьютерного мира. Компьютеры дают нам больше вариантов выбора, чем мы действительно хотим. Мы предпочитаем сделать этот выбор один раз, или принять варианты по умолчанию, установленные для нас софтовыми компаниями, и позволяющими не будить спящих собак (типа, «непереводимая игра слов» — прим. перев. На самом деле, вполне понятная без перевода: «не буди лихо, пока спит тихо» — применительно к компьютерам и технике вообще — не трогай это, пока оно работает, «не сломано — не чини»). Но, когда ОпСистемку «починят», все собаки вскакивают и начинают брехать.

Средний пользователь компьютера — технологический антиквар, который по натуре не любит, когда вещи меняются. Он или она — подобны городскому профессионалу, который только что купил прелестный лом и теперь перемещает мебель и безделушки вокруг, и переставляет кухонные шкафы, так, чтоб все было тип-топ. Если необходимо банде инженеров полазить вокруг оснований, подпирающих фундамент, чтоб поддержать новую чугунную ванну с когтистыми лапами, и просунуть длинные новые провода и трубы сквозь стены, чтобы поддержать современные примочки, почему бы нет — инженеры дешевы, по крайней мере, когда миллионы пользователей ОпСистем разделяют стоимость их услуг.

Аналогично, компьютерные пользователи хотят иметь самый последний Pentium в своих машинах, и мочь серфить в Паутине, не заморачиваясь обо всех вещах, которые заставляют их почувствовать, будто они в натуре знают, какого черта здесь происходит. Иногда это действительно возможно. Добавление большего количества ОпПамяти в вашу систему — хороший пример модернизации, которая вряд ли покорежит что-нибудь.

Увы, лишь некоторые из этих модернизаций просты и понятны. Лоуренс Лэссиг, в бытность (whilom) Специальным Мастером в Отделе Юстиции антитрестовского иска против Microsoft, пожаловался, что он установил Internet Explorer в свой компьютер, и так случилось, потерял все свои закладки — его персональный список указателей, по которым он обычно лазил через лабиринт Интернета. Это было как если бы он купил новый комплект шин для своей тачки, и затем, выкатывая из гаража, обнаружил, что, благодаря некоторому непостижимому побочному эффекту, каждый дорожный знак и карта дорог в мире были уничтожены. Если он подобен большинству из нас, он потратил много усилий на составление этого списка закладок. Это только маленькая проба того типа проблем, которые могут быть вызваны модернизацией. Дерьмовенькие старые ОпСистемки имеют ту особенность, главным образом в отрицательном смысле, что переход на новые, заставляет нас захотеть, чтоб мы никогда не рождались.

Все исправления и заплатки, которые инженерам приходится делать, чтоб дать нам преимущества новой технологии, не заставляя нас, задумываться о них, или сворачивать с нашей дороги, порождают кучу программного кода, который, со временем, превращатся в гигантский ком жвачки, раздувающийся, наматывающий провода и шлейфы, окружающие каждую операционную систему. На жаргоне хакеров, это названо «ремезло» (гнилое дело по пришиванию нового пиджака к старым пуговицам — примерно тоже самое — прим. перев.). ОпСистема, которая поимела многие и многие слои этого самого, называется «заремезленной». Хакеры ненавидят делать одно и тоже дважды, но, когда они видят нечто заремезленное, их первым побуждением становится порвать это в клочья, выкинуть и начать заново.

Если б Марка Твена возвратили в Сан-Франциску сегодня и оставили в одном из этих старых, «сейсмически модернизированных» домов, они бы показались ему точно такими же, со всеми дверями и окнами на тех же местах, но если бы он выбрался наружу он бы не узнал их. И — если бы он возвратился обратно в здравом уме — он мог бы спросить стоило ли огород городить, решая так много проблем для их сохранения. В некотором смысле, он задался б вопросом: оно в натуре стоит того, или, быть может, нам просто снести все это нафиг и возвести заново, как говорится, «ладом»? Надо нам бросить очередную людскую волну строительных инженеров на выравнивание Падучей Башни в Пизе, или просто позволить клятой штуке упасть, наконец, и отгрохать башню, которая не валяет дурака?

Подобно апгрейду старого здания ремезло всегда кажется похожим на хорошую идею, когда первые слои этого только сотворяются — просто рутинное сопровождение, типа предусмотрительного управления. Это особенно верно, как если (если так и есть) вы никогда не заглядываете в подвал, или под штукатурку (drywall). Но если вы — хакер, который тратит все свое время, разглядывая все это, с такой точки зрения, ремезло вызывает сугубое отвращение, и вы не можете не захотеть подойти к нему с ломом. Или, даже лучше, просто выйти из здания — позволить Падучей Башне в Пизе… «пизануться с концами» — и пойти построить новую, КОТОРАЯ НЕ НАКЛОНЯЕТСЯ.

Долгое время было очевидно для «Яблока» с «Мелкософтом», и их клиентов, что первое поколение ОпСистем с ГРАФИЧЕСКИМ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ было обречено, и что они были бы, в конечном счете, выброшены на помойку и заменены полностью свежими. В конце восьмидесятых, начале девяностых, «Яблоко» возобновило некоторый прерванные усилия, направленные на то, чтобы построить принципиально новые «пост-маковые» ОпСистемы, как например, Pink и Taligent. Когда те пропали даром, они запустили новый проект названный Copland, который также потерпел неудачу. В 1997 они заигрывали с идеей получения Be, но взамен приобрели Next (это названия фирм — прим. перев.), у которого завелась ОпСистемка, названная NextStep, что, по сути, вариант Unix. По мере того как эти усилия продолжались, и снова, и так далее, и проваливались, и проваливались, и проваливались, «яблочные» инженеры, кои были среди лучших в бизнесе, продолжали заниматься «ремезлом». Они стойко пытались пришпандорить к небольшому тостеру многозадачный режим, превратить его в машину, знакомую с Интернетом, и проделали изумительно хорошую работу в этом направлении за долгое время — типа как герой кина, форсирующий реку в джунглях, прыгая по спинам крокодилов (crocodiles' backs — машинный перевод «обратная сторона крокодилов» — есть в этом что-то иносказательное — прим. перев.). Но в реальном мире вы, в конечном счете, испытываете недостаток крокодилов, или наступите на действительно умного.

Если говорить о ней, Microsoft взялась за ту же проблему со значительно более нормального боку, создавая новую ОСь, названную Windows NT, которая явно собирается стать прямым конкурентом Unix («ой, да не смешите меня!» — прим. Юниха). NT представляется как «Новая Технология», которую можно считать явным отказом от ремезла. И на самом деле, NT поимела репутацию много менее «ремезленной», чем то, во что MacOS в конечном счете превратилась; хотя бы с той точки зрения, что документация, нужная, чтоб писать код для «Маков», занимает приблизительно 24 талмуда (н-да? А сколько занимают талмуды для NT? — вопр. перев., к тем, кто в курсе). «Окно» 95 было, и «Окно 98» осталось «заремезленным» из-за того, что они должны быть обратно-совместимы с более старыми «мелкомягкими» ОСями. Линух обходится с «ремезленной» проблемой так же, как эскимосы предположительно обращались со старыми согражданами: если вы упорствуете в использовании старых версий линуховых софтинок, вы рано или поздно начнете дрейф через Меринов Пролив на тающей льдине. Они могут справиться с этим, поскольку большинство софтин здесь свободные, так что ничего не стоит, загрузить обновленные версии, и поскольку большинство пользователей Линуха — Морлоки.

Большая идея, чьи уши видны за BeOS, состояла в том, чтоб начать с чистого листа и разработать ОСь правильным способом (и верной дорогой, товарищи! — прим. ВИЛа с броневика). И это точно то, что они делали. (Ну, по крайней мере… начали. — Прим. перев) Это была, очевидно, хорошая идея с эстетической позиции, но не похоже на надежный бизнес-план. Немногих людей, которых я знаю в мире GNU/Linux Be раздражает, как донкихотская выходка тех, чьи могучие способности могли быть направлены, чтобы помочь проповедовать Linux.

На самом деле, ни что из этого не имеет смысла, пока вы не припомните, что основатель компании, Жан-Луи Гессе, — из Франции — страны, которая в течение многих лет отстаивала собственную отдельную и независимую версию Английской монархии в сент-жерменском суде, вплоть до придворных, церемоний коронации, государственной религии и внешней политики. Теперь, то же самое раздражение все еще отличных от других несгибаемых шей, которые дали нам Якобинцев, движение сопротивления, Аэробус, и знаки ARRET в Квебеке, дало нам действительно крутую ОпСистему. Я пержу в вашем общем направлении, англосаксонские свиньи! (Просьба не принимать на свой счет: этот выпад на совести автора оригинального текста — прим. перев.)

Создание полностью новой ОСи с нуля, просто потому, что ни одна из существующих не была в натуре правильной, потрясло меня, как действие такого колоссального нерва, что я почувствовал необходимость поддержать его. Я купил BeBox как только смог. BeBox был двухпроцессорной машиной, «умощенной» (powered by) процами от «Моторолы» (да-да, эта фирма не только телефоны умеет — прим. прев.), сделанной специально, чтобы выполнять BeOS; он не мог выполнять никакую другую операционную систему. Вот почему я купил его. Я ощущал это как способ, сжечь мои мосты. Наиболее отчетливая фишка — две линейки светодиодов на лицевой панели, которые ездили вверх и вниз, подобно тахометрам, чтобы передать ощущение, насколько круто пашет каждый процессор. Я подумал, что это выглядит прикольно, и, кроме того, я прикинул, что, когда компания вышла из бизнеса через несколько месяцев, мой BeBox оказался ценным коллекционным образцом.

Теперь, примерно двумя годами позже, я печатаю это на моем BeBox. Светодиоды (Das Blinkenlights, как их называют в «пчелином» сообществе) весело мерцают около моего правого локтя, когда я нажимаю клавиши. Корпорация Be. все еще в бизнесе, хотя они перестали делать «яшшики для Be» почти сразу после того, как я купил свой. Они сделали печальное, но вероятно самое мудрое решение, что «железо» было гнилой игрой, и портировали BeOS на аналоги «Макинтошей» и сами «Маки». Так как те использовали того же типа процы от «Моторолы» (так и хочется сказать, «от мотороллера»), которые «умощняли» BeBox, это было не особенно трудно.

Затем, очень скоро, «Яблоко» задушило изготовителей клонов «Мака» и восстановило «железную монополию». Так, на некоторое время, единственные новые машины, которые могли бы выполнять BeOS были сделаны «Яблоком».

В этой точке «Пчела», как Спайдермэн с его паучьей сутью, испытала острое чувство, что она оказалась на грани того, чтоб быть раздавленной подобно жуку. Даже если бы она и не поимели такое ощущение, представление о зависимости от «Яблока» — такого хрупкого и все еще своенравного — для ее непрерывного существования означало бы всеобщий кошмар. Теперь, вовлеченные в свое собственное рисковое приключение для прыжков по крокодилам, «пчеловоды» портировали BeOS на процы от Intel — те же чипы, что используются в машинах «Окон». И не далек был тот момент, когда «Яблоко» выступило со своими новыми высококачественными «железяками», основанными на «мотороллерном» чипе G3, они утаили технические данные, которые нужны были инженерам Be, чтоб запускать BeOS на тех машинах. Это убило бы, «Пчелу», подобно пуле прямо промеж глаз, если бы они не перепрыгнули на Intel.

Теперь, значитца, BeOS пашет на почти невероятно пестром ассортименте «железяк»: «БиБоксы», устаревшие «Маки» и их безымянные клоны, и машины Intel, которые ориентированы на использование с «Окнами». Конечно, последний тип железа вездесущ и потрясающе дешев в последнее время, так что может показаться, что «железные проблемы» «Пчелы» наконец-то заканчиваются. Некоторые немецкие хакеры даже нашли замену Das Blinkenlights: это комплект печатных плат, который вы можете подключить к PC-совместимой машине, выполняющей BeOS. Он дает вам «прыгающие» изображения тех светодиодных тахометров, которые были такой популярной фишкой «Пчелиного яшшика» (не улья, а BeBox, разумеется — прим. перев.).

Мой BeBox уже выглядит старым, как и все компьютеры через пару лет, и рано или поздно мне, возможно, придется заменить его машиной Intel. Даже после этого, однако, я все еще смогу им пользоваться. Поскольку, неизбежно, кто-то теперь портирует «Линух» на BeBox.

Во всяком случае, BeOS имеет чрезвычайно хорошо продуманный ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ, основанный на технологическом каркасе, который твердо стоит на ногах. Он зародился на почве современных объектно-ориентированных принципов софтостроения. Программное обеспечение BeOS состоит из псевдонезависимых программных сущностей, называемых объектами, которые «общаются» посылая «сообщения» друг другу. Сама ОпСистема состоит из таких объектов, и служит чем-то вроде почты или Интернета, который переправляет сообщения, туда и обратно, от объекта к объекту. ОпСистема многопоточная, это означает, что как все другие современные ОСи, она может ходить и жевать жвачку одновременно; но также дает программистам большую власть над размножением и завершением потоков, или независимых подпроцессов. Это также мульти-процессорная ОСь — значит, она от рождения хороша в работе на компьютерах, которые имеют более чем один центральный процессор (Linux и Windows NT также могут делать это профессионально).

Для ее пользователя, большим сильным аргументом в пользу BeOS является встроенное терминальное приложение, которое позволяет вам открываться окна, которые эквивалентны окнам xterm в Linux. Другими словами, интерфейс командной строки доступен, если вы этого хотите. И поскольку BeOS «срублена» в определенном стандарте, названном POSIX, она способно выполнять большинство все тех же «ГНУ-сных» софтинок (POSIX — стандарт де факто для переносимой операционной системы: среди «настоящих» ОпСистем считается хорошим тоном хотя бы частично его поддерживать — прим. перев.). То есть этот обширный массив софтинок командной строки, разработанных «ГНУсным сбродом», будет работать в терминальных окнах BeOS без всяких гвоздей. В него входят и «ГНУсные» инструментальных средства разработки — компилятор и компоновщик. И он включает все удобные небольшие софтинки-утилиты. Я пишу это, используюя современный, типа дружественный, текстовый редактор названный Pe, написанный голландцем по имени Маартин Киккмен, но, как только мне приспичит выяснить насколько он велик — я перескакиваю в терминальное окно и запускаю «wc.»

Как предполагается в примере сообщения о дефекте, которое я цитировал раньше, люди, которые работают для «Пчелы», и разработчики, которые пишут код для BeOS, кажется, нравятся самим себе больше, чем их коллеги в других ОпСистемах. Они также кажутся более разнообразыми в общих чертах. Пару лет тому обратно, я пришел в аудиторию в местном университете, чтобы увидеть некоторых представителей Be, участников презентации. Я пришел, потому что подумал, что место окажется пустым и гулким, и я почувствовал, что они заслужили аудиторию по крайней мере из одного. Фактически, я остался стоять в проходе, примерно сотня студентов заняли все место. Это было подобно рок-концерту. Один из двух «пчелиных» инженеров на сцене был черный, что к несчастью — очень редкая вещь в высокотехнологичном мире. Другой сделал звонкое обличение ремезла, и превознес BeOS за ее свободные от ремезла качества, и в натуре разошелся и заявил, что через десять или пятнадцать лет, когда BeOS станет вся «заремезленной», подобно MacOS и «Окну» 95, это будет время, чтобы просто выкинуть ее нафиг и создать новую ОпСистему с листа. Я сомневаюсь, что это официальная политика «Пчелиной Корпорации», но это, уверен, произвело большое впечатление на каждого в том зале! В поздних восьмидесятых, MacOS долго была, ОСью крутых людей — художников и творчески мыслящих хакеров — и BeOS, кажется, имеет потенциал, чтобы привлечь ту же толпу теперь. В «мыльных» списках Be собираются хакеры с именами типа Владимир и Олаф и Пьер, посылая ругательные письма друг другу на ломанном техноанглийском.

Единственный реальный вопрос о BeOS — обречена она или нет.

За последнее время, Be отреагировала на утомительное обвинение, что они обречены, утверждением, что BeOS — «медийная операционная система», сделанная для производителей медийного конента, и, следовательно, на самом деле не конкурирует с «Окнами» вообще. Это — немного неискренне. Возвращаясь к аналогии автомобильных сделок, она подобна дилеру «Бэтмобилей», заявившему, что он на самом деле не конкурирует с другими, поскольку его автомобиль может ездить в три раза быстрее и даже способен летать.

Be имеет офис в Париже, и, как упоминалось, разговор в списках рассылки Be имеет сильный европейский привкус. В то же самое время они приложили огромные усилия, чтобы найти нишу в Японии, и Hitachi недавно начала увязывать BeOS со своими «ПиСюками». Так что, если я должен сделать дикую догадку, я, пожалуй, скажу, что они играют в Го, пока Microsoft играет в шахматы. Они остаются свободными сейчас от подавляюще прочной позиции Microsoft в Северной Америке. Они пытаются закрепиться у краев доски, как в Европе и Японии, где люди возможно более падки до альтернативных ОСей, или, по крайней мере, более враждебны к Microsoft, чем в Соединенных Штатах.

Что держит Be спиной к этой стране — то, что интеллектуальные люди боятся выглядеть похожим на лохов. Вы рискуете выглядеть наивным, когда говорите «Я попробовал BeOS и здесь — то, что я о ней думаю» Кажется более умным говорить, «шансы Be отвоевать новую нишу на очень конкурентоспособном рынке ОпСистем близки к нулю.»

Это, технически говоря, проблема «разделения мозгов»(mindshare). И ОСином бизнесе, эти «мозги на шару» — больше, чем просто вопрос ПиАра; у него есть прямое влияние на саму технологию. Все переферийные примочки, которые можно навесить на персонального компьютера (это я специально так выразился — прим. перев.) — принтеров, сканеров, интерфейсов PalmPilot, и «Мозговых штормов» Lego — требуют софтинок, которые называются драйверы. Аналогично, видеокартам и (в меньшей степени) мониторам нужны драйверы. Даже материнские платы разных типов, представленные на рынке, обращаются к ОСи другими способами, и отдельным программным кодом, необходимым для каждой из них. Весь этот «железно-специфический» код должен не только быть написан, но также тестироваться, отлаживаться, модернизироваться, сопровождаться и поддерживаться. Поскольку рынок «железа» стал таким обширным и заумным, что действительно определяет судьбу ОпСистемы — не то, как хороша ОСь технически, или сколько она стоит, но больше доступностью аппаратного-специфического кода. Линуховые хакеры должны написать этот код сами, и они сделали изумительно хорошую работу, продолжая успевать это. Корпорация Be. должна написать все свои драйверы сама, хотя когда BeOS начала набирать обороты, независимые разработчики начали поставлять драйверы, которые доступны на вебсайте Be.

Но владения Microsoft сейчас велики, из-за того, что ей не нужно писать свои собственные драйверы. Любой изготовитель «железа», поставляющий новую видеокарту или периферийное устройство, на рынок сегодня, знает, что ее будет не продать, если она приходит без специфического аппаратно-зависимого кода, который заставит ее работать под «Окном», и значит каждый изготовитель «железа» принял бремя создания и сопровождения собственной библиотеки драйверов.

Обмен разумов

Утверждение правительства Соединенных Штатов, что Microsoft имеет монополию на рынке ОпСистем может быть наиболее нелепой претензией, когда-либо предъявленной юридическим умом. Linux, технически превосходящая операционная система, доступна свободно, и BeOS доступна по номинальной цене. Это — просто факт, с которым следует считаться, любите ли вы Microsoft или нет.

Microsoft в натуре велика и богата, и, если некоторые правительственные мудрецы так уверены, они нехорошие парни (они — это Микрософт, — прим. перев.). Но обвинение в монополии просто не имеет никакого смысла.

Что действительно происходит — то, что Microsoft захватила, во время оно, определенный тип господствующей высоты они доминируют в соревновании по разделению мозгов (mindshare — вообще-то, это обмен опытом, но идиома, я полагаю, и так понятна на ум приходит еще и Обмен разумов, кого-то из ихних авторов… кто догадался — может взять с полки пирожок — прим. перев.), и значит, любой изготовитель аппаратных средств или программного обеспечения, который хочет быть воспринятым серьезно, чувствует себя обязанным сделать продукт, который совместим с их операционными системами. Поскольку Окно-совместимые драйверы, получается, пишутся железными изготовителями, Microsoft не обязана писать их сама; фактически, изготовители железа добавляют новые компоненты к Винде, делая ее более совместимой ОСью, не привлекая для этого Microsoft. Это — очень хорошая позиция, чтобы ее иметь. Единственный способ, поиметь такого оппонента, это завести армию очень крутых кодировщиков, которые пишут эквиалентные драйверы бесплатно, как Линух и делает.

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

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

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

Преобладание в обмене разумов является, другими словами, действительно диковинным зверем, чем-то, что определители наших антитрестовских законов возможно не способны представить себе. Он выглядит похожим на одно из этих современных, эксцентричных явлений теории хаоса, сложнейшей штукой, в которой целая куча независимых, но связанных сущностей (компьютерных пользователей всего мира), принимая решения себе на уме, согласно некоторый простым правилам голосования, порождают большой феномен (общего преобладания на рынке одной компании), который не может иметь смысла при любом типе рационального анализа. Такие явления чреваты скрытыми точками локальных максимумов и все-запутывающими причудливыми циклами обратной связи, и не может быть понят; люди, которые пытаются, заканчивают (a) сходом с катушек, (b) отказываясь пытаться, (c) формируя сумасбродные теории, или (d) становясь высокооплачиваемыми консультантами по теории хаоса.

Сейчас, возможно есть один или два человека в Microsoft, тупых достаточно, чтобы поверить, что преобладание в обмене разумов — что-то типа стабильной и стойкой позиции. Может быть, это даже делает некоторых из чудаков, которых они наняли в краю чистого делового функционирования, зелотами, которые продолжают получать повестки в суд от разъяренных судьей. Но большинство их должно обладать умом, чтобы понять, что подобные явления сводят с ума своей неустойчивостью, и не факт, что странные, на вид непоследовательные события не могут заставить систему перейти в совершенно другую конфигурацию.

Для того, чтобы перевести ее на другой путь, Microsoft может быть уверена, что Томас Пенфилд Джексон. Это могло бы объяснить некоторое поведение Microsoft, как например, их политику хранения офигительно больших резервов наличных, размещенных там и сям, и экстремального беспокойства, которое они (не наличные, а компания-вкладчик — прим. перев.) показывают всякий раз, когда что-то типа Java маячит на горизонте.

Я никогда не видeл изнутри здание Microsoft, где зависают высшие руководители, но я поимел такую фантазию, что в прихожей, на равных интервалах, большие красные аварийные ящики прикреплены к стене. Каждый содержит большую красную кнопку, защищенную оконным стеклом. Металлический молоток болтается на цепи около нее. Выше — огромный знак, вопиющий В СЛУЧАЕ АВАРИИ В ДОЛЕ РЫНОЧНОГО УЧАСТИЯ, РАЗБИТЬ СТЕКЛО.

Что случается, когда кто-то бьет стекла и хреначит по кнопке, я не знаю, но на это без балды было бы интересно поглядеть. Кому-то померещится обрушение банков во всем мире, когда Microsoft забирает свои денежные резервы, и плотно упакованные пачки счетов на сотни долларов, валящиеся с неба. Несомненно, у Microsoft есть план. Но что я действительно хотел бы узнать, — не испустили бы, на некотором этапе, их программисты мощный вздох облегчения, если бы бремя написания ЕДИНОГО УНИВЕРСАЛЬНОГО ИНТЕРФЕЙСА КО ВСЕМУ И СРАЗУ вдруг свалилось с их плеч.

Правый мизинец Бога

В его книге «Жизнь Космоса», которую всем неплохо почитать, Ли Смолин (Lee Smolin) дает наилучшее описание, которое я когда-либо читал, о том, как наша вселенная возникла из необъяснимо точной балансировки всех фундаментальных констант. Масса протона, сила гравитации, предел слабоядерного взаимодействия, и несколько дюжин других фундаментальных констант полностью определяют, какого типа вселенная возникнет из Большого Взрыва. Если б эти величины были даже немного другими, вселенная могла бы быть обширным океаном тепловатого газа или горячим сгустком плазмы, или некоторой другой в не особенно интересной вещью — короче, отстоем. Единственный способ, чтобы получить вселенную, которая не отстой — ту, в которой есть звезды, тяжелые элементы, планеты, и жизнь — это сделать основные числа правильными. Если бы была некоторая машина, где-нибудь, которая могла бы плеваться вселенными с произвольно выбранными величинами для их фундаментальных констант, тогда на каждую вселенную, подобную нашей, она должна производить 10 в 229 степени отстойных.

Хотя я не сидел и не считал эти цифры, мне это кажется сравнимым с вероятностью заставить юниховый компьютер делать нечто полезное, зарегистрировавшись в tty и печатая в командной строке, когда вы забыли все небольшие опции и ключевые слова. Каждый раз, когда ваш правый мизинец (каюсь, не знаю адекватного эквивалента right pinky, что однако породило шутку в переводе названия главы «Right Pinky of God» — прим. перев.) нажимает кнопку ВВОД, вы делаете другую попытку. В некоторых случаях операционная система не делает ничего. В других — она стирает все ваши файлы. В большинстве случаев она просто даст вам сообщение об ошибке. Другими словами, вы получаете кучу отстоев. Но иногда, если вам поимелось сделать все в точечности правильно, компьютер пережевывает это некоторое время и затем выдает что-то типа emacs. Он действительно генерирует сложность, которая является критерием интересности по Смолину.

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

Я думаю, что посыл здесь очень ясный: где-нибудь вне и за нашей вселенной — операционная система, закодированная в незапамятные времена каким-то, типа, хакером-демиургом. Космическая операционная система использует интерфейс командной строки. Он работает на чем-то вроде телетайпа, очень шумного и горячего; «выбитые» биты сыплются вниз в свой бункер, подобно разлетающимся звездам. Демиург сидит за своим телетайпом и отстукивает одну строку команд за другой, определяя величины фундаментальных физических констант: universe — G 6.672e-11 — e 1.602e-19 — h 6.626e-34 — protonmass 1.673e-27…

И, когда он закончит набирать командные строки, его правый мизинец колебается над клавишей ВВОД втечение эона-другого, со своеобычным удивлением по поводу того, что происходит, когда нажатие таки случится — и КЛАЦ, который вы слышите, — новый Большой Взрыв.

Теперь ЭТО — крутая операционная система, и если такую вещь действительно сделали бы доступной в Интернете (бесплатно, конечно) каждый хакер в мире мог бы загрузить ее немедленно и затем просидеть ночь напролет, подолгу возясь с ней, бацая вселенные направо и налево. Большинство их было бы замечательно дурацкими вселенными, но некоторые из них могли бы быть просто изумительны. Потому что те хакеры стремились бы к гораздо более амбициозной цели, чем вселенная, в которой есть немножко звезд и галактик. Любой заурядный хакер мог бы сделать это. Нет, способом приобрести высокую репутацию в Интернете могло бы стать настолько хорошее трюкачество с вашей командной строкой, что ваши вселенные должны спонтанно породить жизнь. И как только способ, сделать это станет общим знанием, те хакеры должны поторопиться, пытаясь заставить их вселенные породить правильный тип жизни, пытаясь находить одно изменение в энном десятичном порядке некоторой физической константы, которое должно дать нам Землю, на которой, скажем, Гитлер был принят в школу искусств, в конце концов, и закончил свои дни как уличный художник со странными политическими взглядами.

Даже если бы эта фантазия осуществилась, хотя, большинство пользователей (включая меня самого, в определенные дни) не захочет помешать собрату обучаться использовать все те заумные команды, и бороться со всеми неудачами; несколько вселенных неудачника могут действительно загромоздить ваш фундамент. После того, как мы потратили время на набирание командных строк и удары по ЕНТЕРу и размножение тупых, отстойных вселенных, мы должны начать ожидать ОпСистему, которая может пройти весь путь к противоположному пределу: ОСь, которая имеет власть, чтобы делать все, чтоб нам жить нашей жизнью для нас самих. В этой ОпСистеме, все возможные решения, которые мы могли когда-либо захотеть сделать, преопределены умными программистами, и сконденсированы в серию диалоговых меню. Нажимая на радио-кнопки мы могли бы выбраться из взаимно исключительных выборов (Гетеросексуальный/гомосексуальный). Столбцы независимых опций должны позволять нам выбирать вещи, которые мы бы хотели поиметь в нашей жизни одновременно (ЖЕНИТЬСЯ/НАПИСАТЬ БОЛЬШОЙ АМЕРИКАНСКИЙ РОМАН) и для более сложных опций мы могли бы заполнить небольшие «текстовые ящики» (КОЛИЧЕСТВО ДОЧЕРЕЙ… КОЛИЧЕСТВО СЫНОВЕЙ…).

Даже этот интерфейс с пользователем сделается на вид ужасно заумным через какое-то время, с таким количеством выборов, и таким обилием скрытых взаимовлияний между выборами. Это могло бы стать проклятием почти неуправляемым — проблема мигающего двенадцати, все по новой. Люди, которые бы привели нас к этой операционной системе должны были бы обеспечить шаблоны и мастера, давая нам несколько жизней по умолчанию, которые мы могли бы использовать в качестве начальной заготовки для проектирования наших собственных. Есть шансы, что эти жизни по умолчанию, могут действительно выглядеть, черт их побери, чудо как хорошо для большинства людей, хорошо достаточно, во всяком случае, чтоб они сопротивлялись соблазну вскрыть их и повозиться с ними, из-за страха сделать их хуже. Таким образом, после нескольких версий программное обеспечение должно начать выглядеть гораздо более простым… Вы бы загрузили его и оно бы предоставило вам диалоговое меню с единственной большой кнопкой в середине, помеченной как «ЖИВОЙ». Как только вы нажали эту кнопку, ваша жизнь начинается. Если вообще ничего из этого не вышло, или не оправдало ваши ожидания, вы могли бы пожаловаться на это в «Отдел Поддержки Клиента Microsoft». Если вы наткнулись на сук по пути, он или она должна сообщить вам, что ваша жизнь была в натуре хорошая, что с ней не было никаких проблем, и в любом случае она будет много лучше после того, как будет скачан следующий апгрейд. Но если бы вы заупрямились и идентифицировали себя как «Продвинутого», вы могли связаться с настоящим инженером.

Что инженер сказал бы, после того, как вы бы объяснили вашу проблему, и перечислили все неудовлетворенности в вашей жизни? Он бы вероятно сообщил вам, что жизнь является очень трудной и сложной вещью, что никакой интерфейс не может изменить ее, что каждый, кто верит в иное — отсос, и что если вы не любите получать готовые ответы на вопросы, вам пора начинать делать ваши собственные.



Поделиться книгой:

На главную
Назад