Конкурсный текст №15

Sep 20, 2009 22:13



Привет, Мир! - dinazi

«Баг (англ. bug - жук) - жаргонное слово, обычно обозначающее ошибку в программе».
Материал из Википедии, свободной энциклопедии.

- В начале было Слово. И Слово было Программой. И в Программе был Баг.
- А железо?
- Какое железо?
- Аппаратное обеспечение. Процессор там, память...
- А-а-а, презренный металл! Мертвый металл, оживляемый Божественным дыханием Программы.
- Всё-таки без них программы были бы просто абракадаброй на бумаге.
- Ты еще скажи, что курица была раньше, чем яйцо! Тоже мне, материалист...
- Ну ладно, не обижайся. Продолжай, мне интересно.
- Так вот, сначала программы были примитивны и просты, такие же, как их созда...
- Я бы попросил!
- Нет, я не буду больше проповедовать. Ты мне и слова не даешь вставить!
- Подожди!
Но баг уже исчез: на экране монитора мерцала четко свёрстанная страница веб-приложения.
- Стёпа, ты доделал функционал по добавлению новых файлов? - раздалось за спиной.
- Да, - вздрогнул Стёпа.
- Отлично, буду тестировать, - и тут же, как будто в пустоту: - «Стёпка, хочешь щец? - Фи!»
- Да, уж она тебе натестирует, - резюмировал сосед Лёха вслед ушедшей Анке. "Хорошо ему, - подумал Стёпа, - он идеальный код пишет. Ни одной ошибки еще не нашли".

Решение быть программистом пришло к Стёпе как-то внезапно. Никогда не отличался он никакими талантами, а уж о будущей жизни, с ее тяготами и проблемами, и думать боялся. И вот однажды, классе в восьмом, учительница привела их первый раз в вычислительный зал. Странное волнение охватило Стёпу при виде рядов маленьких… телевизоров? Под каждым таким «телевизором» лежала подставка, перед каждым стояла клавиатура. Из того, что долго и трепетно рассказывала учительница, Стёпа запомнил только слово «Бейсик» - всё остальное исчезло в благоговейном созерцании маленьких «телевизоров на подставке». Потом их подвели каждого к своей машинке и дали написанную на листке программу.
И тут произошло чудо! Компьютер послушался Стёпу! Его, которого до сих пор не слушался никто: ни сестра, ни домашний кактус, ни соседская собака! Стёпа обратился к компьютеру со вполне человеческой речью - да, убогой, да, состоящей из примитивных команд, да еще и на английском! - Но это были человеческие слова. И бездушная машина, вздрогнув металлическим телом, напряглась и выдала то, что от нее просил Стёпа. Надпись «Hello, World!» заискрилась на экране монитора как тайный пароль, как заклинание, открывающее дверь в новый мир. В тот момент Стёпа понял, что никогда и ни на что не променяет эту тайное знание, этот живой разговор с неживым существом.
…Уже потом была «Матрица» и была «Глубина» Лукьяненко, но Стёпа знал: всё уже случилось. Для того чтобы погрузиться в виртуальность, не нужно втыкать разъемы в позвоночник или запускать психоделическую программу.
- Компьютерщик, - резюмировала мама.
- Компьютерщик, - пожала плечами старшая сестра.
- Компьютерщик, - махнули рукой одноклассники.
Для них, живущих в реальном мире, Стёпина радость была не понятна. Слово «компьютерщик» вызывало у них образ нелюдимого, угрюмого человека, день и ночь просиживающего за адской машиной. Уже потом появилась модная аббревиатура "Ай-ти", и острые языки сразу придали новый смысл макдональдсовскому девизу "I'm lovin it".
Стёпа заговорщически улыбался МакДональдсу.
Стёпа был компьютерщиком.

- Эй, материалист, она ушла?
- Кто?
- Кто-кто? Багоборец.
- Анка-то? Да, ушла.
- Ну, тогда слушай. Первые программы были примитивны и просты, как их созда… то есть примитивны и просты, да. Они были мертвы, потому что были лишены багов. Это были безбажные программы - поистине тёмное время...
- Погоди, ты ведь сказал, что даже в самой первой программе был Баг.
- Ты будешь слушать или нет?!
- Хорошо, молчу...

На собеседование он приехал к семи вечера. По его, Стёпиным представлениям, в это время не работает ни одна уважающая себя контора. Но в маленькой фирме с претензионным названием "Легион-софт" ещё горел свет. Вернее, свет горел в нескольких окнах огромного заводского здания, в котором фирма снимала помещение.
- Я по приглашению, - промямлил Стёпа.
- Да-да, проходите.
- Мне звонил Александр.
- Он, как генеральный директор, завершит собеседование. А я начну.
Стёпа уверенно кивнул, отпив предложенный чай из пластикового стаканчика. И тут же поперхнулся.
- Генеральный?!
Генеральный директор Александр оказался веселым длинноволосым парнем лет двадцати пяти - двадцати семи. "Лесной эльф", - машинально подумал Степа. - "Колдует природную магию. Лучник... или копейщик. Уровня сорокового, не меньше… Черт, о чем я думаю?!"
- Язык «Си-шарп» Вас устроит?
- Да мне всё равно…
- Будет тяжело, - неожиданно посерьезнел Александр. - Будет очень тяжело.
И Стёпа с готовностью кивнул.
Следующие два месяца перевернули Стёпино восприятие слов «тяжело», «долго» и «поздно», а также словосочетаний «конец рабочего дня», «дружный коллектив» и «взыскательное начальство». С утра Легион казался вымершим: половина легионеров добиралась до работы к полудню; вскоре появлялся Сашка (никому и в страшном сне не пришло бы в голову называть директора Александром), брал офис в охапку и вёл всех обедать в кафе по соседству. После обеда собирались уже все, и тогда в офисе начиналось настоящее веселье. Кто-то рассылал последние шутки из сети, кто-то прогуливался по коридору с сигаретой и, задрав голову, пускал в потолок дым. Кто-то ругался с девушками в режиме он-лайн (таких легко выявить по слишком быстрому и уверенному перестуку клавиш), кто-то просто лазил по интернету.
И при этом все работали! И завершали работу в срок! Стёпа работал усердно, изучая новый для себя язык программирования. Он почти не вставал с рабочего места, он выполнял всё, что ему говорили - и не успевал, не успевал критически!
Испытательный срок подходил к концу. Однажды вечером Стёпа в задумчивости написал программу-пустышку, выводящую на экран «Hello, World!» Он вспомнил восьмой класс, свое трепетное, живое обращение к машине. Не работу с ней - разговор. Просьбу. И всё понял.

- Багоборцы-то? Тестеры? Нет, они нам не враги. Это эволюция, брат. Они охотятся на нас, помогая нам стать лучше. Мы совершенствуемся, заставляя их тоже совершенствоваться.
- Что-то не заметно, - фыркнул Стёпа, вспомнив капризный Анкин голос.
- Это ты зря. Она тоже меняется. И мы на нее влияем, и люди ваши, и особенно ты.
- Я?!
- Конечно! Она по твоей функциональности больше всего ошибок ищет.
- Зачем ей это? Чтобы навредить мне?
- Дурак ты. Так о чем это я? Ах, да. Понимаешь, «правильные» функции программы и «неправильные» - тут всё очень субъективно. Всё как у людей.
- Как это?
- А вот так. Вы, люди, ваших гениев тоже считаете сначала багами, правите их - ну то есть убиваете. А потом ставите им памятники, называете в их честь улицы и города. Честь и хвала. И всё то же самое: не похож, не планировался, не соответствуешь - с глаз долой…

В феврале фирма взяла первого инженера по качеству. Двадцатилетняя Анна Скачкова была прозвана коллегами Анкой-тестировщицей за неуемный нрав и интенсивность работы. Интенсивность эта, однако, распределялась равномерно, так как бòльшую часть рабочего времени Анка проводила в разнообразных социальных сетях и разговорах по телефону. Зато когда она вдумывалась в суть программы, порученной ее цепкому вниманию, начиналось настоящее светопреставление. Надписи вылезали за всякие рамки, куски интерфейса разъезжались в разные стороны, нужные данные в нужных местах не сохранялись или наоборот, не стирались; то и дело сыпались исключения и аварийные выходы из программы; периодически зависал весь компьютер. На немой вопрос "Как?!", читаемый в глазах разработчиков, Анка с плохо скрываемым злорадством пожимала плечиками и показывала, как. Суть происходящего в электронных недрах постичь ей было не дано; зато Анка обладала феноменальной памятью. С невероятной точностью она припоминала, что именно нужно сделать, чтобы заново созерцать ошибку: запустить параллельно что-то еще, ввести какие-то особые данные, нажать на кнопку три раза быстро-быстро (а что, вдруг кто-то случайно нажмет? Нет, правда, всякое бывает), почесать правую пятку и поплясать вокруг компьютера с бубном. Однажды Анка вывела из строя программу, просто оставив ее в полном бездействии на полчаса.
В любом случае одна из указанных ей деталей была решающей. Ошибка локализовалась и исправлялась. Анка была превосходным работником и отвратительным по характеру человеком. Степа ее боялся и жалел: наверное, трудно быть человеком, видящим везде лишь недочеты и ошибки.

- Тут ведь в чём финт: Нео в «Матрице» сражался, конечно, с системой, с программой. И всё же главным врагом был кто? - Агент Смит. Оживший кусок программы. Баг. Не любите вы, люди, иных форм жизни, кроме белковых тел.
- Ты откуда всё это знаешь? Про материализм, про белковые тела?
- У меня внуки на сайте энциклопедии живут. Не баги даже - так, проблемы отображения.
- То есть ты… вы…
- Мы общаемся, мы перемещаемся и вступаем в родственные связи. Вот тебе нужны служебные программки для твоего наладонника? Я же видел, как долго и трепетно ты его оживлял.
- Да он старый совсем…
- Но работающий, поэтому ты с ним заморочился. Я знаю таких как ты: для вас машины живые независимо от возраста и популярности. Вы наши друзья.
- Вот уж спасибо. Особенно учитывая, что рано или поздно кто-нибудь найдет тебя и я убью тебя… то есть исправлю.
- Ты еще скажи, что тебе будет меня жалко!
- Да пошёл ты!
- Уже ухожу. Не обижайся. Только запомни: на том сайте, со служебными программками, в качестве секретного кода надо ввести шесть единиц - и скачивай всё что хочешь. Странный баг, такое впечатление, что его нарочно программисты внесли…
Легкая ладошка легла на Стёпино плечо. Стёпа вздрогнул.
- Крити-и-и-ический, - пропела Анка. - Правь!
- Но… смотри как красиво! - попытался оправдаться Стёпа, показывая Анке на монитор.
Анка молчала, казалось, целую вечность.
- Но ведь это… это баг, - повторила она уже другим, извиняющимся тоном.
- Это баг, - раздалось за их спинами. - Это критический баг. Но исправлять его не будем.
И двое из троих сгрудившихся вокруг монитора людей облегченно вздохнули. А Сашка окликнул дизайнера.
- Фил, вставь это в презентацию, пожалуйста.

Малый конференц-зал новенького бизнес-центра блестел от обилия стекла. Подойдя к проектору, Сашка поправил галстук и начал:
- При создании программ мы часто встречаемся с проблемами, которые не хотим решать. Но стоит ли их решать? Что если попробовать дать программе самой решать, как ей вести себя?
В зале повисла тишина. Саша перевел дыхание и продолжил.
- Конечно, есть медицина, есть точная механика, где ошибки недопустимы. Но если речь идет о развлечениях... Несовершенство, непредсказуемость - вот что мы ценим в близких нам людях. Тайна, адреналин - вот что мы ждем от развлечений. И недочеты программ помогут нам рассматривать их как живые существа. Вы можете возразить мне, что никаких случайностей в компьютерах не бывает. Бывает суперпозиция множества обстоятельств, порождающая ошибку. Но не так ли происходит и в реальной жизни с реальными людьми? Что такое случайность, что такое совпадение? Множество вполне заурядных событий влияют друг на друга, вытекают друг из друга, сплетаются причудливым узором - чтобы потом кто-то назвал это «случайностью», «чудом».
Тишина в зале, потрескивая, накалялась.
- Детище человека, машина уже давно стала живой, и живой её сделали они - ошибки, баги. Может, бессмысленно давать машине самостоятельность? Да в силах ли мы сделать это? Вспомним «Матрицу», вспомним «Терминаторов». В обоих фильмах люди первыми развязали войну, боясь неведомого. Так стоит ли нам уничтожать ошибки?
Кто-то поднял руку.
- Но ведь презентация была посвящена новой социальной сети, которую разработала Ваша фирма…
- Да, - как ни в чем ни бывало, отвечал Сашка. - Но теперь это социальная сеть для людей и программ.
Он дал знак, и Фил запустил видео. На окне проектора начальная страница сайта вдруг взорвалась тысячами осколков. Осколки эти сложились в чье-то лицо. Лицо улыбнулось оторопевшему залу, и женский голос из динамиков произнес самую первую фразу любого программиста:
- Hello, World!
А потом лицо подмигнуло, и непостижимым образом кусочки верстки сложились обратно в страницу.
- Мы гарантируем, что не программировали это заранее. Все сотрудники нашей фирмы были задействованы в поиске и воспроизведении этой ошибки, но так и не смогли ничего добиться. Зарегистрируйтесь в нашей сети и попробуйте сделать это сами. Возможно, вам повезет больше, чем нам.
«Вот и реклама заодно, - подумал Стёпа, сидящий в первом ряду, - Молодец Сашка». Ему было неудобно в костюме, он поерзал, принимая более удобную позу, и замер, когда на него цыкнула взвинченная до предела Анка. Стёпа повернул голову и заметил её.
В первый раз.
До сих пор они виделись лишь затылками. До сих пор они были противниками. А сейчас…
- Всё хорошо, - прошептал Стёпа, осторожно кладя свою ладонь на Анкину холодную кисть. - Не твоя вина, что его нашёл я, а не ты. - А потом покраснел и добавил:
- Ты красивая.

Конкурс, dinazi

Previous post Next post
Up