- PVSM.RU - https://www.pvsm.ru -

Как я победил в олимпиаде по программированию, не умея программировать

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

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

image

И так, на дворе осень 97 года, я ученик 10 (предпоследнего) физ-мат класса общеобразовательной школы. Я в этом классе и в этой школе новичок, и наверное единственный кто добирается в школу каждый день на автобусе, т.к. живу не в этом микрорайоне.

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


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

Тут наверное стоит рассказать, почему выбор пал именно на меня, новичка в этой школе. Все банально, мой багаж знаний по computer science, в тот момент, наверное, был самым большим во всей школе. И учитель знал это, т.к. один летний месяц я провел в этой школе, посещая летний компьютерный лагерь который они организовывали. Самый большой багаж знаний школы состоял из опыта программирования на бейсике в начале 90-х на БК-шке, программировании на Лого в 6-7 классах, знания как отключить клавиатуру с помощью кнопки Fn на ней и курсов дизайнера законченных при Авиационном институте. Не густо) но научится программировать я всегда хотел (да и сейчас не оставляю эти попытки) поэтому вызов был принят и я погрузился в изучение сделал попытку овладеть данным языком и средой разработки за 24х7 часов.

Первая сложность была в том, что в компьютерном классе турбо паскаля отродясь не было а его установка на наши машины была запланирована только в день Х силами сторонних преподавателей. Учитель информатики то же не могла мне ничем помочь, т.к. имела не профильное образование и на уроках преподавала только пакет офисных программ. Оставалось изучать язык только по выданной книге, но ее чтение привело меня в уныние и она была заброшена. Было решено призвать на помощь коллективный разум, в лице Гугла районной детской библиотеки, где обнаружился один экземпляр книги «100 задач по программированию». Особо ценным в ней было то, что задачи там разбирались как раз на паскале. Ее чтение я продолжал до самого дня Х, но опять же, сухая теория без практики большой пользы не принесет. В итоге, за неделю мой скилл в программировании не увеличился а возможно даже уменьшился т.к. была внесена сумятица новыми терминами, понятиями.

В день Х я собрал все свое мужество и выдвинулся в сторону своей школы. Иллюзий я не питал, но был план спрятать имеющиеся в моем распоряжении книги в соседнем кабинете и когда уже будут известны конкретные задачи, выйти в «туалет» и попробовать на основе этих книг написать что то отдаленно похожее на программы. Получив задание все приступили к программированию довольно шустро. Я, что бы не сильно выделятся, то же что то набирал для отвода глаз, когда подходила наша преподавательница я улыбался и говорил что все нормально, хотя понимал что всё хуже некуда и даже если мне разрешат пользоваться книгами в открытую, то это мне не поможет решить ни одну задачу из положенных пяти. Время нам дали часа три на все про все.К исходу второго часа я был уже на грани бросить все и уйти громко хлопнув дверью. Но очень хотелось показать моим новым одноклассникам и одноклассницам что я крут, и мозг [1] начал искать решения выхода из патовой ситуации.
Тут как нельзя кстати, вспомнилась особенность организации нашего компьютерного класса, все компьютеры класса не имели своих жестких дисков, загружались по сети и хранили свои данные на жестком диске центрального компьютера (тонкости всей инфраструктуры сейчас уже не помню, но этого для развития сюжета и не нужно). Аккуратно, что бы не привлекать внимание соседей, пытаясь сдержать улыбку до ушей я начал просматривать папки своих оппонентов, куда они уже сохраняли свои труды на протяжении двух часов. Найдя папку где уже было 5 файлов с самым большим количеством кода я решил что скорей всего это наиболее правильно решенные задачи и скопировал их к себе в папку соответственно переименовав. Каких то особых моральных мучений я не помню, хотя сейчас понимаю что это было не правильно, был только страх быть пойманным за таким нелицеприятным делом, но опять повторю, что моему мозгу [1] было все равно как достичь нужный результат и решение было принято. На всякий случай я поменял имена переменных которые использовались в коде и в самый последний момент специально сделал одну ошибку, т.к. понял что занявший первое место едет уже на городскую олимпиаду, и провалится там с треском мне совсем не хотелось (вероятность того что и городскую олимпиаду проведут в нашей школе была минимальной).

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

В последующие годы я так и не овладел программированием, хотя попытки время от времени предпринимал. Была даже попытка попасть на курсы тестировщиков в Epam, но пройти собеседование не получилось т.к. по их мнению не было видно сильного желания с моей стороны. Сейчас я уже принял решение бросать свою нынешнюю деятельность (немного промышленности, много бумаг в системе качества, общение с заказчиками на не интересные вечно повторяющиеся темы), доработаю до НГ, получу 13 зарплату и уйду в никуда, изучать java что бы потом устроится на позицию юниора. Скопленных денег хватит на 3-4 месяца, да и жена пока работает а ее декрет только в стадии подготовки. В общем хорошее время что бы оглянуться назад, посмотреть вперед и попробовать себя именно в том к чему лежит душа. Поэтому и пересматривается жизнь, вспоминается где повернул не туда, где приложил не достаточно усилий и как надо было бы по хорошему действовать. Но все мы крепки задним умом, а решимость на поступки нужна сейчас.

Если кто-то из пользователей Хабра, в 97 году проживал в Советском районе города Самары и участвовал в районной олимпиаде и занял 3 или 4 место, простите и знайте, что вы на самом деле были достойны более высокого места за свои знания (дискетки могу вернуть). Если найдется тот кто занял тогда 1 место, с меня пиво.

Автор: redskif

Источник [2]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/sotsial-naya-inzheneriya/46384

Ссылки в тексте:

[1] мозг: http://www.braintools.ru

[2] Источник: http://habrahabr.ru/post/198676/