Нил Стивенсон - В начале была командная строка
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 — машинный перевод «обратная сторона крокодилов» — есть в этом что-то иносказательное — прим. перев.). Но в реальном мире вы, в конечном счете, испытываете недостаток крокодилов, или наступите на действительно умного.