Говорят, любой автор со временем приходит к самоповторам. И хотя плагиат у самого себя делом подсудным не считается, тем не менее, именно свой собственный, авторский суд — всегда строже, чем любой другой. Поэтому я и сам могу перечислить, откуда были взяты «исходники» всех нижевысказанных мыслей. Да, это был и РД #1 («К вопросу о конкуренции»), и РД #4 («Компьютер — зачем мы его покупаем»), и скандальный РД #5 («Пятиминутка трезвости»), и не менее скандальный РД #8 («Комплексу неполноценности посвящается»). Более внимательные, быть может, заметят в сегодняшнем материале отголоски РД #7 («К вопросу об альтернативе») и РД с многозначительным номером 13 — «Реальный компьютер» Да, все это так. Однако этому есть причины.
Увы (увы?), но колонка, которая начиналась как «ворчание», слишком стремительно выросла из своей основополагающей идеи. Затянувшееся же ворчание мало кому интересно, и, как ни странно, от него не меньше, чем другие, устает сам ворчащий. А значит, эту идею следует с достоинством похоронить и взамен ей придумать какую-то новую. Именно своеобразными «поминками» старых «Рыбных дней» и будет этот материал. А на поминках, как известно, воспоминания — не грех, а даже вроде как обязательный элемент программы. Давайте же вместе пройдемся «по пунктам» нашей любимой саги под общим названием «Как Все Плохо». Это ведь только на Западе модно расставаться с прошлым смеясь — у нас же с ним расстаются, как правило, активно топча. Кого? Да это самое прошлое! Потопчемся?..
Как молоды мы были!
Как искренне любили,
Как верили в себя!
(Н. Добронравов)
Святая простота
«Ты помнишь, как все начиналось » Да, были времена, когда компьютинг был совсем другим. Компьютеры были Большими Шкафами, в которых находились, в общем-то, жутко, с современной точки зрения, простые детальки, но совершенно ужасающего размера, и, опять-таки с современной точки зрения, «не стоящие» даже одного квадратного миллиметра какого-нибудь Athlon XP или Pentium 4 по функциональности. Память измерялась в десятках килобайтов (к примеру, 64 КБ), при этом ее приходилось еще и распределять (что там распределять?!) между различными приложениями. А ведь заниматься этим должна была какая-никакая Операционная Система, к которой даже в те времена предъявляли совершенно несуразные требования (к примеру — чтобы она была «ОС реального времени»). Писались тогдашние ОС (ну или, как минимум, значительные их части) напрямую в машинных кодах, а занимались этим люди, которые поверили в грядущий триумф нового направления человеческой деятельности, положив свою жизнь на алтарь этого триумфа, связав ее с ним и уйдя, когда он не состоялся. «Почему же не состоялся?!» — спросите вы. Потому что состоялся совсем не тот триумф. Другой немного. И наши энтузиасты были по отношению к состоявшемуся, мягко говоря, «не при делах»
«Здрасьте, я родом из Бобруйска!»
« Меня звать «гуру», по-вашему это будет «учитель». Те, кто еще помнят Майка Науменко и его группу «Зоопарк», наверняка знают и эту песню, остальным же весьма рекомендую найти и послушать, потому как более четкой и понятной трактовки термина «гуру», чем в этой песне, я ни у кого еще не встречал. Гуру — это попросту «Человек Который Знает Все». Вот так вот — скромно, без излишеств. Но как ни странно, именно «времена простоты» были «временами гуру». Потому что тогдашняя простота — она такая, она особенная была, эта простота. Просто нужно знать, что в АЛГОЛ-68 есть некоторая ошибка. Она там когда-то появилась — и теперь она есть. С ней нужно считаться — иначе труба. Где именно труба и при каких условиях — знает Гуру. А операционная система OS/ иногда странно себя ведет — но это не потому, что программист был больше озабочен тяжелой болезнью тещи (дай Бог ей здоровья!), чем написанием правильного кода, а просто потому, что «так вот сложилось». А как именно сложилось в данном конкретном случае — это, опять-таки, знает Гуру. Который, как истинный сенсей, передает свои знания не кому попадя (а то еще все узнают!), а другому, начинающему Гуру. Под подписку о невыезде, неразглашении, неупотреблении (пока работает старый Гуру) и незлоупотреблении (когда Гуру работать уже перестанет). Потому как Сокровенные Знания — дело святое, и огласке не подлежат.
Впрочем, что-то я сгущаю краски. Нет, на самом деле были и такие «экземпляры», которые применяли к себе именно вышеописанные правила игры. Однако обычно все было намного менее «заговорщицки» и гораздо более прагматично: просто не очень-то хоть кто-нибудь и хотел этим заниматься. Сокровенные Знания были необходимы в настолько малом количестве случаев, и, с другой стороны, база их была вследствие «простоты» систем настолько велика, что на возжелавших к этим знаниям приобщиться смотрели, скорее, не как на взалкавших власти и славы, а как на святых подвижников, принявших на себя бремя юдолей и скорбей человеческих. Потому как — эмпирика. А ведь эмпирика чистейшей воды, право слово! Даже если кто-то и «докапывался» до корней происходящего в тогдашних «простых» системах — то дальше по цепочке практически никто себя анализом не «заморачивал». Просто от лондонского Гуру из университета (компании, «черного ящика», ) до массачусетского Гуру ( ) доходило каким-то путем (email тогда и не пахло) сообщение, что «если байт B0 по адресу 0084 заменить на A0 — то будет тебе счастье и никаких глюков». Лондонский Гуру, соответственно, получал Высшее Сокровенное Знание (почему надо менять именно на A0, а не на A1), массачусетский же, при отсутствии желания и/или дружеских контактов с лондонским — Практическое Сокровенное Знание: что именно по адресу 0084, и именно на A0. Чего для устранения глюков было, в общем-то, вполне достаточно
Press any key
Однако времена менялись, и конкуренцию нашим сверхмощным динозаврам составили «жалкие, никчемные млекопитающие людишки», в народе (совершенно справедливо, между прочим!) прозванные «эникейщиками», венцом профессиональной деятельности которых чаще всего являлось нажатие «any key» — клавиши, подтверждающей ответ на вопрос системного сервиса или очередного «волшебника» (wizard) по настройке операционной системы. Чем же они «взяли» наших непобедимых непотопляемых «динозавров», каждый из которых мог одним движением динозаврьего хвоста снести толпу из нескольких десятков этих вредных особей? А чем, чем Количеством. Причем не собственным количеством — ибо число эникейщиков прямо пропорционально числу обслуживаемых ими компьютеров — а именно количеством обслуживаемых ими систем. Знания, глубокое понимание сути вопросов, умение сходу разобраться в глюках «железа» — это, разумеется, замечательно. До тех пор, пока «динозавр» может обслуживать один два три ну, от силы пять компьютеров. А если в его «ареале обитания» уже появилось откуда-то тридцать пять? Сто? Двести?
Физически не сможет. Тут-то и «вылупились» наши с вами любимые млекопитающие. О, нет, степень их знаний поначалу не шла ни в какое сравнение с Монстрами Компьютинга. Однако она им была и не к спеху. Зачем? Есть ОС (уже появились соответствующие), есть инструкции по ее настройке (от производителя — стало быть, «аутентичные»), есть служба технической поддержки, которую можно до посинения бомбить своими глупыми вопросами, пользуясь статусом официального покупателя данного программного обеспечения Ну и что еще, собственно, нужно? Заодно можно потихоньку самому учиться загонять мамонтов в подготовленные ямы пардон — настраивать системные сервисы без помощи Гуру. На самом же деле, редко кто обращает внимание на одну из основных причин появления «эникейщиков» как класса: профессионализм программистов компаний-разработчиков системного ПО стал с некоторого времени значительно превосходить профессионализм пользователей (в том числе, системных администраторов). В связи с чем нужда в «настолько грамотных» сисадминах просто исчезла. Можно долго спорить о том, что мы из-за этого потеряли, но именно таков был естественный процесс развития индустрии. Впрочем — не везде.
Уходим, уходим, уходим!..
Что же оставалось делать Гуру? Только одно — уходить в те области, где софт по-прежнему оставался в массе своей уникальным. Ибо только в уникальности, малоисследованности, малотиражности программного обеспечения и есть место для одиночек (в коллективе настоящий Гуру работать практически неспособен: если этот коллектив состоит из одних Гуру — то они просто перессорятся, если же Гуру работает в тандеме с «эникейщиками» — то либо группа эникейщиков рано или поздно численным превосходством задавит его, либо Гуру «задавит интеллектом» их всех — и все равно будет работать фактически в одиночку). Гуру от программирования ушли в те области, где где мы можем наблюдать данную, без сомнения, интереснейшую популяцию homo sapiens и до сих пор — в крупные вычислительные центры, больше завязанные на собственное, чем на распространенное коммерческое ПО (обычно это тот или иной аналог знакомой нам по временам СССР аббревиатуры «НИИ»), и в так называемые «суперкомпьютеры», чаще всего являющиеся разновидностью кластерных вычислителей, решающих специфические задачи (ради решения которых они и создаются).
Де-факто — гуру «проиграли». Проиграли не сами лично (куда там «эникейщикам» до зарплат и привилегий тех, что выжили!), а исключительно в плане «распространенности как вида». Просто их времена прошли. Мы можем восхищаться мастерством резчика по слоновой кости, из рук которого вышел замечательный, уникальный костяной гребень, удивительно хорошо подходящий к цвету волос нашей любимой — но у любимой «на всякий день» есть еще тридцать три гребня, и сделаны они методом банальной штамповки, из дешевой пластмассы. Впрочем, проигрыш гуру был закономерен хотя бы потому, что в самом «основании» происходили не менее значительные сдвиги
Быстрее, сильнее, тупее
Воистину — невинность IT-индустрии была впервые нарушена тем гениальным менеджером-соблазнителем, который дал голому неопытному Адаму вкусить яблоко МЕГАГЕРЦЕВ. Впрочем, яблоко Адаму не шибко помогло — Ева сразу ушла от него к тому, у кого этих самых мегагерцев было больше. Справедливости ради — и ей пришлось несладко: ее саму обменяли на очередной процессор. И пошло-поехало А у нас на плате PAT — а у вас?! А у нас уже 7.1-звук — а у вас? Это ничего, что под него колонки пока только одна компания производит, и только одну-единственную модель — ведь все равно у вас такого нету! Подхлестываемая познавшими суть Адамами (заодно уже и Евами — они ее тоже познали), индустрия занялась своей основной задачей — удовлетворением запросов покупателей. За что ее, между прочим, грех винить — любая индустрия именно для этого и существует. А уж дальше — это от покупателя зависит. Каков поп — таков и приход.
Пиля, воистину, тот самый сук, на котором сидит, IT-индустрия начала вовсю эксплуатировать неожиданно (впрочем, «неожиданно» — это, скорее, для очень недалеких производителей) свалившееся на нее «откровение»: «все есть ничто, кроме того, что считается крутым». Робкие голоса недоумевающих старорежимных «гуру», все еще помнящих законы физики и азы программистской науки, были заглушены отчаянным воплем с галерки: «А ну, давай! А ну, покажи нам 200 fps! А 300 fps слабо?! А 500?!». Не «слабо». Отнюдь нет. Мы ведь уже подготовились, ребята. У нас есть такие приборы И даже не только приборы
FX — теперь с новыми драйверами!
И действительно: приборы — это слишком сложно. Цель должна оправдывать средства, доходы должны оправдывать расходы, а все вкупе должно приводить к тому, чтобы завтра в моем кошельке оказалось существенно больше, чем сегодня. Ведь я — всего лишь честный игрок этого рынка, соблюдающий отнюдь не мной придуманные правила игры. А согласно этим правилам, каждый продукт должен быть круче (кто сказал «быстрее»?! вон из зала! в сад! вы там будете слушать!) предыдущего. И если объективно технологический процесс нам не позволяет сделать его ну, словом, сделать так, чтобы он был действительно быстрее — то это горе технологического процесса и того, кто придумал эту треклятую физику. Мы же не физики — мы бизнесмены. Бухгалтерия опровергает физику на каждом шагу — это всем известно.
«Лучше быть, чем казаться»? Эту фразу придумали трусы. Лучше казаться так, что твое «быть» никого в принципе не заинтересует! Нет, господа, моя ирония направлена отнюдь не на производителей. Это было бы слишком грубо и топорно. Да и, по большому счету, производители тут ни при чем. Они что-то там себе делают, разрабатывают, продвигают, и вроде бы даже рано или поздно оно должно дать какой-то эффект. Но — скорее, поздно, чем рано. А нужно — СЕЙЧАС. Сию минуту. И после этого вас удивляет то, что драйвера «точатся» под бенчмарки, бенчмарки точатся под процессоры, процессоры точатся под приложения (и наоборот), а все это вместе точится под то, чтобы мы увидели еще плюс пару десятков очков? А чему вы удивляетесь? Тому, что вам дают то, чего вы так хотите? То есть надо не давать, а посылать на?.. Были и такие Их банкротство — лучшее доказательство того, какой выбор сделал покупатель. Он сам привык «казаться» — а поэтому и в других такое стремление признает с гораздо меньшим внутренним сопротивлением, чем стремление к некоему непонятному (и потому пугающему) «техническому совершенству». Это как это: я себе клею турецкие обои, говоря всем гостям, что они испанские — а они себе будут клеить «в натуре испанские»?! И говорить то же самое?! Нет, это не наши люди
Кофемолка с вертикальным взлетом
Впрочем, все вышеупомянутые способы усовершенствования и, не побоюсь этого неологизма, «укрутнения» современного железа и программного обеспечения — однозначно меркнут перед главным: улучшением потребительских качеств. Вы думаете, это улучшение должно состоять в повышении надежности, оптимизации алгоритмов и снижении времени отклика? Тогда вам явно в главу «уходим, уходим ». Это ведь потребительские качества, а не какие-нибудь еще! То есть качества, ориентированные на потребителя. Что выберет потребитель: Word, «упавший» на один раз меньше в процессе редактирования письма в контору X — или собственную шикарную фотку в logon-окне операционной системы? Можете даже не сомневаться — второе. Потому что письмо в контору X все равно набирается на основе точно такого же письма в контору Z, в котором замене подлежит исключительно адрес и фамилия директора предприятия. Да пусть оно, это письмо, хоть 152 раза слетает! Даже интересно — хоть какое-то разнообразие в серых буднях привычной офисной работы.
Зато если плата человеческим голосом сообщает, что у нее все в порядке, если активное фоновое приложение смешно подпрыгивает на панели задач, если окно приложения при отправлении в background не просто тихо туда отправляется, а сворачивается сначала в «хитрую загогулину», а потом уморительно прикольно «всасывается» в свою собственную иконку (она же потом и прыгает) — вот это классно! Даже не классно — это то, что нынче модно называть словом «COOL!». А умопомрачительный корпус, сверкающий всеми цветами радуги, но с перепутанной их последовательностью? А фиолетовые слоты PCI? А клавиатура с регуляторами громкости и кнопками для вызова аж по три раза в день запускаемых приложений? А лампочка, которая начинает весело моргать, если компьютер погрузился в состояние Standby?! Это же реальный Приход Высоких Технологий в наши с вами серые квартиры и офисы! Более того — какая почва для фантазий обозревателей! Одно только предположение о том, что зеленый моргающий огонек может оказать успокаивающее воздействие на домашнее животное, а красный, наоборот, возбуждающее — уже верный абзац в статье! Да, кстати: о статьях
«Пипл хавает!» (В нежных объятьях любящего читателя)
А мы А что — «мы»? Мы — такая же составная часть IT-индустрии, как завод компании X по производству системных плат или представительство компании Y в странах СНГ. Мы точно так же обслуживаем потребителя. Кто-то там обиделся когда-то на «обслуживающий персонал»?! Полностью отдавая себе отчет в своих словах, находясь в трезвом уме и здравой памяти, заявляю: да, я — обслуживающий персонал. А кто же еще, собственно?! «Гений Игорь Северянин»? Знаете — как-то не сложилось. Был бы Игорем Северяниным — ноги бы моей в IT-индустрии не было. Даже под страхом расстрела. И не только в компьютерном масс-медиа, но и в принципе в любом периодическом издании. Независимые компьютерные масс-медиа Почему-то всем в первую голову приходит поставить под сомнение их независимость от поставщиков, продавцов или производителей компьютерных комплектующих. Напрасно. Зависимость от производителей или продавцов — это, ребятки, просто цветочки по сравнению с зависимостью от основного потребителя нашей продукции — от читателя.
Потому что читатель желает сравнения Intel Pentium 4 3,2 ГГц с AMD Athlon XP 3200+ и NVIDIA GeForce FX 5900 Ultra с ATI RADEON 9800 Pro — и хоть ты ему кол на голове теши, но обязательно с подробным объяснением того, почему же расклад удивительным образом не поменялся со времен сравнения Pentium 4 3,0 ГГц с Athlon XP 3000+ и GeForce FX уж-не-помню-какой с RADEON с-Бог-его-знает-каким-числом-в-конце. Или поменялся на ±полпирожка, что, разумеется, однозначно свидетельствует о технологическом превосходстве компании [имярек] над компанией [имярек]. А вовсе не о том, что из-за пьянства ответственного менеджера на рабочем месте заказ на чипы с частотой +100 МГц ушел на завод на три дня позже, что позволило конкуренту выпустить свой продукт на семь дней раньше. И плата на чипсете [ ] от производителя A по результатам тестов на три процента быстрее платы на том же чипсете от производителя B не потому, что в партии конденсаторов (резисторов, MOSFET, дополнить по желанию), закупленной производителем B, попался десяток бракованных, один из которых попал на протестированный экземпляр, а исключительно вследствие Глобальных Превосходств отдела R&D производителя A над отделом R&D производителя B.
А замечательные показатели некой железки в тесте [ ], опять-таки, вовсе не объясняются тем, что у программистов этого теста руки криво стояли именно в тот день, когда они писали блок, оптимизированный под проигравшую железку, а являются свидетельством Подавляющего Архитектурного Превосходства железки выигравшей. «Вы хочете песен? Их есть у меня!» Туркменский акын, взявший в руки дутар, — просто кладезь премудрости по сравнению с «классическим» обозревателем hardware. По крайней мере, акын поет о том, что видит собственными глазами — за нас же, в основном (исключения редки, и ценятся на вес золота!), «смотрят» бенчмарки. К слову — бенчмарки, как правило, еще и не нами писаные (статью Unwinder'а про 3DMark все читали?). Однако — «народу нравицца»! И кто мы такие, чтобы пилить сук, на котором сидим?!
Эпилог («Requiem for a dream», исполняет хор IT-старперов)
Все стало плохо. Гадкие юзвери, не умеющие даже перезапустить shell (или X-Window), совершенно потеряли страх и не хотят носить Мне пиво, предпочитая писать докладные директору. Драйвера пишут ламеры, которым Я (с большой, разумеется, буквы — ведь Я умею перезапускать shell) не доверил бы даже написание модуля ввода числа с плавающей запятой для Моей программы вычисления квадратного корня из произвольного числа. Ядра операционных систем занимают очень много места в памяти, а сами операционные системы стали сложны настолько, что Я не могу добиться функционирования Моей программы, добавив совсем-совсем-небольшой-хак в ядро.
Главный менеджер проекта почему-то не впечатлен полным соответствием Моих программ стандарту ANSI C и требует выучить какой-то идиотский диалект Microsoft Visual C++, грозя понижением зарплаты, а в перспективе — лишением должности. Active Directory от той же убогой фирмочки упорно игнорирует Мои знания Novell Netware NDS, хотя всем разумным людям давно известно, что лучше NDS на свете ничего не было и быть не может. Под Linux не работают GDI-принтеры и не активизируется колесо на мыши у бухгалтера, NTFS-разделы требуют дефрагментации, а я не знаю, что это такое. На предложение забацать классный вычислительный кластер на базе пяти компьютеров менеджеров из отдела продаж никто так и не отреагировал! Warcraft 2 вышел из моды, все рубятся в Counter Strike. Секретарша шефа слышать не хочет про набор писем в прекрасном текстовом редакторе TeX. Жизнь кончилась. Пора искать старый добрый коаксиальный шнур — уж он-то, надеюсь, не подведет, равно как и крюк для люстры на потолке
Оптимистическая трагикомедия (пост-эпилог)
Впрочем, может, все не так уж и плохо? Может, просто кое-что пора забыть? Однако как это — вот так вот взять и все забыть?! Забыть посиделки на кухне, моря выпитого пива и грандиозные планы осчастливливания жителей планеты Земля лучшей в мире операционной системой PTS-Win2000 (написанной, разумеется, целиком на ассемблере), работающей на лучшей в мире платформе от Бабаяна & Company с 3D-акселератором от BitBoys?! Наплевать на поруганную молодость и несбывшиеся надежды и идти «в эникейщики деньгу заколачивать»?! Или наоборот — все-таки собраться всем миром, как в старые добрые времена, да встать под знамена Че Торвальдса и его бурашек — инсталлировать вычислительные кластеры для нужд бухгалтерии Нижне-Урюпинского завода скобяных изделий? Эх, молодость моя, молодость, да лихой терминал, да админский пароль наголо, с ламеров только аккаунты летят Однако ведь подросли Мальчиши-Плохиши, денег подзаимели, условия свои диктуют — спокойной работы хотят, гады! Им ведь, плохишам, не романтика нужна — им бы платежки и накладные вовремя проводились, да деньги на счет в банке капали. Ламеры, словом. Не понять им прелести перекомпиляции ядра на лету!
А вот и мне уже не понять. Потому что романтика кончается там, где начинаются расходы на ремонт дачи/квартиры, бензин для машины с коробкой-автоматом и приличные сапоги жене на зиму. А посему — пусть. Черт с ним, с клеймом «обслуживающего персонала», — переживу! Пусть они, casual user'ы, поперхнутся моим профессионализмом! Его все равно не пропьешь, с чем бы дело ни имел. Хотят кофеварок с вертикальным взлетом на каждом рабочем месте?! Будут им кофеварки. Соберем и настроим в лучшем виде. И летать будут не хуже западных — лучше даже! И если кофеварку настроить в три раза проще, чем sendmail, в четыре раза проще, чем SQUID, а денег платят в десять раз больше — то пошел я кофеваркам хвосты крутить. А за кровные заработанные куплю себе пошарпанный i486 — пусть там дома FreeBSD 3.4 крутится на 16 метрах памяти. И прикольно, и душе приятно, и женины сапоги точно не пострадают
P.S. (по-прежнему любимым коллегам по IT-индустрии)
Хватит попусту гонять в чистом море корабли:
Самый быстрый самолет не поспеет за тобою —
Но, когда ты прилетишь, я махну тебе с земли.
(Борис Гребенщиков)