Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie, которые обеспечивают правильную работу сайта. Благодаря им мы улучшаем сайт!
Принять и закрыть

Читать, слущать книги онлайн бесплатно!

Электронная Литература.

Бесплатная онлайн библиотека.

Читать: Проект «БАБОЧКА» - Амелия Картер на бесплатной онлайн библиотеке Э-Лит


Помоги проекту - поделись книгой:

Амелия Картер

Проект "БАБОЧКА"

Пролог

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

Сегодня 9 сентября 2078 года. И, несмотря на то что сейчас жизнь кажется простой и безмятежной, несколько десятков лет тому назад она таковой вовсе не являлась. Мы буквально боролись за выживание: добывали пропитание и выстраивали быт заново после постигшей нас в 2032 году катастрофы.

Вам наверняка интересно, что же тогда произошло? Увы, до сих пор нет достоверных сведений, что именно привело к самому сильнейшему цунами за все существование человечества. Землетрясения ощущались даже там, где доселе не фиксировались, а ураганы и смерчи сносили все на своем пути. Страшное было время. Результатом тех событий стало переустройство мира: большая часть привычной для нас суши оказалась под водой, а в каких-то частях планеты на поверхности показалось морское дно.

После катастрофы образовавшиеся кусочки земли, больше напоминающие острова в огромном океане, оказались отрезанными от всего на свете. У нас не было ни связи, ни представления о том, каков сейчас мир. Мы сначала даже не знали, удалось ли еще кому-то спастись. А когда другие уцелевшие люди были обнаружены, не понимали, кто они нам: друзья или же враги в борьбе за оставшиеся припасы и продовольствия? Не имея ответов на интересующие нас вопросы, мы пытались выживать, не надеясь на подмогу.

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

Ну и, как вы уже могли догадаться, эти воспоминания не зря всплыли в моей памяти именно сегодня. Каждый год в этот день мы собираемся всей семьей, и я рассказываю историю про один инновационный проект, в котором мне посчастливилось принимать участие. Он был запущен с одним известным для нас багом, и эта недоработка чуть не стоила нам хлеба…

Глава 1. Яйцо

На момент катастрофы я уже лет пять являлся штатным сотрудником АО «ЗАСЛОН» и на протяжении двух последних лет работал на проектах с тремя прекрасными инженерами. Наша команда была небольшой, но довольно слаженной и способной работать, как единый механизм.

Однажды, когда я не торопясь возвращался с обеда, в коридоре меня поймал начальник нашего отдела разработки Вячеслав Сергеевич:

– Гриша, собери-ка мне всю вашу команду в зале для совещаний через полчаса. Разговор есть.

– Что-то случилось? – поинтересовался я.

– Можно и так сказать, – не желая что-либо мне объяснять наедине, бросил руководитель отдела и быстрым шагом скрылся за углом.

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

Спустя несколько минут наша команда уже сидела в забронированном зале заседаний. Все с нетерпением ждали начальника отдела для разъяснения, зачем же мы столь неожиданно понадобились, да еще и в полном составе.

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

Юлия – еще один программист от Бога. Если нужно было продумать концепцию, разобраться и внедрить новые технологии в работу, да или просто презентовать наши идеи или результаты, то она являлась незаменимым участником команды в этих вопросах. Выглядела она на свой возраст – 36 лет. Высокая, среднего телосложения и со строгими чертами лица. Красилась довольно скромно, волосы всегда собирала в конский хвост, а на работу носила классические брюки и блузки. В общем, выглядела как самая обычная деловая женщина, которая следит за собой, но не перебарщивает. В жизни, как и в работе, она была довольно серьезна, целеустремленна и основательно подходила ко всему, за что бралась: будь то проект или же покупка какой-либо вещи в дом.

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

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

Ну а теперь, когда мы познакомились со всеми присутствующими, можно узнать то, зачем же нас все же собрал Вячеслав Сергеевич.

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

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

– Все так, – согласился с ней руководитель отдела, – но боюсь, что его придется прервать на какое-то время.

– Поставим break1 в текущем проекте, – попытался, как всегда довольно своеобразно, пошутить Андрей.

– А что за проект? – уже загорелся Евгений.

– Как вы знаете, – начал Вячеслав Сергеевич издалека, – прошедшее лето выдалось тяжелым. Большая часть урожая сгорела в многочисленных пожарах. Некоторые культуры удалось спасти, чтобы посадить в следующем году, а вот зерен пшеницы, из которых преимущественно изготавливают хлеб, практически не осталось.

– Это получается, что на ближайшую зиму, а в будущем, вероятно, и навсегда мы можем остаться без хлеба? – постарался уточнить я.

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

– И чем же мы здесь можем быть полезны? – все так же довольно скептически произнесла Юлия.

– Не так давно был обнаружен остров в 279 километрах от нашего. Туда были отправлены дроны с разведкой. Им удалось установить, что там есть семена пшеницы. Только вот назад беспилотники не вернулись. На обратном пути их засекли и сбили. Предположительно это сделали разведочные машины с других островов, где есть люди. Похоже, что не все выжившие готовы делиться своими находками. В связи с этим перед нами стоит довольно сложная задача: нам нужно разработать такой летательный аппарат, который будет способен преодолеть расстояние в 300 километров, распознать и собрать определенное количество семян пшеницы и вернуться. А чтобы все это удалось, его размеры не должны превышать емкости стакана, и весом он должен быть не более 50 граммов.

– Очень любопытные входные данные, – задумался Андрей.

– Задание интересное, но в какие сроки от нас ожидают результата? – подключилась Юлия.

– Сейчас июль 2033 года, необходимое количество семян от нас ждут к началу мая 2034-го.

– Интересная задачка… – почесав голову, вставил Евгений.

– Что ж, – выдохнув, сказал Вячеслав Сергеевич и встал со своего места. – Суть дела я вам изложил, оставляю вас обдумывать детали.

Начальник отдела разработки покинул конференц-зал, оставив нас обдумывать и переваривать все вышесказанное.

Работу над любым проектом мы начинали с разработки концепции и обязательно в полном составе. Мнение каждого из нас было важно, а голоса имели равнозначный вес при принятии итогового решения. Вот и сейчас мы сидели в предоставленном нам зале заседаний и обдумывали дальнейший план действий.

– Ну что, есть у кого какие идеи? – спросила, как всегда серьезным тоном, Юля.

– Мыслей много, а вот идей ноль, – довольно печально произнес Андрей.

– Я, конечно, предполагаю, из каких материалов можно попробовать сделать корпус, только вот в какой форме, если размер не должен превышать… Как он там сказал? Емкость стакана? – высказался Евгений. – Вот, – он собрал из бумаги самолетик и запустил его через весь стол, – в виде самолетика могу.

– Крылья будут весить больше самого корпуса, – заявила Юлия, поймав Женину поделку, – так что не годится.

– Да и развалился он у тебя вон весь во время полета, – подметил, слегка посмеиваясь, Андрей. – Кажись, где-то у тебя здесь баг. Гришка, проведи этому самолетику стресс-тестирование.

– Так, ребята, давайте серьезнее, – прервала наше ребячество Юля.

– Баг… Баг… – зацепился я за упомянутое Андреем прекрасно знакомое мне слово. – Слушайте, а что вы знаете про самый первый зафиксированный баг?

– Гриш, сейчас не время для погружения нас в область тестирования… – протянул Евгений.

– Да нет, вы послушайте, – постарался заинтересовать я коллег, – самый первый баг был зафиксирован 9 сентября 1947 года.

– И зачем нам сейчас эта информация? – слегка устало поинтересовалась Юлия.

– А затем. Этим самым первым багом оказался мотылек, застрявший между контактами электромеханического реле2.

– Ты предлагаешь нам сделать продукт в виде мотылька? – довольно быстро сообразил Андрей, к чему я вел.

– Практически. Мотылек – это ведь бабочка. Почему бы нам не сделать наш летательный аппарат в виде бабочки? Основной вес придется на туловище. В него с помощью выдвижных лапок будем собирать зерна. Да и крылья придумаем, как и из чего сделать!

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

Таким образом, как бабочки откладывают яйца, чтобы из них появились новые особи, так и мы заложили основу нашего продукта. И уже с раннего утра следующего дня приступили к работе над нашим новым проектом, который получил простое, но довольно броское название – «Бабочка».

Глава 2. Личинка

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

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

После общения с руководством каждый из нас вернулся к своей работе. Андрей изобретал алгоритм полета, стараясь учесть различные сложности и препятствия. Юлия занялась программированием механизма распознавания зерен. Евгений разрабатывал корпус и инструмент сбора семян. Ну а я продумывал тесты и какие материалы для них нам понадобятся на стадии испытаний.

Помимо разработки тестовых сценариев, на мне, как на человеке, который прекрасно оперирует цифрами, повисла задача просчитать все необходимое. Все вычисления нужно было провести именно в самом начале, чтобы в будущем нам не пришлось кардинально все переделывать или вовсе начинать сначала.

Итак, что мы имеем? Нам необходимо создать объект небольшого размера (не больше емкости стакана) весом до 50 грамм. А также нам нужно такое количество семян, чтобы засеять 3000 м2 земли.

Задача была поставлена, а вот условия нам обозначили довольно расплывчато. На мой вопрос, почему в размерах нашего изобретения мы должны ориентироваться именно на емкость стакана, получил ответ, что при испытаниях лишь объекты равные либо меньшие по объему не были замечены. Что ж, пришлось исходить из того, что имели.

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

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

Мне удалось сохранить несколько первых набросков, которые я делал на этом этапе. Если вам интересно, то можете изучить. Здесь, конечно, еще все далеко от идеала, но основная суть должна быть ясна.


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

Я не буду вас грузить всеми моими математическими изысканиями, лишь кратко сообщу то, что получил в итоге.

Готовый рабочий экземпляр мы намеревались подготовить к сентябрю, что гарантировало нам 159 дней на получение не менее 42 кг зерен. Ресурсов на изготовление бабочек, по нашим подсчетам, нам хватило бы на 124 особи. Коконов, в которых они будут заряжаться, мы могли предоставить всего 50, а это означало, что за сутки всего лишь полсотни бабочек смогут отправиться на поиски семян. Но, делая поправку на то, что не все чешуекрылые смогут вернуться по различным не зависящим от нас причинам, мы рассчитывали всего на 40 особей в день. Учитывая тот объем, который может вместить в себя наш агрегат, мы получили, что одна бабочка за раз сможет принести как минимум 116 зерен, максимальный вес которых составит 7,54 грамма.


Закончив с калькуляцией и чертежами, я передал все свои черновики, комментарии и расчеты Евгению. Дальше уже дело было за ним. Сам же я наконец занялся придумкой того, какие испытания необходимо будет провести. Они помогут нам удостовериться, что все работает именно так, как мы и задумывали.

Приступив набрасывать то, что мне следует протестировать, я получил следующее: проверить алгоритм распознавания семян, следование заданному направлению, реакцию бабочки на ветер, поведение при различных погодных условиях и скоростях ветра, возможность облететь препятствия и способность захватывать зерна из различных положений. Уверен, что это далеко не весь перечень, который тогда удалось наметить, но самые основные и важные пункты я вам сейчас обозначил.

Работа кипела, бабочка наращивала свой арсенал, дни пролетали незаметно один за другим. Мы же так увлеклись проектом, что иногда даже забывали про еду и сон. Думаю, что такое состояние знакомо всем, кто хоть раз в жизни испытывал творческий подъем и вдохновение от идеи, которая занимает все мысли. В общем, мы трудились в поте лица круглые сутки.

Глава 3. Куколка

Перед тем как гусеница превратится в удивительное создание с крыльями, ей необходимо замуровать себя в кокон. В состоянии куколки у насекомого происходит кардинальная перестройка всего, начиная от внутренних органов и закачивая окрасом. Этот период может длиться как пару недель для одних видов, так и несколько месяцев для других. У нас же на все про все оставалось 30 дней.

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

Безусловно, слияние – это интересно, страшно, ответственно, но в нашем конкретном случае это еще и безумно красиво. Скоро вы поймете почему.

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

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

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

Прямо на моих глазах творилась настоящая магия. Маленький и по первому впечатлению хрупкий сосуд наполнялся жизненной силой. Энергия скользила по светящимся нитям самодельной куколки и не давала отвести взгляд. Это зрелище завораживало и восхищало. В тишине комнаты слышалось едва уловимое гудение, напоминающее легкое сопение спящего насекомого. Я замер и, кажется, практически перестал дышать, боясь потревожить сон этого создания, помешать твориться чуду.


Трудно сказать, сколько прошло времени до того момента, как Юлия вошла в кабинет, нарушив мою идиллию. Она всегда приходила на час раньше других, и сегодняшний день не стал исключением. Юля включила свет, и вся магия тут же исчезла, явив предо мной самый обычный стол, сосуд и механическое насекомое.

– А ты чего здесь в такую рань? – поинтересовалась она у меня.

– Да вот уже жду не дождусь, когда можно будет приступить к тестированию, – довольно честно ответил ей я.

– Скоро уже… – обрадовала меня Юлия. – По прогнозам, осталось не больше суток. У тебя уже все готово?

– А как же!

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

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

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

Но выход нашелся довольно неожиданно. После того как я на одном из плановых совещаний обрисовал, чего мне не хватает, Вячеслав Сергеевич оказал содействие. Выяснилось, что одна его одноклассница работала в театре. Сейчас, конечно, сцена пустовала, а артисты были заняты на иных работах, из-за чего сценический инвентарь пропадал зазря. Одним из таких невостребованных предметов оказался вентилятор для сцены, способный в зависимости от установленного режима варьировать дуновение от легкого бриза до порывистого шквала. После пары запусков предоставленной машины я не удержался и воскликнул:

– Это именно то, чего мне так не хватало!

Таким образом, к моменту загрузки данных в объект я уже был во всеоружии и ждал отмашки начать испытания. И, как только Андрей объявил, что все готово, мы с командой начали прогонять тесты, выбранные для финальной стадии.

Глава 4. Имаго: перед полетом

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

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



Поделиться книгой:

На главную
Назад