понедельник, 20 декабря 2010 г.

Кот удивил

Вчера с опозданием готовил собаке завтрак. Пёс в привычное время пришел и уселся на входе в кухню. Долго молча смотрел на меня грустными глазами. Так и не дождался завтрака, разочарованно вздохнул и медленно уплёлся вон, шаркая по полу когтями и укоризненно мотая опущенным хвостом.
Через некоторое время собачий завтрак доварился, я отложил кашу в мисочку, остудил, поставил мисочку на место для еды, а сам сел пить чай.
Пришёл кот (этот уже с утра наелся колбасы). Понюхал воздух. Подошёл к собачьей миске, ещё раз внимательно понюхал еду. Ничего не тронул, повернулся и молча спокойно вышел из кухни.
Ровно через 30 секунд на кухню с ошалелыми глазами влетел пёс. Сзади его подгонял кот, кусая за задние лапы зубами, и шлёпая по ляжкам передними лапами. Догнал пса до миски с едой, спокойно повернулся, коротко мяукнул ("Я ж тебе, дурню, говорил тебе еду уже положили!") и с чувством выполненного долга ушёл спать.

вторник, 12 октября 2010 г.

Ветер с моря (воспоминания)

Дочку в первом классе неожиданно попросили сделать рассказ о том, что ей запомнилось, когда они с мамой прошлой зимой ездили в Санкт-Петербург. Дочка заканючила, что ей ничего не запомнилось, что она не знает, о чем рассказывать. А на меня вдруг нахлынули воспоминания моего собственного детства. Да так нахлынули, что придется излагать.
 Жена с дочкой в Питере

Правда меня родители первый раз привезли в Ленинград уже в более сознательном возрасте, лет в 12 кажется. Самые первые впечатления были очень спокойные. Ну большой город, ну метро ооочень глубокое, ну весь центр в дореволюционных домах... Потом пришло второе впечатление, неожиданно стало казаться, что я иду по хорошо знакомым центральным улицам своего родного провинциального сибирского города. Позже мне объяснили, что застраивая каменными домами в XIX веке центральные части Томска, Омска, Барнаула и некоторых других сибирских городов, архитекторы сознательно подражали Петербургской застройке.

Но вот мы вышли на Невский проспект и двинулись в сторону Дворцовой площади. Мгновенно все предыдущие впечатления на время стерлись, исчезли, потеряли всякое значение. Что-то странное в воздухе. В воздухе ли? Как будто перехватывает дыхание, но одновременно появляется ожидание чего-то очень хорошего. Запах? Издалека доносится запах воды, водорослей... Впрочем нет, запах только сопутствует чему-то другому. Ветер? Да, пожалуй ветер! Резкий ветер, дующий от Невы вверх по Невскому и пронизывающий меня насквозь. Вот только... нет никакого ветра, так легонькие дуновения. Не раскачиваются деревья, не срываются листья, не взъерошиваются под напором воздуха волосы. И все-таки какой-то мощный поток несется сквозь меня, невидимый ветер ударяет не в лицо, а в самую душу. Именно он перехватывает дыхание, сквозь него, как сквозь пургу, трудно идти вперед, путаются мысли и одновременно прибывают силы, становится легко и свободно, хочется петь и лететь навстречу Неве.

Постепенно я привык идти сквозь этот ветер, перестал обращать на него внимание. Отвлекся на Дворцовую площадь, на знакомую по учебникам арку Зимнего дворца. А потом мы вышли к Неве на Дворцовую набережную, и здесь я снова надолго застыл, вцепившись руками в гранитный парапет. Потому что, оказывается тот невидимый, неощутимый телом ветер, сдувший все мои мысли на Невском, был лишь слабым отголоском вот этого настоящего ветра. Мощнейший неудержимый поток равномерно "дул" вверх, против течения реки, быстро расширялся и разливался по всему городу, не забывая завернуть в каждую поперечную улочку. На этот раз он сопровождался и настоящим, ощутимым ветром, холодившим лицо и наводившим рябь на воду, только был многократно сильнее его. Снова перехватило дыхание, и снова внутри забурлило сладкое предчувствие какого-то праздника. И невозможно было никуда идти, но нужно было стоять, поглощать взглядом и памятью Неву, мосты, выстроившиеся на парад в честь Дня ВМФ серые корабли Балтфлота, Стрелку Васильевского острова и низкую стену Петропавловской крепости, и дышать, дышать, дышать этим холодным, волнующим, необычным, ни на что привычное непохожим ветром.

Позже, позже, отпечатались в моей памяти и дворцы, и фонтаны, и соборы, и музеи, и Царское село. Но ощущение переворачивающего душу ветра навсегда осталось самым сильным. И если случается бывать в Питере (крайне редко, к сожалению), первым делом всегда иду к Неве. 

среда, 1 сентября 2010 г.

Windows в Университете

Хочу продолжить тему про "i = i + 1".
После тех событий, путь мальчика был предопределен: участие в Школах юных программистов, регулярные подработки на ВЦ в Академгородке во время каникул, запоминание наизусть кодов игр для программируемых калькуляторов Б3-21 и Б3-34 и тому подобное. А когда школа закончилась, и пришло время поступать в ВУЗ, сомнений в выборе практически не было - профильным для подросшего юноши мог считаться в тот момент только факультет Прикладной математики Университета, кафедра Программирования и информатики. Тем более, что этот же факультет закончила когда-то и его учительница "информатики", да и сам Университет весьма высоко котировался среди ВУЗов страны (и сейчас, как ни странно, тоже котируется).

И вот, срок обучения в Университете подошел к концу. Настал год выпуска. Это был 1992 год.
Преддипломную практику студент (назовем теперь так бывшего "мальчика") проходил в одном из местных НИИ, в научной лаборатории. Диплом писал там же. Лаборатория занималась созданием математических моделей процесса зондирования атмосферы лазером. Ну, то есть, ученые светили лазером в небо, ловили фотоэлементами отраженный свет, и на основании полученного сигнала пытались делать выводы о состоянии и составе атмосферного воздуха на разных высотах. А та лаборатория строила математические модели этого процесса, которые должны были объяснять, почему сигнал получился именно такой именно в таких условиях, и предлагать наиболее оптимальные режимы зондирования.
Впрочем, физикой и математикой процессов зондирования студент занимался крайне мало. Руководство лаборатории поручило ему (как будущему программисту) совершенно новое дело - разработать оболочку-интерфейс, которая бы визуализировала в форме графиков результаты моделирования, и чтобы работала она в новейшей на тот момент операционной системе Windows. В конечном итоге, эта программа и стала дипломной работой. В распоряжение студента выдали компьютер PC AT с 286-м процессором, с 2 Мб памяти и винчестером на целых 40 Мб. На нем была установлена Windows 3.0, а в качестве среды программирования завлаб где-то раздобыл новейший и жутко редкий Turbo Pascal for Windows (непосредственный предшественник знаменитой Borland Delphi).

Интересность и трудность работы заключалась не столько в сложном кодировании, сколько в полном отсутствии информации об особенностях программирования под Windows. Не было Гугла с интернетом, не было ни в продаже, ни в библиотеке абсолютно никаких книг, учебников, справочников и пособий на эту тему, не было ни одного знакомого, кто бы мог хоть что-то подсказать. Единственным источником информации была только встроенная справка Pascal. Ну и еще, конечно, метод проб и ошибок - написал, запустил, не заработало, переписал иначе, снова запустил, опять не заработало, и так в бесконечном цикле.
Несколько недель студент с энтузиазмом пробивался через особенности программирования незнакомого интерфейса, учился вовремя получать и освобождать DeviceContext, создавать формы с необходимыми управляющими элементами в примитивном редакторе ресурсов, быстро находить в справке нужные функции API. Постепенно начали появляться вначале визуальные прототипы программы, а позже все более набирающие реальный функционал приложения, которые уже не стыдно было показать другим сотрудникам лаборатории. По мере доработки программы, отзывы становились все более положительными. Общий вывод был примерно такой, что подобная визуализация с использованием возможностей Windows, позволяет ускорить проверку математических моделей буквально в несколько раз, то, что раньше делали за неделю, теперь можно будет успевать за день-другой.

Вот и пришел студент с этой программой защищать диплом в свой родной Университет на самый профильный, напоминаю, для программиста факультет, самую профильную кафедру. Ну что может быть более подходящим для диплома на кафедре Программирования и информатики, чем программа под новую перспективную операционную систему, реализующая новые возможности графического интерфейса этой операционной системы, написанная с интенсивным задействованием нового API этой операционной системы? Да еще к тому же имеющая реальные одобрительные отзывы от ее реальных пользователей!
Удар был получен с самой неожиданной стороны, когда студент подошел к администратору университетского компьютерного класса договариваться о времени для демонстрации работы дипломного проекта.
- Программа под Windows?! - удивленно переспросил администратор, - в нашем компьютерном классе нет и никогда не будет Windows!
- То есть почему не будет? - опешил студент, - у нас же есть современные машины, большие винчестеры, можно на отдельный раздел хотя бы временно установить, много места не займет.
- Нет, этого бесполезного монстра, я никуда ставить не буду, мне своего времени жалко, да никто мне и не позволит действующий компьютер такой ерундой занимать!
- Но ведь у меня же вся суть диплома - показать программирование современного графического интерфейса, - возмутился студент, - это же надо именно показывать, может где-то в других классах у кого-нибудь Windows есть?
- Насколько я знаю, в НАШЕМ Университете НИКТО этой дурацкой оболочкой не пользуется и не собирается. Так что рисуй свои интерфейсы тушью на плакатах.

Студент конечно возмутился, пошел разбираться к завкафедрой. Тот добрыми глазами, но очень грустно посмотрел на юношу:
- Ты же очень талантливый мальчик, ты мог бы работать над серьезными проектами, - участливо заговорил он, - зачем ты связываешься с этой никому не нужной графической надстройкой над ДОС? Ты пойми, Windows это конечно красивые цветастые иконки, курсоры там всякие мигающие, да, но ведь это только игрушки, причем очень много ресурсов отнимающие, для реальной работы эту систему никто никогда использовать не будет...
- Вообще-то, - перебил студент, - Windows, это возможность запуска нескольких программ одновременно, это стандартизованный обмен данными между программами, это стандартизованное обращение к внешним устройствам через их драйверы, это, наконец, просто удобный для пользователя интерфейс, адекватно отображающий именно то, что пользователю нужно.
- Да, я знаю, ты старательный мальчик, ты, перед тем как писать диплом под Windows, внимательно читал ее рекламу, но ты пойми, на самом деле это именно бесполезная хоть красочная игрушка. Ты же кажется на третьем курсе пытался курсовую работу на Smalltalk делать? Вот бы и продолжил им заниматься, и полезно бы было, и графический интерфейс там есть, и перспективы на нашей кафедре серьезные.
- А вот почему-то заведующий моей лабораторией утверждает, что эта самая "бесполезная игрушка" за счет удобного интерфейса реально позволяет ему в разы сократить время на разработку и анализ модели, по сравнению с существующими пакетами под ДОС, - возразил студент, - а Smalltalk сейчас - чисто учебная система, которая никем в нашем городе для решения реальных задач не используется и никаких наработок под нее нет.
- Просто романтик твой завлаб, - вздохнул завкафедрой, - он еще тоже вероятно в игрушки не наигрался, картинки красочные ему ум застилают. Наиграется немножко, и поймет, что в реальной работе Windows только мешает, уж поверь мне. Эх! Теперь уж поздно говорить, до защиты считанные дни остались, ладно защищай этот свой чудо-интерфейс под Windows, рисуй на ватмане плакаты. Жаль только, что на бесполезные вещи ты свое время тратишь...

End в каждой порядочной истории должен быть Happy. Таким он будет и здесь.
Студент тогда защитил свой диплом на "отлично". На самом деле, он защитил даже два диплома. Чтобы доказать самому себе и преподавателям, что достоин быть выпускником кафедры программирования, он за оставшиеся дни подготовил к защите дополнительно "альтернативный диплом" - издательскую систему (текстовый редактор с подгружаемыми специальными модулями) для компьютеров БК-0010/БК-0011, написанную полностью на языке ассемблера PDP-11. И настоял на том, что защищать будет обе работы по очереди. Отказать не посмели.
А операционная система Windows даже и не заметила, что в одном очень солидном Университете на кафедре информатики ее посчитали бесполезной игрушкой. Она продолжила успешно развиваться, захватывала все большую долю рынка, и благополучно живет до сих пор.

P.S.
Да, я прекрасно помню известный справочник "Персональные ЭВМ в инженерной практике", авторы которого говорили о Windows ровно то же самое, что и преподаватели того студента: http://www.fdd5-25.net/gallery/detai...?image_id=1393
Ссылка эта за кучу прошедших годов разумеется протухла. Вот так и надейся на надёжность сетевых технологий! Пройдёт всего десяток лет, от того что пытался пояснить останется лишь прах! Обидно, до жути!!! Но у меня остался скан странички той книжки, вот он:

Но этот справочник был издан в 1989 году, а готовился к печати и того ранее. Его авторы видели Windows в лучшем случае версии 2, а скорее всего и вовсе версии 1 (а нет, там упоминается перекрытие окон, это уже минимум вторая версия, тем не менее, даже и Windows 2.0 уже была вполне съедобна для реальных разработчиков). Полностью с ними согласен, Windows 1.0 действительно была концептом, демонстрацией, игрушкой, мало пригодной к реальной работе.
Но повторять те же слова на кафедре Программирования и информатики в 1992 году в адрес Windows 3.0 - это уже на мой взгляд просто маразм.

понедельник, 2 августа 2010 г.

О толщине человеческого слоя в человеке

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

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

На этот день был намечен очередной рутинный эпизод "воспитания" - погрузка угля в батальонную котельную. Наш учебный пункт располагался на территории строительного батальона пограничного отряда. Весь батальон зимой отапливался своей местной котельной. Обслуживали эту котельную кочегары из стройбата, а вот таскать в бункер котельной уголь из большой кучи, вываленной посреди двора, доверялось исключительно молодым бойцам с учебного пункта. Причем делать это требовалось "не во вред учебным занятиям", следовательно на погрузку угля нас водили исключительно вечером после отбоя, за счет сокращения времени сна. Куча угля во дворе котельной была неотъемлемой составной частью вечной мерзлоты под ней. Лопаты об нее гнулись, а толстые ломы со звоном отскакивали, выбивая лишь единичные мелкие кусочки. Тем не менее, нам, дежурному взводу, требовалось именно ломами наковырять из полностью промерзшей кучи достаточно угля для суточного отопления котельной. Далее уголь грузился в ручные носилки и перетаскивался в котельную. Носилки тоже заслуживают описания: это была железная 200-литровая бочка из-под горючего, разрезанная пополам вдоль длинной стороны, так что получались как бы две половинки цилиндра. По краям половинок донышек этих полуцилиндров проделывалось по два отверстия и в них вставлялись два тех самых стальных лома, игравшие роль ручек. Получались вполне с виду традиционные, очень прочные, но жутко тяжелые носилки с ломами-ручками, на двух человек.
Лично у меня после нескольких рейсов в котельную с подобными носилками, руки просто отказывались служить: пальцы самопроизвольно разжимались, ломы выскальзывали из рук, и носилки с грохотом валились на землю, норовя при этом еще и придавить ноги. Однако выказывать слабость было нельзя, пришлось придумать хитрость: я привязывал к двум ручкам-ломам петлю из веревки или куска проволоки и перекидывал эту петлю себе через плечи, наподобие ярма. Рукам сразу становилось легче, а окружающие начинали смотреть на меня со смешанным чувством удивления и уважения: "надо же, до чего молодежь додумалась" и "чего только эти молодые не придумают, лишь бы тяжести не таскать".

Но вот, где-то после полуночи, необходимая норма угля была наконец загружена в бункер, наш взвод построился и потопал в сторону казармы. Все надеялись на скорый отдых, но перед казармой нас ожидала злая судьба в лице дежурного по батальонной столовой. Он сообщил, что положение в столовой безвыходное, что обязанный "дежурить по картошке" взвод молодых бойцов уехал на ночные стрельбы, и что наш взвод, еще не отдохнувший от погрузки угля, единственный, кто может обеспечить всю часть на следующий день начищенной картошкой. Робкие голоса протеста, что, мол, несправедливо так с нами поступать, были немедленно заглушены окриком командира взвода. Через пять минут мы усталые, злые, голодные сидели на лавках в подсобке столовой и угрюмо ковыряли тупыми ножами мелкие и кривые (других в нашу часть не завозили) картофелины. Большинство молчало - не было сил говорить, да и не о чем. Кто не молчал, те с разной громкостью и периодичностью матерились, ни к кому специально не обращаясь, перемежая маты обещаниями лично передушить всех встречных сержантов, прапорщиков, лейтенантов, и капитанов, но в первую очередь всех кочегаров и дежурных по столовой.

В сказках все значительные события должны случаться ровно в полночь. Но тогда была уже далеко не полночь. Часы были только у командира взвода, и он в последний свой заход в подсобку говорил что-то о половине третьего ночи, и о том, что у нас подъем будет как обычно в шесть-тридцать утра, поэтому мы должны торопиться дочищать картошку. Его проигнорировали, картошки было еще много.
Внезапно дверь подсобки распахнулась, и вошли два человека из состава наряда по столовой. Они были из нашей же учебной роты и в эти сутки работали "зальными", т.е. убирали обеденный зал столовой от мусора, посуды и остатков еды. Как раз к этому моменту они закончили свою уборку после ужина. В руках "зальных" была большая 50-литровая кастрюля, которую они поставили на табурет посередине подсобки.
- Пацаны, мы вам пожрать принесли! - радостно заорал один из столовских, - у батальона на ужин жареная рыба была, так мы объедки с их столов насобирали, которые чище были, сами наелись и вам немало осталось, с четверть кастрюли наберется!

Следующие несколько секунд я не запомнил. Абсолютный провал в памяти. Такое ощущение, что я некоторое время лежал без сознания. Когда же сознание начало возвращаться, я понял, что на самом деле я не лежу, а стою на ногах, забившись в самый угол подсобки, и смотрю на кастрюлю в центре комнаты. Точнее сказать, я смотрел "в направлении кастрюли", потому что самой кастрюли за телами моих товарищей не было видно. В центре подсобки разыгрывалась настоящая битва диких зверей. Парни нашего взвода с диким рычанием и нечеловеческими криками со всех сторон рвались к кастрюле с объедками, причем те, кто оказались позади вцеплялись в прорвавшихся ближе к кормушке, рвали на них одежду, хватали за уши, за руки, за шею, отбрасывали от кастрюли, и в это же время старались запустить руки поглубже внутрь клубка тел, в надежде ощупью ухватить себе кусок. Кого-то из передних удавалось отбросить, они с диким ревом в свою очередь снова бросались в свалку, чтобы вернуть утраченный доступ к объедкам.

Пока я смотрел на эту драку, в мозгу бились примерно такие мысли: "Ужас, ужас, ужас! Это НЕ люди! Это же звери!!! Ужас, это звери, я служу в одном взводе с дикими зверями! Ужас, это точно НЕ люди! Человек не может в одно мгновение опуститься до такого дикого состояния! Звери, ужас, звери, злобные дикие звери!"
Но прошло несколько мгновений, сознание мое еще чуть-чуть прояснилось, и я заметил перед своим лицом свои же собственные руки. Тут поток бессвязных мыслей прервался, получив шокирующий удар. Дело в том, что в каждой руке у меня было по большому куску той самой рыбы из той самой кастрюли! Более того, мои руки абсолютно самостоятельно, без всякого участия сознания, по очереди, то правая, то левая, подносили эти куски к моему рту, а рот тоже совершенно самостоятельно, без моей команды, откусывал ломти этой рыбы, торопливо жевал их и глотал.
Мысли очнулись от шока и медленно поехали в другую сторону: "Это что же? Этого не может быть! Это что получается? Получается, что я сам? Получается, что я сам - ПЕРВЫЙ из этих ЗВЕРЕЙ прорвался к кастрюле, первым из всех ухватил свою добычу, потом разорвал кольцо рвущихся к еде озверевших товарищей и отбежал в уголок, наблюдать за дальнейшей дракой! Причем все это - совершенно без памяти!"

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

вторник, 8 июня 2010 г.

Как стать шпионом Антарктиды

Еще порция воспоминаний радиста пограничного отряда.
Предыдущие были здесь: Как правильно сообщать свои координаты и здесь: Свиньи и радисты .

Сцена 1: В кабинете Особиста.
Заканчивается наш курс молодого бойца, наше пребывание на учебном пункте. Перед принятием присяги всех нас по одному вызывают на собеседование с офицером Особого отдела. В свою очередь, захожу в кабинет, здороваюсь.
- Ты знаешь, что такое Особый отдел? – спросил Особист.
- Если честно, вчера первый раз услышал, - признался я.
- Мы – КОНТРРАЗВЕДКА! – Особист голосом подчеркивал всю значимость момента, - понимаешь, что это значит?
- Нууу… немного понимаю, в детстве смотрел сериал про Штирлица.
Особист слегка поморщился.
- Про Штирлица выкинь из головы. Специфика нашего Особого отдела в том, что мы всегда знаем обо всем, что творится в нашей части, - на словах "знаем обо всем" Особист опять сделал какое-то интонационное выделение и многозначительно посмотрел мне в глаза. Вероятно, пытался на что-то намекнуть.
- Вот если ты, - продолжил Особист, - вдруг узнаешь, что-то кто-то из твоих товарищей соберется дезертировать или изменить Родине, ты кому об этом сообщишь?
- По Уставу я обо всех происшествиях обязан доложить своему непосредственному начальнику, - отчеканил я.
Особист еще сильнее сморщился.
- Ну, а если не по уставу? Если ты окажешься наедине с кем-то из своих товарищей, где-нибудь в курилке, в умывальнике или в туалете, например, не смог бы ты тогда как-нибудь хитренько спросить у товарища… - Особист не закончил фразу и при этом опять принялся многозначительно смотреть мне в глаза.
- Спросить, не собирается ли он в ближайшее время изменить Родине? – удивился я, - так ведь он же мне об этом честно не расскажет.
При этих словах Особист опять начал морщиться и закатывать глаза, поэтому я поторопился его обнадежить.
- Но если я что-то такое услышу, то конечно обязательно доложу командиру!
- Все ясно, свободен, зови следующего! – проскрежетал зубами Особист и отвернулся.

Сцена 2: В умывальнике.
Затянувшееся почти на пол года обучение наконец закончилось. Мы, свежеобученные радисты, ожидали распределения, оставаться в отряде или ехать на одну из пограничных застав, при этом ходили на боевое дежурство на Приемный радиоцентр младшими смены.
Я вернулся с одной из ночных смен и в умывальнике готовился к своим законным часам дневного отдыха. Рядом мыл пол дневальный – парень с нашего же учебного пункта, только учившийся на телефониста. Условно назовем его Леха. Кроме нас двоих в умывальнике никого в этот момент не было.
- Слушай, - вдруг обратился он ко мне, - вот ты радистом на дежурство ходишь, а интересно, далеко ваши радиостанции могут связываться?
- Наши радиостанции работают на коротких волнах, - ответил я (это было общеизвестно и для своих же телефонистов секретом не являлось), - связь на коротких волнах не имеет ограничения по дальности, при правильных настройках станции и в подходящее время суток, можно связаться с любым районом земного шара.
- Как это? – удивился Леха.
- Ну, ты в школе физику учил?
- Нет, я на соревнования по классической борьбе ездил, - смущенно признался Леха, - а четверки по физике мне за спортивные успехи так просто ставили.
- Хорошо, рассказываю, в небе есть особый отражающий радиоволны слой, называется ионосфера, - я попытался устроить ликбез из школьной программы, - короткие волны отражаются от земли, потом от ионосферы, потом снова от земли, и так долго-долго скачут между землей и ионосферой (показал руками, как скачут), и могут несколько раз обогнуть весь земной шар. Поэтому на коротких волнах можно установить связь между любыми точками земного шара.
Леха наморщил лоб, пошевелил губами, что-то посчитал на пальцах, и снова обратился ко мне:
- Нет, ты все-таки точно скажи, на сколько километров ваши радиостанции могут связываться?
- Так я же тебе и говорю: на сколько хочешь! Только частоту правильную под дальность и время суток подбирай, и все.
- Нет, скажи на сколько именно!
- Слушай, Леха, ты книжки какие-нибудь читал, про морские путешествия? Например, Тура Хейердала "Путешествие на Кон-Тики" читал?
- Не читал я ничего, я спортом занимался, - опять обиженно насупился Леха.
- Ну, если очень кратко, в этой книге написано, как шесть мужиков в 1947 году поплыли на деревянном плоту через весь Тихий океан. У них с собой была маленькая военная коротковолновая радиостанция на батарейках. Так они даже с такой дохлой радиостанцией с середины океана со всем миром умудрялись связываться, понимаешь?
- Ладно, не хочешь говорить дальность связи в километрах, скажи тогда хотя бы, с какими странами из нашего отряда можно было бы связаться. Вот, например, с Японией можно? – продолжал настаивать Леха.
- Можно, - устало махнул рукой я, про себя подумав, что Япония – не слишком хороший пример дальности связи – она совсем рядом.
- А с Америкой можно? – радостно переспросил Леха.
- Можно и с Америкой, - ответил я (тоже плохой пример – до Аляски рукой подать), и чтобы прекратить этот не имеющий смысла разговор решил привести примеры стран, которые заведомо бы были на другой стороне Земли, - хоть с Америкой можно, хоть с Австралией, хоть со Швецией, хоть с Антарктидой! Русским же языком тебе говорю: дальность связи НЕ-ИМЕЕТ-ОГРА-НИ-ЧЕ-НИЙ!
 Настройка коротковолновой радиостанции Р-130

Сцена 3: Комсомольское собрание.
Комсомольское собрание несколькими днями позже. Повод – включение в дружный коллектив роты связи отряда новых бойцов, то есть нас. Выступает замполит и нудно что-то вдалбливает о любви к Родине, о необходимости отдать свой воинский долг, и бла-бла-бла, и т.д., и т.п. Душно, хочется спать. Но внезапно, одна фраза заставляет меня проснуться.
- Между прочим, - повышает голос замполит, - нам стало достоверно известно, что некоторые радисты с нашего Приемного пытаются вступить в контакт со спецслужбами США, Австралии и Швеции! Так вот, мы пока просто предупреждаем их, чтобы они этого делать не пытались, а в следующий раз будем строго карать!

Прошло уже много лет, а меня до сих пор преследует неразрешимый вопрос: почему, ну ПОЧЕМУ он тогда забыл упомянуть Антарктиду??? 

пятница, 4 июня 2010 г.

Как правильно сообщать свои координаты (продолжение воспоминаний радиста)

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

Роль группы поиска в наших учениях должна была исполнять местная Школа сержантского состава (молодые бойцы первого года службы, учащиеся на сержантов), а я по тревожному расписанию был прикомандирован в качестве личного радиста к ее начальнику, командиру группы поиска. Для краткости назовем его просто Майор.
И вот раннее утро, тревога! Наша группа поиска на пяти грузовиках выезжает в район, где "замечены" нарушители. На месте грузовики останавливаются, Майор выстраивает свою Сержантскую школу вдоль шоссе и командует "Вперед, бегом, марш!", указывая направление к вершине ближайшей сопки. Солдаты ломятся сквозь придорожные кусты, как стадо мамонтов, рвущихся к водопою. Майор бодро бежит чуть ли не впереди всех, и мне, как его личному радисту, приходится пытаться не отставать. Учебная тревога, которая сначала казалась интересным развлечением, вдруг оборачивается какой-то нехорошей стороной – мне совсем не улыбается носиться бегом за стадом будущих сержантов с автоматом и тяжелой ранцевой рацией за плечами. К счастью, оказывается, что Майор полностью солидарен с моим мнением относительно длительных пробежек. Буквально, через сто метров он останавливается, дает своим командирам отделений приказ развернуть солдат цепью поперек склона сопки и прочесывать местность, а сам степенным шагом возвращается на шоссе к грузовикам.

Дальнейший поиск нарушителей выглядел примерно следующим образом. Группа поиска, движется цепью вдоль шоссе по склону сопки в сторону заслона, заглядывая под все кусты. По шоссе на малой скорости, чтобы не обогнать группу поиска, ползет грузовик. В кабине грузовика – трое. Слева за рулем - водитель, молодой солдатик первого года службы, в центре – Майор, а около правой дверцы сижу я, высунув в открытое окошко штырь антенны Куликова. Периодически Майор приказывает мне передать по рации команды "подтянуться" или "подождать" тому или другому отделению группы поиска.
Внезапно эта рутинная картина была нарушена зазвучавшим в наушниках голосом моего коллеги, радиста штаба учений.
- Тополь-30, я Дуб-05, отвечайте! – вызывает он на частоте, выделенной нашей группе поиска.
- Я Тополь-30, на связи!
- Сообщите ваше местонахождение, сообщите, где вы находитесь, - запрашивает штаб.
- Понял, ждите, - отвечаю я.

Ответил я буднично, спокойным голосом, а внутри на самом деле все встрепенулось, сердце екнуло в предвкушении события, которого я долго ждал. Весь наш учебный поиск казался мне каким-то игрушечным: переговариваемся по рации открытым текстом, ходим строем по сопкам вдоль шоссе в каком-то непонятном направлении. Но вот сейчас, сейчас будет нечто не игрушечное, сейчас я увижу, как это делается у НАСТОЯЩИХ пограничников. Сейчас я передам вопрос штаба Майору, и он, как это показывают во всех шпионских фильмах, откроет свою офицерскую планшетку, достанет оттуда настоящую секретную военную карту, что-то отмерит по этой карте циркулем и транспортиром (все настоящие майоры и полковники так делают!), и скажет мне что-нибудь вроде "Мы находимся в квадрате Е-37, сектор 2". И я все это увижу, увижу своими собственными глазами!!! Всегда мечтал о таком!

С этими мыслями я отпустил тангенту микрофона и повернул голову налево к Майору:
- Товарищ Майор, штаб спрашивает, где мы находимся.
В следующую секунду я был вынужден застыть с открытым от удивления ртом. Майор спокойно, не меняя выражения лица, в точности повторил мое собственное действие. Он повернул голову налево, к водителю, и спросил:
- А где мы сейчас находимся?
Водитель молча захлопал глазами, но Майор смотрел ему прямо в лицо, ожидая ответа. Тогда водитель тоже повернул голову налево. Там была только дверца кабины, переадресовать вопрос было некому. Он опять повернулся к Майору, видимо хотел что-то сказать (о, я прекрасно представляю, что именно он хотел сказать!), но снова встретив прямой и требовательный взгляд Майора промолчал. Внезапно водитель решился. Он резко распахнул дверцу кабины, выскочил на шоссе и во все лопатки побежал вперед по дороге. Мы с Майором с интересом следили за ним. Водитель пробежал метров двести вперед, добежал до километрового столба, заглянул в его табличку, развернулся и ринулся обратно к грузовику. Вскочил в кабину, весь запыхавшийся, и доложил:
- Ых, ых, ых, ых, на семнадцатом, ых, ых, километре!
Майор повернул голову ко мне и очень доброжелательно, кажется с чувством хорошо выполненной работы, произнес:
- Передай штабу, что мы находимся на семнадцатом километре шоссе.

Я передавал сообщение, а сам не знал, грустить или смеяться. С одной стороны, рушились все мои детские представления о настоящих пограничных майорах. С другой стороны, зрелище было не хуже циркового представления.
Кстати нарушителей группа поиска в тот день так и не поймала. Майор неправильно выбрал место для развертывания группы, и нарушители изначально оказались позади цепочки солдат Сержантской школы. К вечеру они сами пришли сдаваться водителям оставшихся на месте высадки нашей группы поиска грузовиков.

понедельник, 31 мая 2010 г.

Свиньи и радисты (воспоминания)

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

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

Приемный – мечта всех радистов, закончивших курсы "морзянки" в местном отделении ДОСААФ и призванных на пограничную службу. Внутри чистота, до блеска выдраенный (силами молодых бойцов) линолеум, окна плотно зашторены веселенькими розовыми занавесочками (чтобы враг не подсмотрел секреты связистов). Половину стены занимает красочная таблица дежурного радиста ТДР-84, в свою очередь полуприкрытая занавеской. Обязательная принадлежность каждой комнаты – хронометр, показывающий исключительно московское время. На длинном, почти во все здание столе, установлен целый ряд коротковолновых приемников Р-155 "Брусника". Это массивные черно-серые ящики, больше всего напоминающих толстых, угловатых каменных божков в половину человеческого роста, пришедших с какого-нибудь острова Пасхи, но при этом ощетинившихся переключателями, тумблерами, ручками и стрелочными индикаторами. Между могучими телами приемников приглашающе выдвинули старомодные клавиатуры телеграфные аппараты СТА-М67.
 Телеграфный аппарат между телами приемников

В противоположной от входа стороне зала видна дверь в кроссовую комнату. В кроссовой нет окон, и почти не заметен притаившийся в углу кабельный кросс, зато прямо напротив двери мрачно тлеет многочисленными рядами темно-оранжевых радиоламп, словно огромный камин, черный и с виду чугунный шкаф широкополосного антенного усилителя (ШАУ). А рядом с ШАУ хитро подмигивает матовыми лампочками столь же огромный, выше двух метров ростом, шкаф координатного высокочастотного соединителя (КВС). А вокруг всех этих технических чудес непрерывно витают, создавая совершенно сказочную атмосферу, характерные звуки радиостанции: эхом отдается по комнатам непрерывный тихий фоновый свист эфира, из нескольких динамиков слышится в разных тональностях морзянка, изредка остальные звуки перекрывает треск и хрюканье радиопомех.

Описывать Приемный могу бесконечно, он всегда стоит у меня перед глазами, но лучше перейду к чему-нибудь более событийному. Однажды, в наш пограничный отряд приехала Большая Проверка. Все конечно к ней готовились: отстирывали и наглаживали обмундирование, начищали сапоги, полы и стволы автоматов, красили асфальт белой краской, а траву зеленой. В этот день на Приемный кроме трех человек обычной дежурной смены радистов послали еще трех дополнительных бойцов – наводить окончательный порядок. И вот шестеро бездельников, включая меня, сидели у радиоприемников и пили чай с пряниками и повидлом, изредка поглядывая на улицу, не едет ли кто. Внезапно на дороге к вершине нашей сопки показался командирский УАЗик. Остатки чаепития были мгновенно убраны в сейф с документацией, и шесть пар глаз прильнули к щелям между занавесочками, гадая "сюда едут или не сюда?"
- Сюда!!! – хрипло выдохнул старший смены, когда УАЗик затормозил у самого крыльца.
Мгновенно все присутствующие, не разбирая, кто на самом деле дежурный радист, а кто просто лишний подметальщик, кинулись по "боевым" постам. Кто-то пристроился к выключенному приемнику, воткнув в него наушники и микрофон, и периодически щелкал переключателями частоты, бубня себе под нос: "Ласточка-48, я Сокол-15, как слышишь меня? Не получаю тебя, не получаю, меняем частоту, переходи на сто восемнадцатую, прием". Кто-то соединил телеграфный ключ напрямую с динамиком через генератор тональной частоты и старательно выстукивал в воздух текст вчерашней радиограммы, случайно оставшийся в мусорном ведре с прошлой смены. Кто-то подошел к таблице дежурного радиста на стене и принялся сосредоточено перевешивать бирки с буквами суточных секретных ключей с вертикальной стороны таблицы на горизонтальную и наоборот. Кто-то активно переключал коммутационные шнуры на кроссовом поле, соединяя не настроенные приемники с отключенными каналами штаба. Я лично сел за телеграфный аппарат, врубил перфорационное устройство и стал с умным видом стучать по клавиатуре, стараясь, чтобы при этом на перфоленте получались красивые узоры. Каждый занялся делом, которое бы наиболее эффектным образом показало бы Большим Проверяющим его нужность и профессиональную пригодность. А старший смены пошел открывать двери.
- Товарищ хе'нерал!!!, - заорал он как можно громче в лицо Самому Главному Проверяющему, - За время моего дежурства никаких происшествий не случилось, старший смены сержант Залетайкин!
- Вольно, - скомандовал довольным тоном Проверяющий, и шагнул внутрь, сопровождаемый двумя полковниками свиты.
Он шагнул и… замер с поднятой ногой. Челюсть его медленно отваливалась, глаза округлялись и становились бессмысленными. Совершенно аналогичные явления стали происходить с лицами полковников свиты, которые заглянули внутрь из-за спины Самого Главного. Чем больше проходило секунд, тем круглее и больше в диаметре становились глаза проверяющих. Повисла долгая пауза. Мы сами при этом вообще ничего не понимали, поэтому на всякий случай тоже замерли, непонимающе глядя на застывших в дверях офицеров. Перестали стучать ключи и пищать динамики, опустились микрофоны, моя рука замерла над клавиатурой телеграфа, кажется, даже обычный шум эфира затих.
Наконец, Самый Главный сделал над собой усилие. Все еще круглые глаза его моргнули, он откашлялся и тихим, неуверенным голосом произнес:
- Да… Хорошо тут у вас, чисто… Да, ЧИСТО… Ну, а где тут у вас СВИНЬИ живут?
Трудно передать, как мы выдержали еще целых 30 секунд, пока старший смены выпроваживал проверяющих, чтобы не упасть на пол в конвульсиях. Оказывается, они ехали инспектировать подсобное хозяйство – свинарник нашего отряда, расположенный неподалеку на той же сопке, но перепутали дорогу. Но действительно, могу себе представить, что испытывает человек, ожидающий зайти в темный и вонючий свинарник, а попадающий вместо этого в зал приемного радиоцентра. Кстати, наши связистские Проверяющие на Приемный в тот день так и не приехали.

понедельник, 26 апреля 2010 г.

Нелегкая эта работа

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

Принтер казался вполне безобидным - многофункциональное устройство (МФУ) "все-в-одном" фирмы HP, вроде бы вполне распространенной модели, во вполне рабочем состоянии. Правда в нашем банке в других офисах именно эта модель не использовалась, поэтому драйверов для нее у меня не было. Но подумал "не беда, на месте разберусь, не впервой".

Переустановил я на той машине Windows, начал ставить драйвера устройств. "Родного" диска с драйверами к этому МФУ сотрудники допофиса категорически не нашли. Полез за драйверами в Инет. Сайт техподдержки HP почему-то висел и нормально отвечать отказывался. Полез искать драйвера в Гугл. Тот услужливо выдал кучу ссылок, которые в целом сводились к тому, что есть комплекты драйверов к этому МФУ под разные языки, в частности предложил мне комплекты "AP", "EMEA1", "EMEA2", "EMEA3" и "EMEA4". Какой именно из 4-х штук "emea" мне был нужен, я не знал. Внятных объяснений сходу (при лежащем сайте HP) не нашел. Решил наугад скачать "EMEA3" и на всякий случай еще "AP". Каждый размером по 300 Мб с лишним. А у меня только одна тормознутая линия adsl на весь допофис. Драйвера качались пару часов. Когда наконец скачались, оказалось, что я не угадал - "AP" был для юго-восточной Азии, а "EMEA3" - для восточной Европы (Болгария, Румыния, Сербия и т.д.). Но время поджимало, начал ставить что есть.
Красивый инсталляционный пакет, с огромными буквами, анимированными цветными картинками и огромными, в пол экрана, пересыпающимися песочными часами на переднем плане. Первая попытка установки завершилась ошибкой примерно через 10 минут. Ошибка гласила что-то вроде "Не смогла выполниться программа hphuznatchto.exe с параметрами /abc /qwer /123fghgk456lbmdbdg321, поэтому установка будет отменена". Линейка прогресса установки шустро побежала в обратном направлении, справа налево, не оставляя надежды на правильную работу МФУ.
Но я же умный. Я догадался, что пакету не хватает предустановленного dotNet FrameWork, а сам он его поставить не догадывается. Нашел внутри инсталляционного пакета папку с дистрибутивом dotNet и вручную запустил его установку. На удивление, он нормально поставился всего за 30 минут, и даже не попросил соединение с интернетом. Красота! Снова запускаю установку драйверов принтера.
На этот раз мне удалось наслаждаться красивыми картинками процесса установки (и песочными часами) не 10 минут, как в прошлый раз, а целых 25. Процесс сильно продвинулся вперед. Но закончился он все равно аналогичной ошибкой: "Не смогла выполниться программа hpfigznatzachem.exe (уже другая) с параметрами /cba /zxcv /hphphpforever73 (уже другими), поэтому установка будет отменена". И опять отбегающая назад линейка прогресса.
Может дистрибутив битый? Хорошо, попробовал запустить установку из второго пакета, который для юго-восточной Азии. Результат аналогичный - точно та же ошибка на 25-й минуте. Снова полез в Инет. Оказывается уже ожил официальный сайт HP. Поиск по нему показал, что я был на правильном пути и те инсталляционные пакеты, которые я качал - единственно верные для данной модели МФУ. Только мне нужен был оказывается пакет "EMEA4". ADSL-модем перегрелся, скорость начала падать, но я все-таки успел до вечера докачать этот пакет. Процесс инсталляции порадовал появившимися русскими надписями, но непонятная ошибка на 25-й минуте никуда не исчезла. Других вменяемых вариантов всезнающий Гугл не предлагал. Решил попытаться установить драйвера "силовым способом", прямо указывая системе нужный inf-файл в одной из папок дистрибутива. Неожиданно это помогло. Почти нормально поставился принтер (я пишу "почти", потому что позже выяснилось, что этот драйвер принтера умудряется глючить при печати на расшаренный принтер по сети) и вобщем-то поставился драйвер сканера. Правда категорически отказался ставиться Toolbox МФУ, поэтому сканер не мог реагировать на нажатия кнопок на панели управления принтера. Но рабочий день уже давно закончился, пришлось от подобных "излишеств" отказаться.

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

четверг, 18 марта 2010 г.

i = i + 1

В одном из провинциальных городов Советского Союза жил мальчик. Учился он в обыкновенной средней школе, в восьмом классе, и, поскольку был обыкновенным мальчиком, то получал четверки и пятерки по многим предметам. Пожалуй чуть больше других ему нравилась алгебра. Чувствовалась в преобразовании уравнений какая-то неясная, но захватывающая строгость, чеканная красота. За строками абстрактных формул смутно угадывались великие законы реального мира.
Но однажды случайно этот мальчик оказался на уроке… Тогда это называли "программирование", потому что школьного предмета "информатика" еще не придумали. Так вот, оказался мальчик на уроке программирования.
- Допустим, у нас есть переменная "i", понятно? – начала учительница.
- Конечно понятно, я же алгебру знаю, что такое переменные слыхал, - ответил мальчик.
- Допустим, мы хотим присвоить этой переменной значение "1".
- Логично, на то она и переменная, чтобы принимать какое-нибудь значение.
- Для этого мы напишем в программе оператор "i = 1", понятно?
- Ну чего ж тут непонятного ? "i = 1", нормальное такое уравнение, проще не бывает, все и ежу понятно, - проворчал мальчик.
- Хорошо, а теперь представь, что у переменной i уже есть какое-то значение, а тебе нужно увеличить это значение на единицу. Какой оператор для этого надо написать? – продолжила урок учительница.
- Ээээ… Какое у нее значение? – замялся мальчик.
- Не важно. Любое, какое есть, но его надо обязательно увеличить на единицу.
Мальчик минуту усиленно думал, но ничего внятного в голову не приходило.
- Можно написать оператор "i = i + 1", - подсказала учительница.

Сперва мальчик опять впал в состояние ступора. Неправильное это уравнение! Никак не может быть, чтобы переменная i была равна i + 1, не бывает такого, i равна сама себе, а если прибавить единицу, то это уже не равно i. Эти мысли сердито крутились в голове, вытесняя все остальное. Но внезапно сквозь круг непонимания что-то прорвалось. Вспыхнуло какое-то озарение: две части уравнения "i = i + 1" находятся в разных временах! В правой части i + 1 – это прошлое, то что было ДО выполнения оператора. А в левой части i – это будущее, которое наступит ПОСЛЕ его выполнения. И та будущая i действительно станет равна прошлой i, увеличенной на единицу.
Все уравнения, которые мальчик раньше видел на уроках алгебры, были статичны. Они просто констатировали некие законы мира – a + b = b + a всегда равно, хоть вчера, хоть завтра. А операторы присваивания в программе – они меняют состояние памяти компьютера, меняют его внутренний мир. С выполнением каждого оператора получается что-то новое, чего не было раньше. И это новое целиком зависит от того, что написал программист.

Потом мальчика часто спрашивали:
- Ну почему ты занимаешься только компьютерами? Что такого интересного в этих непонятных железяках?
- В каждом компьютере внутри скрыт довольно сложный мир, - отвечал он, - а я – Властелин мира.

вторник, 5 января 2010 г.

4 января, восточный ветер

4 января, без четверти полночь. Сын играет в "Left 4 Dead" подключив телевизор вместо монитора. Кажется, что толпы зомби сейчас переполнят 32-дюймовый экран, стекло не выдержит, лопнет, и бесконечные волны мелких (сантиметров 40-50 ростом), но противных, вонючих и злобных мертвецов выльются на пол, заполнят собой всю комнату.
Нет, ну в чьем больном воображении родился сценарий этой игры? Откуда, ну откуда, мог появиться такой сюжет – мир, в котором нет живых, одни лишь злобные, нападающие со всех сторон, мертвецы?
Под ногами путается пёс, жарко дышит, вертится на месте, старается заглянуть в глаза. Видимо не догулял днем, придется еще раз вывести его на улицу. Одеваюсь, выходим.

Резкий и сильный восточный ветер мгновенно забивает нос и горло невесомыми, но ощутимо плотными комьями ледяного воздуха. На улице – минус 30. И ветер. Ветер не меняется уже несколько дней, с прошлого года. Перехватывает дыхание. Вокруг – ни души. На черном небе нет облаков, но и звезды почти не видны. Только две 150-метровые трубы городской электростанции извергают плотные клубы дыма. Проклятый восточный ветер пригибает дым ниже к земле, рвёт его в клочья и бросает эти клочья об стены и крыши серых домов. Дома мертвы, почти нигде не светятся окна. Дома не отвечают ветру.
Внизу – колючая поземка. Над головой – несущиеся вниз из черного неба клочья дыма. И обжигающий восточный ветер. В этом мире не может быть живых людей. Им нечего тут делать. Кажется, сейчас уже ровно полночь. И тут, за гаражами начинает выть бездомная собака. Сначала одна, потом присоединяется вторая, тоном ниже. Потом вся бродячая стая громко и жутко взывает навстречу восточному ветру.
Теперь я кажется знаю, откуда сюжет той игры...