В районе 2000-ого года.
Дело было вечером. Серым таким вечером. Делать было опять же нечего. В ушах звучали Chemical Brothers, голова гудела и напоминала хороший вентилятор для пенька четвертого. Все бы ничего, но настроение было отнюдь не программистское, а так — лирическо-философское, когда хочется порассуждать на абсолютно глупые и очевидные темы или просто поболтать с самим собой. На экране монитора красовалось пестрое окошко Microsoft Visual Studio .NET: Как величаво и гордо звучит, аж жутко становится. Хотя, с другой стороны, есть чему звучать: Приятно работать, «удобственно».
Почему-то всегда подобные навороченные системы у меня противопоставляются одинокой и скромной консоли ДОС’а или UNIX’а. Здесь тоже есть некий шарм и величие, которое скрыто за черным экраном и белыми буковками. В голове промелькнула подлая мысль о том, что какие же идиоты сравнивают эти две ОС, даже не ОС, а, скорее всего, семейства. Даже глупо их сравнивать, просто глупо. Это тоже самое, что сравнить танк с мерседесом. Вроде оба чертовски мощны, но первый для войны, а второй для удобства и комфорта. Задачи-то разные, причем разные как южный и северный полюса, хотя и оба находятся на нашей планете. Создается такое впечатление, что люди хотят получить этакий гибрид всего и вся в одном флаконе, то есть и мощную графическую оболочку с кучей настраиваемых вкусностей, супер стабильную и дурако-устойчивую систему, обладающую всеми играми на свете в одном месте — у себя на компьютере, обслуживающую всевозможные интернет сервисы аля Web, Mail, FTP и пр., и др. Это напоминает попытку в комнату два на два метра запихнуть космический корабль да еще так, чтобы он и летал, и кушать готовил и развлекал. Хех. В результате подобных извращений мы на сегодняшний день имеем: опопсевший Linux и «серверообразный» Windows. Из общепринятых систем (за исключением вышеперечисленных) более-менее на плаву держатся UNIX образные, то есть, например, QNX, OpenBSD, IBSD, NetBSD, FreeBSD, HPUX, Solaris, SCO и прочие. Имеется ввиду что они не отходят от своих идеологических принципов и твердо идут в ногу со временем вперед.
Я не хочу отдавать предпочтение той или иной системе, т.к. для меня они равнозначны и я четко проецирую их возможности на свои потребности. Плюс ко всему, имея некоторый, пусть и не вполне профессиональный, опыт работы с обеими семействами я не собираюсь поливать грязью ту или иную систему — каждому свое. Для конечного пользователя зачастую более важен результат, чем затраты на его достижение, то есть, если юзер знает, что в юниксе игры работают быстрее чем в винде ввиду архитектуры самой ОС, но для запуска игры в юниксе нужно еще проделать массу телодвижений для достижения результата, то он — пользователь — пожертвует этой прибылью в скорости и отдаст предпочтение винде. С другой стороны, я, когда открываю виндовый журнал событий, то у меня волосы принимают стоячее выражение лица: такого обилия никому не нужной и просто бессмысленной информации я не встречал. Например: Произошла ошибка определения свойства «ProductNonBootFiles» продукта «{00020419-78E1-11D2-B60F-006097C998E7}» при запросе компонента «{CC29E9CD-7BC2-11D1-A921-00A0C91E2AA2}». Я теперь знаю как исправить эту ошибку, причем на двести процентов из ста возможных уверен в своей правоте -молотком. И подобного бреда масса. Особенно винда любит ругаться шестнадцатеричными кодами, как будто я сейчас же возьму Numega SoftIce и IDA и пойду фиксить то, что разработчик случайно нажал не ту клавишу и не в том месте пытаясь сделать свой продукт самым лучшим. В том же юниксе я точно знаю где и как я могу найти и устранить ту или иную ошибку или предупреждение и, что самое удивительное, без debugger’а. Идиотизм, однако.
On the other side, я постоянно слышу вопли: «Windows Musdie»: На резонный вопрос: «Почему?» — я слышу массу всего, кроме ответа. Хотя вру, обычно ссылаются, что в2к всгда глючит и обязательно несколько раз зависнет на дню. Юниксоиды ехидно потирают ручки и клянутся, что у них никогда ничего и нигде не виснет, а только притормаживает из-за слабой машинки: Ну да пусть, мне не жалко. Но, что самое смешное, у меня MS Windows 98, MS Windows 2000 Prof, MS Windows 2000 Server тоже никогда не виснет. Парадокс? И не глючит. Парадокс? А работаю я с ними ежедневно минимум 10 часов.
Юзвери юзверями, а если посмотреть с точки зрения админов и программистов, то здесь тоже есть поле для дискуссий. Microsoft в этом плане все «совершенствует» до технологии Click&Go — кликни мышкой и иди пить кофе, все остальное сделается за тебя. Удобно, не отрицаю, но если в одном месте прибывает, то в другом обязательно убудет. Против законов природы не пойдешь и не полетишь, увы и ах. То есть подобное удобство чрезмерно «грабит» средства для аналитики и коррекции исключительных ситуаций. В любой книжке для начинающих юзверей есть фраза: «Клавиша F1 ваш помощник везде и всегда».
Ха-ха. Если в 98-ой хэлп был еще как-то пригоден для поиска по ключевому слову, то в w2k это нечто невыносимое. Проще зайти в интернет и найти ответ на вопрос, чем пытаться это сделать в стандартном встроенном хэлпе. Когда я впервые сел за юникс, то man’ы для меня были чем-то таким, что у меня нет слов для описания. Я был, мягко говоря, поражен удобством работы, точностью и полнотой излагаемой информации. Все строго и по полочкам. Люкс! No comments. Можно сказать, что юникс и винда это как конструктор «сделай сам» и черный ящик самолета. В первом ты сам себе хозяин и только ты определяешь как работать системе, что тебе от нее требуется. При этом способов реализации одной и той же задачи — масса. Здесь w2k проигрывает по полной. Кстати будет заметить, что в windows почти все заимствовано из юниксов: девайсы, манера именования путей (UNC), скриптовые языки (VBScript, cmd), команды (тот же runAs), еще что-то, точно уже не помню. Но, если ориентироваться на юзверя, то win тут все же выигрывает. KDE красив и могуч, но уж больного много жрет памяти и процессора. Да и средств для разработки GUI в windows куда больше: Заключения я писать не умею, хотя может я вообще писать не умею, не исключено, поэтому могу лишь сказать, что Microsoft и его дитя это красивая игрушка, которую боишься затронуть, чтобы она не развалилась у тебя в руках, а unix — уродливый и невыразительный инструмент столяра, чьи руки с помощью этого инструмента делают эти прелестные игрушки.