# Арсений. Прлг-3

Владимир Никитюк

Читать сначала


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


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


Дело в том, что это планирование Арсений чётко разделил на несколько этапов:


1) Составление перечня всех возможных вариантов (это было мысленно сделано по дороге на работу и записано сразу же по прибытию на рабочее место).


2) Выбор из этих вариантов самых лучших


3) Синтез из лучших вариантов единого "суперварианта"


4) Его детальная проработка


Наконец Арсений с удивлением обнаружил, что простая работа практически выполнена. Доведя её за десять минут до абсолютно "товарного" вида (так, чтобы в понедельник уже не тратить на неё ни секунды), молодой инженер сел пить чай. Можно было чуть-чуть расслабиться...


И тут вдруг его посетила неожиданная мысль: если даже сейчас он повернётся и уйдет домой, а завтра вообще не придёт на работу, ничего страшного не случится! Ведь "программа-минимум" на выходные им уже выполнена!


"Стоп!, - осадил себя Арсений. - Пока что сделана хоть неприятная, но достаточно простая работа! А ведь ещё осталась работа сложная!"


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


* * *


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


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


И тут Арсений немного засомневался. А ну как он всё-таки допустил какие-либо ошибки? Ведь после начала процесса программирования исправить их будет уже гораздо труднее!


Вроде бы вывод простой: чуть-чуть отдохнуть и проверить ещё раз. На свежую голову.


Хорошее дело - чуть-чуть отдохнуть! Но как?


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


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


"И что я здесь делаю? - мелькнуло у него в голове. - Мне что, больше всех надо?"


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


Арсений и не заметил, как дошёл до конца коридора. На торцевой стене находилось окно - и вид из этого окна был гораздо лучше, чем из окон комнаты, где находилось его рабочее место.


За окном ярко светило солнце. По улицам неслись автомобили. По тротуарам двигались люди. Сверху, с шестого этажа, было не видно, - спешат ли они куда-то или просто прогуливаются по улице.


"Как странно! - подумал Арсений. - Сколько людей - и у каждого свои дела, свои заботы, своя жизнь. Можно считать - своя Вселенная..."


Но и эта мысль осталась недодуманной. Арсений вздохнул и медленно пошёл к своему рабочему месту. Надо было трудиться дальше...


* * *


Усевшись за компьютер, Арсений машинально посмотрел в правый нижний угол экрана - туда, куда выводилось время.


"Как интересно! - подумал он. - Я отсутствовал на рабочем месте всего пять минут - но, тем не менее, чувствую себя вполне отдохнувшим!"


И стал медленно читать файл, который ему необходимо было проверить.


Как он и ожидал, ошибки в файле были. Целых три! И ещё несколько не то, чтобы ошибок, а так - шероховатостей....


Быстренько всё исправив, Арсений сделал ещё один пятиминутный перерыв. Но теперь он пошёл в другой конец коридора, - и, соответственно, смотрел в другое окно.


Так он и чередовал несколько раз - минут двадцать работы и минут пять - перерыв.


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


Ещё пара заходов - и Арсений не нашёл даже шероховатостей!


"Всё! - подумал он. - Можно начинать программировать!"


Но тут он решил сделать ещё один заход. Так, на всякий случай...


Ещё одна прогулка по коридору (и даже не на пять минут, а на десять). А теперь можно открыть файл и проверить его ещё раз...


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


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


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


Теперь Арсению не надо было каждые десять минут заглядывать в файл-задание в процессе программирования. Достаточно было смотреть иногда - просто чтобы убедиться, что всё идёт по плану.


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


* * *


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


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


А потом он вдруг почувствовал, что его что-то начинает беспокоить. Через некоторое время он понял: первый модуль двигается, а второй-то стоит! А ведь он проработан гораздо меньше, чем первый!


И Арсений снова стал распараллеливать работу. Теперь уже между программированием первого модуля и проработкой второго.


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


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


Читать дальше