«Погиб поэт, невольник чести…»
— Математика — ваш конек с детства?
— Не сказал бы... Я учился в обычной школе. Родители никак не были связаны с точными науками: мать — библиотекарь, отец — историк. В школе я был троечником. Выучить стихотворение — с ума можно было сойти! А еще был очень застенчивый: к доске вызывают — не знаешь, как и рот открыть. Но где-то в 7 к лассе я решил заняться математикой: начал читать дополнительную литературу, изучал учебники за 7-й и старший к лассы. И вдруг все оказалось понятно. В мою жизнь пришли олимпиады по математике и физике.
— Победы на олимпиадах помогли?
— Как победителя 4 областных олимпиад, меня без собеседования приняли в физматшколу — 45-й интернат при Ленинградском государственном университете. Ученики нашего класса уже в те времена были сильнейшими участниками олимпиад, вплоть до международных, а впоследствии многие из них достигли блестящих результатов в науке, технологии и политике.
— Когда произошло ваше первое знакомство с компьютером?
— В 1967 году я впервые увидел компьютер БЭСМ-2м в ЛГУ. Тогда эта машина занимала если не спортивный зал, то его четверть. Это 20 тысяч радиоламп, 20 тысяч операций в секунду. Оперативная память 4 тысячи ячеек — все, что было в распоряжении программиста. Звук работающего вентилятора заглушал все! Уже тогда у меня появились задумки. Например, запрограммировать игру крестики-нолики. Но с той техникой сделать это было нельзя. В те времена мы писали программы на бумажке, а операторы пробивали ленточки, перфокарты.
— То есть непосредственного контакта компьютера и программиста не было?
— Был. С 3 курса я начал совмещать учебу с работой инженера на
экономическом факультете ЛГУ, что иногда позволяло получать минут 10 выхода за пульт машины. Правда, в очень неудобное время, например в 3 часа… ночи. Но это было праздником, к которому мы готовились по нескольку дней. Только к старшим курсам, когда уверенно проявил себя помощником ведущих профессоров кафедры экономико-математических расчетов при выполнении прикладных разработок, я получил прямой доступ к лучшим компьютерам университета. На 5 курсе мог выходить за пульт (дисплеев не было, только пультовая машинка). И тут я уж оторвался...
— Знаю, что вы увлекаетесь игрой го. У вас четвертый дан в этой игре. Вы заслуженный тренер России. А как зародился этот интерес?
— Я начал играть в го с 15 лет. Как и все, в детстве увлекался шахматами, но в физматшколе мои соседи по комнате были сильными разрядниками и кандидатами в мастера спорта по этой игре. Когда воспитатели гасили свет, они устраивали «круговик вслепую»: каждый, лежа в темноте, без доски одновременно играл против всех. Мне же соревноваться с ними было бесполезно. А вот игру го никто не знал, мы играли на равных. Древняя восточная игра го учит взвешивать и учитывать сразу все последствия действий ее участника, объединять, казалось бы, несовместимые цели, выравнивает и балансирует все качества характера участника игры. В кругу своих друзей тех лет я достиг лучшего результата: впоследствии у меня был четвертый дан и звание ведущего
игрока России.
Птица высокого полета
— Чем олимпиадное программирование отличается от обычного программирования?
— Разница в уровне. Примерно такая же разница, как между спортсменом-биатлонистом, который умеет быстро бегать и при этом точно попадать в цель, и обычным лыжником или охотником.
Олимпиадные программисты подобны универсальным спортсменам высочайшего уровня. Многие из них за полминуты способны вслепую набирать страницу текста. Получив на чемпионате мира десятки страниц текста на английском языке, они умеют за 2-3 минуты прочитать их, понять, о чем речь, расшифровать, понять заложенные в них модели, подобрать алгоритм решения. Уже на второй минуте финала ЧМ шелест бумаги постепенно переходит в стук компьютерной к лавиатуры. Вы можете поверить, что простые студенты и школьники нередко находят много различных решений таких задач? Олимпиадное программирование очень полезно и увлекательно, но не является самоцелью.
Решение задач постепенно меняет мышление студента или школьника, его представление о задачах и методах их решения. Как и в игре го, необходимо пройти длинную лестницу к победе, успех в которой решают всего три ступеньки... На фоне азартных соревнований незаметно для человека происходит рождение специалиста высочайшего уровня...
— Можно пример олимпиадной задачи?
— В олимпиадном программировании принято маскировать сложные алгоритмические задачи в виде простых, иногда веселых историй, называемых легендами. В одной из таких задач мама подарила Вовочке на день рождения круглый торт, в который поставлены свечи по числу его лет. Требуется определить наименьшее количество разрезов, которые необходимо выполнить для того, чтобы на каж дом кусочке было не больше одной свечи. Ничего необычного. Такую задачу решить довольно просто. Сложность задачи и юмор положения заключается в том, что, по условию, Вовочке может быть до 100 тысяч лет. При таких ограничениях задача становится технически сложной, а для ее решения нужно быть уже спортсменом высочайшего уровня.
— Как разглядеть олимпиадного программиста?
— Программистом, в том числе и олимпиадным, при желании может стать любой, у кого нет явных нарушений памяти, логики и других патологических отклонений. Вопрос лишь в уровне затрат на обучение. Одному, чтобы достигнуть вершин, придется решить пять, другому — десять тысяч задач, одному прочитать десять, другому — сто книг. Не всегда победит тот, кто способней, чаще — тот, кто упорнее.
Владимир Кузнецов (в центре), с подопечными-программистами (справа), главой республики Андреем Нелидовым и ректором ПетрГУ Анатолием Ворониным.
— Где потом работают олимпиадники?
— Лучшие устраиваются в Google, Yandex, многие — в столичных городах и за рубежом. В IT-парке ПетрГУ работает много олимпиадных программистов. Конечно, приятно, когда ученики
остаются рядом и продолжают твое дело. С таким исполнителем говоришь на своем «птичьем» языке, ему не нужно долго объяснять задачу или метод ее решения и незачем проверять у него качество работы. Хотя в современном интегрированном мире не имеет значения, где работать. Главное, чтобы задача была достойна личности исполнителя и способствовала полному раскрытию его потенциала.
— А сами ребята разрабатывают что-то совершенно новое?
— Практически все студенты предпочитают вести прикладные научные разработки, многие — для того, чтобы зарабатывать на жизнь. И это правильно, поскольку решение «коротких» и «быстрых» олимпиадных задач должно дополняться систематической коллективной работой над большими и полезными проектами. Как в жизни. Например, студенты 3 курса разрабатывают тренажер по заказу МНТК «Микрохирургия глаза», анонс разработки которого прошел по всей России. Имеются важные прикладные задачи, начинают появляться весьма интересные теоретические исследования.
— Часто ли проекты претворяются в жизнь?
— IT-парк ПетрГУ, где трудится много олимпиадников, работает преимущественно по договорам с предприятиями и ведет коммерческие разработки, которые обязан довести до внедрения, чтобы получить расчет. Очень важно, что благодаря олимпиадникам IT-парк ПетрГУ может специализироваться на важнейших наукоемких задачах, за которые редко берутся другие компании и которые обеспечивают наибольший экономический эффект. Конечно, не все задачи достойны таких исполнителей, но приходится выполнять все то, за что платят деньги. Например, стоит ли «автоматизировать» очередь в детский садик, может быть, лучше ее устранить?
Возрастных рамок нет
— Вы занимаетесь не только со студентами, но и с детьми. С какого возраста можно начинать занятия?
— Мы начинаем учить детей достаточно поздно: в 5-6 классе. Это возраст, когда, с одной стороны, еще не утрачена гибкость детского восприятия и мышления, с другой — появляются первые необходимые знания математики. Можно ли начинать позже? Можно с любого возраста. Известно немало медалистов чемпионата мира, которые не писали программ в школьные годы.
— Сейчас программирование в некоторых школах начинается чуть ли не с 1 класса. Как вы к этому относитесь?
- Неоднозначно. С одной стороны, это было бы интересно. Но есть свои подводные камни. Во-первых, многие учителя к этому пока не готовы. Во-вторых, готовы ли к такой массовой подготовке сами дети? Боюсь, что результат будет неважным.
— Чем должен обладать пятилассник, собираясь к вам на занятие?
— Трудолюбием и вниманием. Без этого трудно. Необходимы определенное честолюбие и увлеченность, стремление достигать цели.
Беседовала Ася КОШЕЛЕВА