Ральф вошел в помещение ангара №1 в 8:30 утра, как делал это ежедневно уже несколько лет. Его взгляд сразу же устремился к центру зала, где на постаменте, окруженный множеством приборов и паутиной кабелей, находился смысл его работы. Собственно говоря, не только его — миллионов людей по всему миру. Первый инопланетный корабль. Полтора десятилетия назад он совершил аварийную посадку и был частично поврежден, оставив, однако, весьма много материала для изучения. Настоящим чудом стало то, что политики и учёные после этого события не переругались, а смогли организовать эффективное изучение свалившегося с небес подарка. На реверс-инжиниринг корабля были брошены лучшие умы планеты. Ральф, возглавляющий группу изучения приборов связи, стоял в ангаре и в который раз любовался стремительной, похожей на стрелу в полёте, формой корабля. Он вспоминал всё, что случилось за последние годы.
Почти сразу стало ясно, что техническая мысль создателей аппарата ушла далеко вперед. Нашлось, всё-же, в инопланетной технике и кое-что знакомое. Год за годом учёные изучали корабль, пытались восстановить отдельные его узлы — и со временем кое-что начало получаться. Сначала удалось проникнуть внутрь. К сожалению, корабль оказался беспилотным, так что встретить внутри живых или пусть даже мертвых инопланетян не удалось. Затем понемногу начали раскрываться и другие тайны: состав материала корпуса, принцип работы двигателей, предназначение некоторых вспомогательных механизмов. Большой удачей оказалось неповрежденное состояние бортового компьютера — его удалось включить и даже со временем снять всю хранящуюся внутри информацию. Конечно, она была на полностью незнакомых инопланетных и машинных языках, но общие принципы кодирования вскоре были расшифрованы. За полтора десятка лет в инопланетном корабле удалось понять практически всё. Механизм работы двигателей оказался весьма сложным, а сами двигатели — поврежденными, однако уже начались работы по постройке собственных, аналогичных. Но даже по самым оптимистичным прогнозам, до окончания этих работ было еще несколько десятков лет. Другим успехом было открытие принципов сверх-дальней связи. Изящная теория Т-волн позволяла отправлять сообщения мгновенно на произвольные расстояния, оставив далеко в кильватере релятивизм с его смешной верой в максимальность скорости света. Тайны отступали одна за одной — звёздные карты, записи «черного ящика» корабля, алгоритмы работы бортовых систем, устройство датчиков. Всё это дало современной физике не то что толчок — целую серию сверх-мощных пинков и в данный момент лаборатории и заводы по всему миру активно изучали, осваивали и применяли на практике инопланетные технологии.
Несколько недель назад была закончена первая собственная станция связи на Т-волнах. Наконец появилась возможность отправить сообщение создателям корабля. На это, правда, из-за несовершенства новой технологии нужно было бросить всю энергию планеты — и даже этого едва хватало на передачу несколько килобайт данных, да полчаса ожидания ответа. Но попытаться стоило.
Или не стоило? Мир разделился на два лагеря. Первый считал, что однозначно нужно предпринять попытку связи, поприветствовать инопланетный разум, сообщить о найденном корабле, рассказать о себе и ждать ответа. Вторые были более осторожны. Их основным аргументом были несколько нераскрытых загадок в инопланетном корабле. Например, до сих пор оставалась не понятой цель его полёта. Согласно расшифрованным алгоритмам бортовых систем кораблю была дана задача «лететь вперёд, уворачиваясь от препятствий». До бесконечности. Какая-то чушь! Он не должен был вернуться, не должен был достичь какой-то конкретной цели, не вёз пассажиров или груза. Более того, упал он исключительно из-за ошибки в программе управления полётом (оказалось, что определенная комбинация типа звезды, планеты, массы её спутника и еще нескольких параметров перебрасывали выполнение программы в ветку с неинициализированным параметром — и именно это и привело к аварийной посадке). А может быть, в этом и была цель — при появлении такой комбинации параметров — сесть, дав возможность местным жителям исследовать передовые технологии и выйти на связь? Или корабль всё-таки летел куда-то, а данная авария разрушила важные планы инопланетян? В таком случае они могут быть недовольны, могут прилететь и забрать свою собственность, могут высказать претензии на счёт захвата и порчи их техники, и вообще — мало ли как дела сложатся… Было боязно.
После долгих дебатов было принято решение на связь всё-же выйти. В сообщении рассказать о крушении корабля и приложить подробное описание найденных причин аварии, подчеркнув, что никакого внешнего воздействия на корабль не предпринималось и единственной причиной аварийной посадки была ошибка в подпрограмме (выкладки и логи прилагались). Было назначено время отправки сообщения и в этот ключевой момент истории весь мир замер, зная, что доступной энергии хватит лишь на полчаса ожидания ответа, и надеясь, что он за это время придёт.
…
Руководитель проекта создания беспилотников дальнего радиуса «Стрела» вошел в помещения отдела программирования бортовых систем и сразу позвал к себе ведущего разработчика:
—Антон, опять пришло сообщение. 7 минут назад.
—Откуда на этот раз?
—Альфа Лебедя. Точнее надо?
—Нет. Мы в том направлении отправляли только один прототип… Секундочку… Да, КЛ-15300. Что в сообщении?
—Багрепорт. Неинициализированная переменная. Весьма грамотно составлено, скажу тебе. Я уже просмотрел исходники — они правы. Наш баг.
—Ну что же, исправим.
—Исправим, конечно. Но что ответить этим, с Альфы? Они подчеркнули, что энергии на ожидание ответа у них немного.
—Стандартную форму.
—Стандартную форму? «Здравствуйте! Ваше обращение очень важно для нас, оно было зарегистрировано в нашем багтрекере под номером ...» и т.д.? Ну хорошо. Но ты уверен, что мы всё делаем верно? Что так и надо?
—Андрей, мы это обсуждали уже тысячу раз.
—Да, но…
—Никаких но, ты знаешь это не хуже меня. Уже прошло очень много лет с тех пор, как стоимость изготовления техники аналогичной нашим беспилотникам, и даже сильно более сложной, стала несоизмеримо малой в сравнении с зарплатой людей-тестировщиков. Да, мы могли бы нанять для нахождения вот этого бага с забытой переменной живого человека и он бы потратил на него — сколько? Ну пусть 2 дня работы. По нынешним расценкам это 500 эргов! А создание того беспилотника нам обошлось в 15 эргов. Даже при том, что 9 из 10 прототипов «Стрел» теряются безвозвратно, прибыль от багрепорта аварии десятого перекрывает всё. Ты же сам знаешь — оказалось, что это единственный способ.
Почти сразу стало ясно, что техническая мысль создателей аппарата ушла далеко вперед. Нашлось, всё-же, в инопланетной технике и кое-что знакомое. Год за годом учёные изучали корабль, пытались восстановить отдельные его узлы — и со временем кое-что начало получаться. Сначала удалось проникнуть внутрь. К сожалению, корабль оказался беспилотным, так что встретить внутри живых или пусть даже мертвых инопланетян не удалось. Затем понемногу начали раскрываться и другие тайны: состав материала корпуса, принцип работы двигателей, предназначение некоторых вспомогательных механизмов. Большой удачей оказалось неповрежденное состояние бортового компьютера — его удалось включить и даже со временем снять всю хранящуюся внутри информацию. Конечно, она была на полностью незнакомых инопланетных и машинных языках, но общие принципы кодирования вскоре были расшифрованы. За полтора десятка лет в инопланетном корабле удалось понять практически всё. Механизм работы двигателей оказался весьма сложным, а сами двигатели — поврежденными, однако уже начались работы по постройке собственных, аналогичных. Но даже по самым оптимистичным прогнозам, до окончания этих работ было еще несколько десятков лет. Другим успехом было открытие принципов сверх-дальней связи. Изящная теория Т-волн позволяла отправлять сообщения мгновенно на произвольные расстояния, оставив далеко в кильватере релятивизм с его смешной верой в максимальность скорости света. Тайны отступали одна за одной — звёздные карты, записи «черного ящика» корабля, алгоритмы работы бортовых систем, устройство датчиков. Всё это дало современной физике не то что толчок — целую серию сверх-мощных пинков и в данный момент лаборатории и заводы по всему миру активно изучали, осваивали и применяли на практике инопланетные технологии.
Несколько недель назад была закончена первая собственная станция связи на Т-волнах. Наконец появилась возможность отправить сообщение создателям корабля. На это, правда, из-за несовершенства новой технологии нужно было бросить всю энергию планеты — и даже этого едва хватало на передачу несколько килобайт данных, да полчаса ожидания ответа. Но попытаться стоило.
Или не стоило? Мир разделился на два лагеря. Первый считал, что однозначно нужно предпринять попытку связи, поприветствовать инопланетный разум, сообщить о найденном корабле, рассказать о себе и ждать ответа. Вторые были более осторожны. Их основным аргументом были несколько нераскрытых загадок в инопланетном корабле. Например, до сих пор оставалась не понятой цель его полёта. Согласно расшифрованным алгоритмам бортовых систем кораблю была дана задача «лететь вперёд, уворачиваясь от препятствий». До бесконечности. Какая-то чушь! Он не должен был вернуться, не должен был достичь какой-то конкретной цели, не вёз пассажиров или груза. Более того, упал он исключительно из-за ошибки в программе управления полётом (оказалось, что определенная комбинация типа звезды, планеты, массы её спутника и еще нескольких параметров перебрасывали выполнение программы в ветку с неинициализированным параметром — и именно это и привело к аварийной посадке). А может быть, в этом и была цель — при появлении такой комбинации параметров — сесть, дав возможность местным жителям исследовать передовые технологии и выйти на связь? Или корабль всё-таки летел куда-то, а данная авария разрушила важные планы инопланетян? В таком случае они могут быть недовольны, могут прилететь и забрать свою собственность, могут высказать претензии на счёт захвата и порчи их техники, и вообще — мало ли как дела сложатся… Было боязно.
После долгих дебатов было принято решение на связь всё-же выйти. В сообщении рассказать о крушении корабля и приложить подробное описание найденных причин аварии, подчеркнув, что никакого внешнего воздействия на корабль не предпринималось и единственной причиной аварийной посадки была ошибка в подпрограмме (выкладки и логи прилагались). Было назначено время отправки сообщения и в этот ключевой момент истории весь мир замер, зная, что доступной энергии хватит лишь на полчаса ожидания ответа, и надеясь, что он за это время придёт.
…
Руководитель проекта создания беспилотников дальнего радиуса «Стрела» вошел в помещения отдела программирования бортовых систем и сразу позвал к себе ведущего разработчика:
—Антон, опять пришло сообщение. 7 минут назад.
—Откуда на этот раз?
—Альфа Лебедя. Точнее надо?
—Нет. Мы в том направлении отправляли только один прототип… Секундочку… Да, КЛ-15300. Что в сообщении?
—Багрепорт. Неинициализированная переменная. Весьма грамотно составлено, скажу тебе. Я уже просмотрел исходники — они правы. Наш баг.
—Ну что же, исправим.
—Исправим, конечно. Но что ответить этим, с Альфы? Они подчеркнули, что энергии на ожидание ответа у них немного.
—Стандартную форму.
—Стандартную форму? «Здравствуйте! Ваше обращение очень важно для нас, оно было зарегистрировано в нашем багтрекере под номером ...» и т.д.? Ну хорошо. Но ты уверен, что мы всё делаем верно? Что так и надо?
—Андрей, мы это обсуждали уже тысячу раз.
—Да, но…
—Никаких но, ты знаешь это не хуже меня. Уже прошло очень много лет с тех пор, как стоимость изготовления техники аналогичной нашим беспилотникам, и даже сильно более сложной, стала несоизмеримо малой в сравнении с зарплатой людей-тестировщиков. Да, мы могли бы нанять для нахождения вот этого бага с забытой переменной живого человека и он бы потратил на него — сколько? Ну пусть 2 дня работы. По нынешним расценкам это 500 эргов! А создание того беспилотника нам обошлось в 15 эргов. Даже при том, что 9 из 10 прототипов «Стрел» теряются безвозвратно, прибыль от багрепорта аварии десятого перекрывает всё. Ты же сам знаешь — оказалось, что это единственный способ.