Интервью c Геннадием Короткевичем



Интервью, которое взяли профессор Университета ИТМО A.А. Шалыто, лауреат премии «ТОП 50. Самые знаменитые люди Петербурга 2017» (http://top50.sobaka.ru/archive/2017), ежегодно вручаемой журналом «Собака.ru», и выпускницей кафедры «Компьютерные технологии», организатором трансляций с чемпионатов мира по программированию Лидией Перовской у выдающегося спортивного программиста, двукратного чемпиона мира ACM ICPC аспиранта нашего университета Геннадия Короткевича – одного из победителей в номинации «Наука и жизнь» премии «ТОП 50» 2019 года.

Л: Со мной сегодня Геннадий Короткевич – аспирант Университета ИТМО и победитель многих международных соревнований по программированию, один из победителей в номинации «Наука и жизнь» премии «ТОП 50. Самые знаменитые люди Петербурга 2019», проводимой журналом «Собака.ru», и Анатолий Абрамович Шалыто – лауреат этой премии 2017 года, главный научный сотрудник этого университета, профессор.

ААШ: Интервью у Геннадия Короткевича мы сегодня берем вместе с Лидией Перовской – выпускницей Университета ИТМО, организатором трансляций чемпионата мира по программированию. Пойдем дальше. Я один из двух далеко не молодых людей на факультете информационных технологий и программирования Университета ИТМО, которые цементируют и обеспечивают связь «времен». Пытаюсь мотивировать «народ». Это занятие переросло в государственную награду – знак отличия «За наставничество», что было очень удивительно и почетно.

В категории «Наука и жизнь» премии от «Собаки.ru» соревноваться трудно. Кажется, наука вроде бы отдельно, а жизнь – отдельно. В 2017 году мы разделили премию с Григорием Свердлиным, который руководил благотворительным фондом «Ночлежка» в Санкт-Петербурге. Среди номинантов было «трое» ученых (один из них в составе пяти человек :-)) и представители четырех фондов. Сейчас в этой номинации четверо представителей умственного труда и основательницы одного благотворительного фонда.

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

В прошлом году в ТОП 50 в категории «Спорт» победили ребята, которые на чемпионате Европы по фигурному катанию заняли только третье место. Замечу, что в нашем городе очень любят футбольный «Зенит», который недавно стал в очередной раз чемпионом России, но чемпионат России – что это за достижение для Гены или Университета ИТМО, когда мы семь раз были чемпионами мира и много раз становились медалистами чемпионатов мире, в которых участвуют десятки тысяч команд нескольких тысяч университетов более, чем ста стран мира?

Когда Гена за один год выиграл пять основных в мире индивидуальных соревнований, которых участвовали десятки тысяч программистов их разных стран (мы по аналогии с теннисом назвали это «Большим шлемом» по программированию), я отправил в «Петербургский дневник» статью. Они опубликовали ее на … 13-ой странице, а на обложке был вратарь «Зенита» Юрий Лодыгин, который в то время не был даже мастером спорта. Достижения несоразмерные, как впрочем, и публикации.

Л: Среди номинаций на премию есть и «Спорт». Какая номинация кажется ближе к твоей деятельности?

Г: Спорт, все-таки, про официальные виды спорта, кажется. Я не уверен, что к моей деятельности применимо слово «спортивная». Она, скорее, «соревновательная».

ААШ: Я с 2010 года разными способами пытаюсь внедрить мысль, что нужно создать федерацию спортивного программирования в стране, а потом и международную федерацию. Сейчас я очень близок к решению первой задачи по организации федерации, так как для ее создания надо решить две задачи. Сначала необходимо, чтобы Министерство спорта признало спортивное программирование видом спорта, а потом в 55 субъектах страны необходимо основать свои федерации.

В декабре 2018 года при награждении указанным выше знаком отличия в Кремле я сказал, что мы не собираемся останавливаться на достигнутом, и считаю, что Президенту РФ В.В. Путину не по рангу принимать доцента Станкевича и студентов/аспирантов, а он должен принимать заслуженного тренера и заслуженных мастеров спорта, причем решение должно иметь обратную силу, чтобы среди отмечаемых были все те, кто принес славу России, начиная с 1995 года.

Это встретило поддержку присутствующих, а заместитель главы Администрации Президента РФ С.В. Кириенко пообещал помочь с решением первой задачи при письменном обращении к нему. Однако, «воз и ныне там», так как главные молодые «организаторы наших побед», взвесив преимущества и недостатки от появления федерации, посчитали ее организацию нецелесообразной. Как говорится, я в этом вопросе все, что мог сделал и «утираю руки».

Л: Геннадий, сколько раз ты виделся с Лукашенко лично?

Г: Шесть лет подряд – когда мне было от 12 до 17 лет. У нас в Беларуси есть специальный фонд Президента по поддержке одаренной молодежи, и каждый год, обычно в мае, проходило вручение наградных знаков. Одаренных школьников награждают, как правило, в двух номинациях: наука и искусство. Призеры международных предметных олимпиад автоматически становятся лауреатами и приглашаются на награждение. Есть ли те, кто приглашался к Президенту больше раз, чем я, не знаю. Медали на международной олимпиаде школьников по информатике я завоевывал семь раз, за них меня шесть раз приглашали к Президенту.

После 11 класса меня к нему не позвали. Я учился на первом курсе в Университете ИТМО, а олимпиада проходила в сентябре, хотя обычно она проводится летом. Это была школьная олимпиада по результатам предыдущего учебного года и некоторые ее участники уже были студентами университетов. Тогда я занял второе место. Когда я был младше, тех, кто уже учился на первом курсе, приглашали на эту церемонию. На награждении так и говорили «выпускник такой-то школы, ныне студент первого курса такого-то университета». Но когда я начал учиться в университете, меня не позвали, с чем это связано можно только догадываться.

ААШ: Хотел бы ты стать героем Беларуси, как биатлонистка Дарья Домрачева? Она три раза становилась Олимпийской чемпионкой, а у тебя, вроде бы, заслуг больше, чем у нее.

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

Л: Насколько для тебя важно иметь такое государственное признание? Вот у Андрея Станкевича (тренера команд Университета ИТМО) есть премия лучшего тренера мира. Такие звания имеют для тебя значение? Например, то, сколько времени подряд ты удерживаешь первое место в каком-нибудь рейтинге?

Г: Про то, что Станкевич крут в нашей всемирной тусовке, все знают. Потому что следят за соревнованиями International Collegiate Programming Contest (ICPC) и знают тренера Станкевича, который был тренером семи команд чемпионов мира из Университета ИТМО.

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

Недавно мальчик из Гомеля приезжал на олимпиаду школьников по информатике в Университет ИТМО, и очень хотел сфотографироваться со мной. Значит, я, в каком-то смысле подаю пример.

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

Люди при оценке успехов смотрят в основном на две вещи: победы в международных соревнованиях (среди студентов – ICPC, среди школьников – International Olympiad in Informatics (IOI), для всех участников – соревнования от Google, Facebook, Яндекса), и рейтинги, например, на Codeforces. И часто тем, кто в топ-10 рейтинга, начинающие пишут вопросы типа «Как стать таким же крутым». Наверно, это значит, что тебя считают крутым.

ААШ: А кто-нибудь из руководителей компаний приходил награждать на соревнования от компаний?

Г: На соревнованиях «ВКонтакте» приходили Павел Дуров и Андрей Рогозов.

ААШ: Один раз я тебе позвонил после выигрыша «Барселоны» у «Пари Сен-Жермен» и сказал: «Гена, «Барселона» выиграла в твоём стиле». Ты ответил: «Я даже на чужом поле никогда не проигрывал 0:4». На это я заметил: «Как я и думал, ты круче «Барселоны». Ты сам играешь когда-нибудь в футбол/настольный/компьютерный?

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

Чтобы получить разряд, нужно было выступать на соревнованиях и за год обыграть сколько-то человек из разряда выше твоего. Ничего такого не пытался делать, но и сейчас активно играю для собственного удовольствия: например, на чемпионате Университета ИТМО. Несколько раз за сборную университета выступал. За год проводится несколько туров открытого чемпионата нашего университета. В последний раз пришло 20 очень крутых игроков со всего города, обыграл пару игроков, которые сильнее меня, и был очень доволен. Среди студентов Университета ИТМО несколько раз входил в тройку.

ААШ: Где-то писали, что ты мог уже в третьем/четвертом классе поступить в любой технический вуз страны – как это?

Г: Сначала в Беларуси собирались проводить обучение в школе 12 лет, поэтому я поступил в нулевой класс. Потом решили, что надо перенумеровать классы, и получился нулевой, первый, второй, и после этого вся страна закончила второй класс и пошла в четвертый класс. С четвертого класса я учился дальше, а потом решили обратно вернуть одиннадцатилетку, так что в итоге я закончил одиннадцать классов. По всем предметам, кроме информатики, есть разные олимпиады для разных возрастов: для 11 класса – свои, для 10 – свои, для девятого – свои. Для информатики такого не было, задачи были для всех общие, и я когда заканчивал второй класс, то прошел на республиканскую олимпиаду школьников по информатике. И очень неожиданно для себя вошел в ТОП 45 школьников в стране.

ААШ: И имел право поступать в вуз?

Г: Не совсем так. У нас в Беларуси так, если ты попал в победители олимпиады в 11 классе, то ты можешь поступать в любой вуз, а даже если в десятом стал победителем, а в одиннадцатом – нет, то без конкурса в университет тебя не возьмут.

Л: Сколько времени уходило на тренировки к соревнованиям по программированию в неделю максимум?

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

Л: Обычно после двух участий в чемпионате мира ICPC люди заканчивают участвовать в соревнованиях – работа начинает занимать много времени, другие интересы появляются. И ты один из немногих, кто продолжает соревноваться. Откуда мотивация?

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

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

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

ААШ: Вчера я услышал подтверждение, что ты в форме не только в соревнованиях по программированию. Один наш сотрудник сказал, что приняли статью в крутой журнал по биоинформатике, где ты соавтор. Как магистерская работа у тебя прошла? Собираешься дальше заниматься биоинформатикой?

Г: Мой научный руководитель – Леша Сергушичев (он продуктивно занимается биоинформатикой), иногда встречается с задачами, которые имеют какой-то алгоритмический подтекст. Понятно, что комплексно научная деятельность – это не только алгоритмы и теория. Биоинформатика очень практическая область, но Леша в какой-то момент нашел задачу и спросил, как к ней можно подступиться, и я пару месяцев над ней в фоновом режиме думал. Получилось так, что задача была про биоинформатику, но та постановка, которую я получил от Леши, была достаточно абстрактной, что мне интереснее, чем ее приложение. Может быть, помогло то, что Леша сам участвовал в чемпионате России по программированию. Все равно важно знать, про что на самом деле задача, как дальше будет применяться результат.

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

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

Мне кажется, что можно было бы придумать удобный формат для того, чтобы ученые могли формулировать задачи, которые у них возникают во время исследований, и передавать их людям, которые решили в жизни много алгоритмических задач. Занятие наукой – это не только решение трудных задач. Это сложный процесс: эксперименты, идеи, публикации, бюрократия. Говорят, что в бизнесе мало трудных задач, а здесь – много. Хотя, кажется, в науке и платят поменьше.

Л: Правда, что призовые на соревнованиях – это если не основной источник твоего дохода, то, по крайней мере, заметный? В университете висит постер, на котором ты поднимаешь над головой чек на 1 048 576 рублей, и это все-таки миллион, хотя и на команду из двух человек. Это достаточно внушительная сумма для одного соревнования, хотя, конечно, не миллион долларов на команду из пяти человек, как часто бывает в киберспорте. Насколько призовые в соревнованиях важны для тебя и как способ поддерживать финансовое благополучие и как способ выбирать, в каких из их участвовать?

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

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

Л: Есть соревнования, победы в которых кажутся тебе важнее, чем победы в других?

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

На IOI первый раз я ехал без особых ожиданий. Получил серебро, близко к золоту. Расстроился, что не золото. Хотя и серебро было достаточно круто, так как я учился еще в пятом классе. Я не рассчитывал на золото в любом случае. Единственный момент, когда я расстроился, что у меня не золото, это когда награждали по одному – сначала вручали 50 серебряных медалей, потом 25 золотых. Награждают серебряными медалями, а меня всё не называют и не называют. Очень долго... Я надеялся, что сейчас закончатся серебряные призёры и начнутся золотые. В итоге я был вторым с конца серебряным. Было обидно, но это очень быстро прошло. Поражение тоже стимулирует победы, а получил бы я золото, может быть, я бы зазнался и ничего больше не делал.

На IOI было обидно не выиграть в четвертый раз. После трех побед занять второе место было обидно, но и это тоже быстро прошло. Понятно, что всё, что надо было доказать, я уже доказал. Потом были победы на ICPC, потом пять побед на соревновании от Google. Это были разные промежутки времени. И очень сложно сравнивать, что было более дорогим. Из «пенсионерских» соревнований (Гене 24 года, ААШ), где я сейчас участвую, Google – это самое большое, чем можно гордиться.

В том, что я в прошлом году выиграл Topcoder Marathon для себя оцениваю, что это очень круто, так как это формат, сильно отличающийся от традиционных контестов: соревнования длятся 12 часов, одна сложная задача, у которой нет идеального решения. Я все еще не уверен, что мне в этом соревновании не повезло – возможно, надо выиграть в нем еще раз, чтобы доказать себе, что дело не только в везении.

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

Л: Насколько важной частью является олимпиадный туризм?

Г: Ездить весьма клево. Летать не очень люблю, визы очень не люблю, а приезжать в разные страны интересно. Особенно, если встречаешь ребят, с которыми знаком по олимпиадам. Я обычно стараюсь выделить время на то, чтобы исследовать город/страну, путешествовать по окрестностям, найти для себя что-нибудь интересное. Если бы все олимпиады проводились бы только через интернет, было бы не так круто. Приезжать финалистам соревнований в одно место – это очень важно. Добавляет мотивацию. Из всех мест стараюсь магнитики привезти – повесить маме на холодильник и себе.

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

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

Я не очень требователен к комфорту, но и не экстремал. В идеале – свой номер и своя кровать, жить с людьми, которых я знаю или одному. Хостелы не привлекают. И возможность пожить с людьми, которых не знаешь, тоже не для меня. У меня нет требований к гостиницам. Я никогда не хотел и не летал бизнес-классом. Даже случайно меня не апгрейдили, при том, что я много летал. Если в самолете сиденье есть, ноги помещаются и хорошо.

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

И в заключение. 27 апреля 2019 года в Дублине прошел финал Google Hash Code 2019 – командной олимпиады, задания которой компанией Google максимально приближены к реальным. Для участия в финале по результатам предварительного квалификационных соревнований, в которых участвовали тысячи команд со всего мира, была отобрана 41 команда по два-четыре человека. Первое место заняла команда в составе чемпионов мира разных лет Геннадия Короткевича, Бориса Минаева и Нияза Нигматуллина (ditp.ifmo.ru).

Интервью на русском языке опубликовано по адресу http://news.ifmo.ru/ru/university_live/achievements/news/8550/, а на английском опубликовано здесь: http://itmo.news/en/university_live/achievements/news/8550/?fbclid=IwAR3EFm6-Dcvl7xSj1fKtpu4eXEHHL5ji0UajLCYphiGvmy3EPYRhGEs1xw. Cокращенный вариант интервью на русском приведен в журнале «Собака.ru». 2019. Июнь. ТОП 50. Самые знаменитые люди Петербурга, с. 214, 215.