Читать книгу Тайна пропавших первооткрывателей. Сказки старого принтера - Группа авторов - Страница 4
Глава 2. Алгоритм «соломоновых решений»
ОглавлениеУтро понедельника принесло с собой ещё больше вопросов, чем ответов. Лили снова появилась в офисе раньше обычного, как и в последние несколько дней. Макс тоже пришёл задолго до начала рабочего дня. Он сухо поздоровался с Лили, прошёл к своему рабочему месту, включил компьютер и погрузился в работу (на самом деле – лишь делал вид, что сосредоточен на задачах, в то время как взгляд его, то и дело, ускользал в сторону Лили).
Девушка снова, как и в выходные дни, сидела за свободным компьютером, возле окна, невольно оказавшись развёрнутой спиной к Максу. Она явно чувствовала себя неловко, ощущая его взгляд на своём затылке и на экране своего монитора. Она с заметным беспокойством закрыла на нём все окна и спрятала в карман куртки какой-то мелкий предмет, который совсем недавно подносила к экрану (и тот в ответ как будто бы странно подмигнул). После этого она прошла к своему рабочему месту, по соседству Максом, и приступила к своим обычным офисным обязанностям.
Мартин, Джонни, Молли, Изабелла – вся её команда – облегчённо вздохнули, когда она к ним вернулась. Однако в поведении Лили по-прежнему сквозило что-то неуловимо тревожное. Она всё чаще задерживала взгляд на каком-то одном символе на экране, но как будто бы не видела его, а смотрела куда-то дальше, вглубь невидимого виртуального мира. У неё также появилась привычка часто уходить в переговорную комнату или на крышу здания, оборудованную для отдыха программистов, где она пила кофе и напряжённо всматривалась в телефон, стараясь уединиться в уголке, чтобы избежать разговоров и расспросов.
В один из таких перерывов Молли обратилась к старому принтеру.
– Альберт. Мне ничего не понятно. Вчера я засыпала в прекрасном настроении. Мне казалось: ещё немного – и мы расшифруем мысли нашей Лили. И тогда мы сможем ей помочь. Но запись алгоритма ветвления ничего не прояснила, а радужные сны развеялись. Какие переменные руководят ею сейчас? Какие условия её ограничивают? Что она чувствует? Почему она так изменилась?
– Если бы всё было так просто… – вздохнул Альберт. – К сожалению или к счастью, программы людей не так просты, как нам хотелось бы. Не переживай, Молли. Мы просто не собрали всех данных. Надо продолжать наблюдать и анализировать. Есть у меня одна идея… Позже расскажу.
К их разговору присоединилась Электра:
– Поведение Лили соответствует модели скрытого взаимодействия с внешним каналом связи, – сказала она важным тоном (похоже, дружба с системами из службы безопасности не прошла для неё даром). – Возможна утечка информации. Или… попытка защитить кого-то.
– Защитить? – Молли задумалась. – Может, нас?
– Откуда такие выводы, Электра? – подал голос из серверной Оскар. – У тебя есть информация, которую я просил вчера собрать от своих подруг?
– Да, босс! Я как раз собиралась ознакомить вас с ней в обеденный перерыв. А выводы… ну, я ведь тоже обладаю каким-то интеллектом. Я тоже могу сопоставлять и анализировать наблюдаемую информацию. Не хотелось говорить об этом до начала совещания, но раз уж спросили… Так вот, обнаружилась интересная закономерность. В те минуты, когда Лили подходила к свободному компьютеру, происходили странные запросы к серверу – с подозрительно сложными маршрутами. Пакеты данных приходили через несколько промежуточных точек, словно кто-то хотел замести цифровые следы.
– Это может быть след взломщика, – пробормотал Мартин. – Или, наоборот… след антивзломщика. Кто-то профессиональный.
Карл запаниковал:
– А вдруг это Гримм? Или… его возмездие?
– Всё может быть ещё хуже! – подхватила его панику Электра. – Этот злодей завербовал нашу девочку! Он подчинил её своей воле. Вы же видите, она ходит «сама не своя», словно под гипнозом.
– Электра! Ты слишком увлекаешься обсуждением сплетен со своими подругами, – строго остановил её Оскар.
Остальные офисные устройства взволнованно зашуршали, кто чем мог.
– Нет-нет! Не может этого быть! – шептали одни.
– А вдруг может? Вдруг может? – шёпотом возражали им другие.
И лишь старый принтер не спешил с выводами:
– Всё может быть гораздо глубже, друзья мои. Мы не знаем, с кем она общается. Но я чувствую: эта история идёт корнями в её прошлое…
Тут из переговорной снова вернулась Лили, и машины замолчали. Ведь это была особенная девушка – умеющая слышать речь офисных устройств.
Между тем, начинался новый рабочий день. Офис «Цифротрон-Секьюрити» наполнялся людьми, шумно приветствующими друг друга после прошедших выходных. И вскоре в нём уже царила привычная деловая суета. Программисты спорили о новых апдейтах, кулер Карл негромко булькал, реагируя на каждую острую реплику, а мышка Молли сновала под рукой Лили, пытаясь по движениям её пальцев угадать, что у неё на душе, – расшифровать её программу.
В какой-то момент ладонь Лили соскользнула со спинки компьютерной мыши. И тогда Молли заметила, что девушка, тревожно оглядевшись по сторонам и убедившись, что никто не обращает на неё внимания, достала из кармана какой-то мелкий предмет и на мгновение поднесла его к монитору. Тот – едва заметно моргнул в ответ. И в этот миг к столу подошла Гита. Лили вздрогнула и быстро спрятала свой гаджет под кипой бумаг.
– Привет, Лили! Всё в порядке? – спросила Гита.
– Привет, Гита. Всё в порядке, спасибо, – ответила девушка как будто машинальным тоном, и мышка Молли почувствовала дрожь её ладони на своей пластиковой спинке.
– Точно? – усомнилась Гита. – Ты выглядишь как привидение. Ты здорова?
– Я здорова, Гита.
– А как Кевин?
– Тоже хорошо.
Поняв, что Лили не расположена к разговорам, Гита оставила её в покое.
Во время обеденного перерыва машины собрались в серверной. Электра, как и обещала, подготовила отчёт от камер видеонаблюдения и систем службы безопасности за прошлую неделю. Посторонних посетителей в офисе было двое.
Первый – неопрятно одетый молодой человек с ноутбуком в потрёпанном чехле. Он попросил разрешения подключиться к Wi-Fi, сказав, что ищет работу и хотел бы оставить резюме. На видео было хорошо видно, как долго он пил кофе у кофемашины, при этом – как будто закрывал собой от камер свой ноутбук, оставленный возле свободного офисного компьютера. А его девайс в это время автоматически подключился к сети, и система безопасности зафиксировала подозрительное сканирование локальных портов. И, кстати, резюме он так и не оставил. Но после этого случая на сервере появились зашифрованные данные в отдельной, ранее не существовавшей папке. И кто-то изменил доступ к ней, ограничив его правами… только для Лили.
– Совпадение? – хмуро заметила Электра тоном опытного детектива. – Я в такие совпадения не верю.
Вторым посетителем был доставщик пиццы со сломанным планшетом. Он попросил разрешения воспользоваться свободным офисным компьютером, чтобы отправить отчёт своему начальству и уточнить маршрут следующих доставок. После его действий никакой подозрительной активности не было замечено.
– Очень мутный тип, этот программист, – озабоченно произнёс Оскар. – Надо будет доложить Константину.
– И, между прочим, – добавила Электра, – этот гость так пропах дымом каких-то отвратительных сигарет, что я в тот день чуть не подняла ложную тревогу. Но вы бы опять стали надо мной смеяться. А ведь я чувствовала, я знала!
Обеденный перерыв подходил к концу, и ошеломлённые новой информацией машины разбредались по своим местам. Тут раздался телефонный звонок, и тогда все заметили, что Макс не уходил на обед и, видимо, всё слышал. Ведь он тоже был из тех, кто хорошо понимал речь офисных устройств. Юноша снял трубку:
– Алло! Здравствуйте, миссис Гудвин!.. И я очень рад!.. Нет, Лили сейчас нет на месте. У вас всё в порядке?.. Что?.. А мистер Гудвин что говорит?.. Ну, понятно… Спасибо… да… я обязательно передам.
Макс положил трубку и обернулся к машинам, застывшим, затихшим и притворившимся обычной, безмолвной офисной техникой.
– Прекратите притворяться! – сердито сказал Макс. – Да, я всё слышал. Что вообще происходит? Мы теперь все заражены недоверием? Почему у всех от всех какие-то тайны?
– Извини, Макс, – ответил за всех Оскар. – Мы не хотели делать поспешных выводов, не разобравшись. Мы опасались, что это может навредить Лили.
– И к тому же мы не понимаем, что происходит между вами, – добавила Молли. – Вы больше не друзья? Вы поссорились? Ты на неё сердишься?
– Нет же! Нет! – с досадой воскликнул Макс. – Мы не ссорились. Но она отдалилась. И я сам не понимаю, что произошло. Но скажу сразу, сплетням о её связи с Гриммом я не верю и никогда не поверю!
– Нет-нет! Мы тоже не верим, – эхом повторили его слова все сразу.
– Что ж. Значит, мы снова должны действовать в едином союзе, даже если кто-то… временно вышел из него, – решительно заявил Макс. – Вы, наверно, заметили, что я тоже не сидел без дела. Я уже несколько дней дежурю в офисе допоздна, проверяя коды, логи, соединения. И вот сейчас, после разговора с миссис Гудвин, у меня появилась ещё одна идея.
– Что? Что она сказала? – снова заговорили все сразу.
– Она хотела поговорить с Лили. Но наша хранительница тайн, кажется, опять уединялась на крыше. Тогда миссис Гудвин рассказала мне об одном странном происшествии, которое она наблюдала во дворе бывшего дома Лили. Вы ведь знаете, что у Кевина сейчас каникулы, и они втроём живут на даче. Так вот, вчера миссис Гудвин отлучалась по делам в Луминовилль и возвращалась вечерним автобусом. И когда она проходила мимо старого дома Лили, ей вдруг показалось, что в саду, под покровом ночи, кто-то копался. Она услышала шорохи и окликнула: «Эй, кто там?» Ей никто не ответил, но она заметила, как из-за кустов шустро ускользнула какая-то тень. Утром они втроём с Кевином и стариком Гудвином отправились на разведку и увидели, что почва в саду под старым деревом взрыхлена. Словно кто-то искал что-то закопанное. Миссис Гудвин предполагает, что это был барсук. Их много живёт в тех местах. А мистер Гудвин…
– Что? Что он сказал? – снова спросили все сразу.
– Ну… мистер Гудвин, как обычно, говорит загадками. Он вспомнил старую пословицу, которую я, впрочем, никогда не слышал. «Если тень колдуна упала на землю, то и под землёй станет неспокойно» – вот что он сказал. И я тут же подумал, что нам надо срочно наведаться в нашу игру! Лили всегда оставляла там подсказки, когда не могла говорить напрямую.
– Точно! Верно! Нам надо заглянуть в игру! – хором подхватили его идею машины.
– Но только после окончания рабочего дня, – привычно добавил Оскар.
Обеденный перерыв закончился, программисты вернулись из соседнего кафе, и офис снова наполнился привычной суетой. И только Лили всё ещё отсутствовала на рабочем месте. Макс пошёл посмотреть, где она уединяется, в переговорной или на крыше, чтобы рассказать ей о звонке миссис Гудвин… ну, и напомнить, в конце концов, о трудовой дисциплине.
Молли, пользуясь краткой передышкой, решила провести небольшую инспекцию на столе Лили. И в первую очередь, она направилась к той кипе документов, куда девушка поспешно спрятала какой-то предмет, когда к ней подходила Гита. Она заглянула в щёлку в ворохе бумаг, и вдруг оттуда ей приветливо подмигнул светодиодный глазок какого-то смутно знакомого гаджета. Лили пригляделась внимательней и… когда, наконец, узнала, её изумлению не было предела.
– Ой! Лили спрятала здесь свой медальон! – воскликнула Молли. – Смотри, Альберт! Это не просто украшение, это какой-то гаджет! Как мы раньше этого не замечали? Он такой же, как мы, живой. Ну, то есть – цифровой, конечно. Эй, как тебя зовут? Откроешь нам свои секреты?
– Мы не можем взламывать чужие тайны, – строго напомнил Альберт.
Молли печально вздохнула и вернулась на своё место.
– Но как же нам понять, какая помощь нужна Лили? А вдруг какие-то опасные люди вовлекли её в свои преступные делишки? А вдруг кто-то нарочно хочет выставить её предателем? Мне совсем не нравится сидеть и бездействовать!
– Мне это тоже совсем не нравится, малышка. Но я чувствую: она не предатель. У неё что-то на сердце. Большое. Очень важное.
– Нет-нет! – снова в большом волнении повторила Молли, энергично помотав своей пластиковой головкой, словно вытряхивая из неё недавние тревожные мысли.
Оставленный на столе цифровой медальон снова подмигнул, и через мгновенье, словно получив какой-то сигнал, ответно подмигнул монитор на свободном рабочем месте, за которым утром работала Лили.
– Что это было? – прошептала Молли.
– Что именно? – прищурился Альберт. – Этот странный миг. Как будто всё работает, а внутри – тайна. Как будто команда дана, но мы не знаем, кому и зачем. Это… это как загадка. Но не просто загадка, а… как это называется, когда всё вроде бы в порядке, но ты знаешь, что где-то внутри спрятан секрет?
Альберт закашлялся (принтеры делают это, когда им надо потянуть интригующую паузу) и отозвался: – Ах, Молли. Похоже, ты интуитивно почувствовала не просто загадку, а алгоритм тайн.
– Подожди, – Молли заинтригованно замигала светодиодами. – Ты снова сказал «алгоритм»… Это то самое, что ты обещал мне рассказать утром?
– Именно, – подтвердил Альберт и начал свой рассказ. – Однажды, когда я был еще довольно молод, мне довелось печатать одну любопытную работу. Она называлась «Мастер „соломоновых решений“. Баснетерапия».
– Соломоновых решений? Это как?
– Соломоново решение, Молли, – это очень мудрый способ решить спор, когда обе стороны остаются довольны и никто не чувствует себя обиженным. Название идёт из древней истории про царя Соломона, который прославился своей необычной мудростью и справедливостью. Он умел находить такие решения, которые помогали людям перестать ссориться и увидеть, что правда – важнее жадности или обиды.
– Ух ты! И что же там было, в этой методике? Она учила находить такие мудрые решения?
– Там был описан подробный, пошаговый алгоритм разрешения конфликтных ситуаций. Я ещё подумал: как было бы здорово перевести его на машинный язык! Похоже, пришла пора воплотить эту идею в реальность.
– Конфликтные ситуации? – переспросила Молли. – Но какое отношение они имеет к программам, которые прячутся внутри Лили? Она ведь никогда ни с кем не конфликтует. Более миролюбивой девушки я ещё не встречала.
– Видишь ли, Молли, конфликты бывают скрытыми и проявленными, внешними и внутренними, когда в одном и том же человеке борются между собой разные мотивы. Про такого человека говорят: «не в ладу с собой». Это всё равно, как если бы в компьютере были запущены сразу две несовместимые программы. Например, если одна программа говорит: «Сохранить файл», а вторая – «Удалить его», то компьютер зависает. Представляешь?
– Конечно! Это же ошибка! Конфликт команд!
– Вот и у нашей Лили, кажется, сейчас что-то похожее. В ней как будто работают две внутренние программы. Каждая – вероятно, хочет по-своему помочь. Но они мешают друг другу, и от этого Лили грустит и отдаляется от всех.
– А ещё, мне кажется, – добавила Молли таинственным тоном, – она кого-то сильно боится. Кто-то может охотиться за той тайной, которую ей доверили. Тогда у неё всё-таки есть враги. Ведь не все люди так миролюбивы, как наша Лили. И если ей кто-то угрожает, то она невольно оказалась втянута в какой-то конфликт. Просто мы его не видим. Но как же мы можем тогда разрешить эту конфликтную ситуацию, если её враг нам не известен, а сама Лили ничего не рассказывает?
– Это трудно, очень трудно. Но мы можем начать анализировать только то, что наблюдаем в поведении одной Лили, что слышим в её речи, и что просачивается наружу в виде тех чувств, которые невозможно спрятать. И твоя первая догадка, скорее всего, верна. Есть кто-то, кого она сильно боится, и от кого должна спрятать доверенную ей тайну любой ценой.
– Ух ты! Как интересно! Я горю нетерпением расшифровать эту тайну! – воодушевлённо воскликнула Молли. – И что же, мы будем писать басню? Как здорово! Я помню, как мы писали песню для стражников Мордреда, чтобы они размякли и подобрели. Это было весело!
– Не обязательно писать басню. Понимаешь, из законов басни автор взял сам принцип «схлопывания» конфликтных противоречий и положил его в основу своей миротворческой методики. Применив этот метод, мы можем попытаться понять, какие программы конфликтуют внутри Лили, и как помочь им придти к единому решению, которое устранит конфликт. Результат, конечно, трудно гарантировать, ведь Лили молчит. Но шанс есть.
– Звучит захватывающе! Давай же немедленно приступим к написанию этого алгоритма! И разгадаем, наконец, эту тайну, которая ставит под угрозу нашу дружбу. Расскажи скорее, что надо делать!
– Не спеши, Молли. Давай разбираться по порядку, – ответил Альберт и зашуршал механизмом подачи бумаги.
– Альберт, а что ты рисуешь? – спросила Молли, с любопытством глядя на лист бумаги, выезжающий в выходной лоток.
– Не просто рисую, моя дорогая, – ответил старый принтер с мягкой улыбкой. – Я составляю блок-схему.
– Блок… что?
ПОЗНАВАТЕЛЬНАЯ ИНФОРМАЦИЯ ОТ АЛЬБЕРТА
– Блок-схема, Молли, – это тот же алгоритм, только его шаги изображаются с помощью специальных фигурок – блоков. Блок-схемы придумали для того, чтобы даже самый сложный путь был понятен с первого взгляда! Что-то похожее умеют рисовать даже дети, когда играют в классики на асфальте. Это как план и карта путешествия, которое ты собираешься предпринять.
Но представь, что размышления человека – тоже могут проделывать свои путешествия. Каждый вопрос – это развилка, каждое решение – это выбор пути на перекрёстке. Вот и в нашем расследовании блок-схема послужит нам картой для расшифровки тайны. С её помощью мы и попытаемся понять логику загадочного поведения Лили.
– Как же геометрические фигурки помогут нам это понять? – удивилась Молли.
– Фигурки помогут нам смоделировать методику баснетерапии. Ведь это тоже алгоритм с определенными шагами. А шаги этой методики помогут нам проанализировать поведение Лили, обнаружить в нём конфликт программ и разрешить его, в конце концов. Вот, смотри, какие фигурки нам могут пригодиться. Овал используют для обозначения начала и конца программы. Ромб – для вопросов, прямоугольники – для действий. Стрелки между блоками – это как указатели, куда идти дальше.
– Как в лабиринте? – уточнила Молли.
– Точно! Только в этом лабиринте ты сама ставишь указатели. Программисты так и делают – когда пишут сложные программы: сначала рисуют блок-схемы, чтобы видеть всё как на ладони. А мы сейчас попробуем разобраться в одной очень запутанной истории – в тщательно скрываемом конфликте Лили с каким-то неведомым врагом, и тоже составим свою блок-схему.
– Ты хочешь сказать, что мы нарисуем карту её чувств и действий? – спросила Молли, в то время как Альберт продолжал печатать.
– Именно! Мы разложим её поведение на части, разберёмся, что ею движет, чего она хочет и почему страдает. И тогда, возможно, мы найдём ту точку на карте, где обе её внутренние «программы» перестанут спорить, а её конфликт с неизвестным врагом – или с самой собой? – будет успешно разрешён без всякого ущерба для нашей дружбы. Нам, конечно, придётся кое-где додумывать за неё, ведь она не отвечает на наши вопросы. Но мы достаточно хорошо её знаем, и в случае провала всё равно ничем не рискуем, если всё-таки попытаемся это сделать.
– О, я вижу какие-то овальные рамочки, соединенные стрелочкой, – сообщила Молли, с нетерпением заглядывая внутрь печатного механизма. – Мы будем их заполнять?
– Да, это самое начало нашего алгоритма, – подтвердил старый принтер. – И тут же – его завершение! Такой вот парадокс!
АЛГОРИТМ КОНФЛИКТОТЕРАПИИ
Первый блок – это Начало. Здесь мы опишем исходную проблему, как мы её видим. Завершающий блок – это Конец, здесь мы опишем желаемый результат. Видишь, это очень похоже на Завязку и Развязку в басне, причём желаемый хэппи-энд мы проектируем уже в самом начале работы, сразу же после описания проблемы.
– Поняла тебя! Что же мы напишем в первом блоке?
– Ответь на это сама. Просто опиши проблему Лили, как ты её видишь.
– Ну, она замкнута, отстранена, выглядит встревоженной, утомлённой, бледной как привидение… словно измождена несением какой-то тяжкой ноши. В её глазах часто наворачиваются слёзы, как будто внутри неё живёт какая-то печаль, а может быть, и страх… хотя внешне она старается выглядеть холодной и бесстрастной, а иногда даже резкой и сердитой.
– Отлично, это и будет началом нашего алгоритма!
– Тогда поскорее к хэппи-энду! – воодушевлённо воскликнула мышка. – Я мечтаю, что в финале нашей истории Лили снова станет сама собой. Она будет открыта и жизнерадостна. Она снова будет общаться с друзьями, снова будет нам доверять и с благодарностью принимать нашу поддержку. А чужая тайна перестанет быть её тяжёлой ношей.
– Очень хорошо, мой дорогой конфликтотерапевт! И не забывай, что эту первоначальную схему мы всегда сможем подправить, если получим новую информацию, – сказал Альберт и закончил, наконец, печать.
Вот что было изображено на его распечатке.
– Ох! – восхищённо выдохнула Молли. – Как я хочу, чтобы такой хэппи-энд наступил как можно скорее! Но что означает этот частокол вопросов на пути от Завязки к Развязке? Ты хочешь сказать, что перед нами совершенно не решаемая задача с множеством неизвестных? Как печально…
– Не унывай, Молли, – успокоил её Альберт. – Частокол вопросов – это всего лишь вопросы. На них мы будем отвечать по мере того, как будем добывать новую информацию. Постепенно вопросы будут исчезать, а на их месте будет появляться алгоритм преобразования… Просто наберись терпения. И будь внимательна!
– Алгоритм преобразования? Звучит обнадёживающе! Я очень хочу, чтобы тайна-тяжесть преобразовалась в тайну-радость! Я буду очень внимательна! И очень-очень терпелива!
Наконец, в дверях офиса показались Макс и Лили. Девушка быстро прошла в кабинет Константина, главного программиста «Цифротрон-Секьюрити», а Макс вернулся на своё рабочее место.
– Ну что, как она? Вы поговорили? – шёпотом спросила Молли.
– Да, немного, – неохотно ответил Макс.
– И что же? Что?! – с нетерпением спросила его Электра.
– Ну… я рассказал ей о звонке миссис Гудвин, и она тут же сорвалась с места – хотела сразу бежать к Константину, чтобы отпроситься и немедленно отправиться за город. Но я убедил её сначала перезвонить миссис Гудвин. И после этого звонка она немного успокоилась. Вы же знаете, эта добрая женщина умеет найти правильные слова… Но Лили всё же обмолвилась, что отправится туда вечером, после работы. А Константина – предупредит, что поедет навестить Кевина и может задержаться на пару дней.
– Ты поедешь с ней? – спросил Альберт.
– Ну, как вам сказать… – слегка замявшись, ответил Макс. – Лили строго запретила мне вмешиваться. Она даже запретила мне рассказывать вам о её проблемах. Но я сказал, что запреты бессмысленны. Я и так ничего не знаю о её проблемах, кроме одной очевидной проблемы, что она рискует оттолкнуть от себя всех друзей своим недоверием. И запретить нам о ней беспокоиться тоже не получится! В общем, я ничего не обещал. Кажется, она рассердилась… Поэтому да, я поеду вместе с ней, но втайне. Я не знаю, какие секреты она от нас прячет, и какие риски их разглашения ей угрожают. Но я точно знаю, что нельзя оставлять её сейчас одну в таком состоянии.
– Ты прав! – согласились все сразу.
– Отправляйся! А мы, как и планировали, войдём сегодня в нашу игру и поищем там подсказки, – с воодушевлением сказала Молли.
– Но только… – подал голос из серверной Оскар.
– Только после окончания рабочего дня! – хором закончили его реплику машины.