Доигрался! Вот самое подходящее слово, чтобы охарактеризовать мое нынешнее положение… Хотя воспоминания из прошлых вариантов моей жизни стремительно размывались альтернативным жизненным опытом, один момент из своей никогда не имевшей место профессиональной деятельности я не мог не припомнить в данной ситуации.
Отладка… Процесс исправления ошибок в новорожденной и еще сырой программе. Некоторые ошибки удается подметить самому, при более внимательном просмотре программного кода, но на большинство из них должен указать сам компьютер. Он и указывает — если неоднократно запускать новорожденную программу и почаще менять условия запуска.
И, что самое удивительное, от ошибок не застрахован даже высококлассный специалист. Тезис «все приходит с опытом» в программировании испытывает очень странное преломление. Профессиональный опыт программиста отходит на второй план и уступает место опыту использования конкретной программы.
Подозреваю, что такая патологическая склонность программистов к ошибкам обусловлена самой возможностью отладки. Точнее, отсутствием у вышеназванных ошибок фатальных последствий. Ведь вызывать какие-либо процессы в виртуальном мире — это не то что, скажем, атомную станцию проектировать. Хотя… применительно к своей родине я бы не зарекался. Один Чернобыль чего стоит!
Да что там АЭС! Жизнь одного отдельно взятого человека ведь тоже не программный код. Ее запускают один раз, а последствия ошибок порой бывают не менее катастрофическими, чем авария на ядерном реакторе. Но все это не мешает людям относиться к своей жизни столь же небрежно, как к софту собственного изготовления. Не то чтобы такая безалаберность была свойственна всем представителям вида Хомо якобы-Сапиенс, но… и назвать ее «редким исключением» я бы тоже не решился.
Данное обстоятельство может показаться парадоксом, даже проявлением каких-то скрытых суицидальных наклонностей, если бы не одно «но». Де-факто возможность отладки существует и в человеческой жизни, просто я сам узнал о ней не так давно.
Спасибо Главпочтамту, эту самую возможность обеспечившему. Понимаю теперь, почему я с такой готовностью поверил Почтальону. Почему-то я решил, что смогу удалить из своей жизни пусть не все, но, по крайней мере, ключевые и очевидные ошибки. Как из программного кода. И как-то запамятовал, что отладка — отнюдь не легкая забава, и что времени на нее тратится зачастую больше, чем на написание основного кода.
Вот ведь какое дело. Пресловутое тестирование, в смысле, неоднократный запуск, способно выявить лишь сам факт ошибки. Ее причину приходится устанавливать программисту. Который, будучи всего лишь человеком (причем человеком безалаберным), способен ошибаться даже в этом деле. В результате отладка имеет непредсказуемые последствия, с определенной вероятностью приводя как к устранению огрехов, так и к их нарастанию. Соответственно, возрастает и время, затрачиваемое на доведении программы до ума.