Олег Христенко: Интерес к карьере в спортивном программировании позволяет людям оставаться в регионах и тем самым их развивать

Гости
Олег Христенко
главный судья Международного образовательного проекта Moscow Workshops ICPC

Ангелина Грохольская: В эфире "Большая страна". Здравствуйте! Я – Ангелина Грохольская. А у нас в гостях – Олег Христенко, главный судья уникального образовательного проекта Moscow Workshops ICPC. Олег, здравствуйте.

Олег Христенко: Добрый день.

Ангелина Грохольская: Только давайте переведем на русский язык. Moscow Workshops – это, я так понимаю, "Московские мастерские"?

Олег Христенко: Это что-то типа тренировочного лагеря, тренировочных сборов перед чемпионатом мира.

Ангелина Грохольская: Так, а что за чемпионат мира?

Олег Христенко: Чемпионат мира по программированию, который имеет тоже довольно давнюю историю. Российские команды уже много лет подряд занимают первые места.

Ангелина Грохольская: А ICPC – это?..

Олег Христенко: Это International Collegiate Programming Contest, то есть это Международный студенческий чемпионат мира по программированию.

Ангелина Грохольская: То есть вы тренируете и воспитываете программистов, готовите к этому чемпионату?

Олег Христенко: Да.

Ангелина Грохольская: Давайте мы сейчас продолжим и поговорим уже об этом более подробно.

Олег Христенко: Да-да-да.

ICPC – Международная студенческая олимпиада по программированию – проводится под эгидой Ассоциации вычислительной техники с 1977 года. Соревнования зародились в стенах Техасского университета, преимущественно в них участвовали команды вузов из США и Канады. В 2000-м первую золотую медаль получили студенты Санкт-Петербургского государственного университета.

Ангелина Грохольская: А если оценивать нашу сборную… не нашу сборную, а наших программистов сейчас вообще на мировом рынке, в мировой IT-сфере, то какое это место?

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

Ангелина Грохольская: А что это за продукты?

Олег Христенко: Например, знаменитый и всем известный "ВКонтакте". Люди, которые стояли за этим, писали код – это первые российские чемпионы мира и первые в истории двукратные чемпионы мира.

Ангелина Грохольская: Я так понимаю, что наши программисты на высоком уровне, вы это уже подтвердили.

Олег Христенко: Да.

Ангелина Грохольская: А вот те легенды о русских хакерах – это правда получается?

Олег Христенко: Ну, надо не путать опять-таки хакерство и спортивное программирование, академическое программирование. Это совершенно разные вещи. Потому что в Чемпионате мира по программированию люди соревнуются с задачами, то есть это, по сути дела, в большей степени математика, чем программирование, то есть именно алгоритмическое программирование. Они создают новые алгоритмы и так далее. Хакеры – это люди, которые пользуются уязвимостями, то есть они работают на стыке "человек – программа", и работают, соответственно, над ошибками, работают, чтобы использовать чьи-то ошибки, закрыть уязвимость, открыть уязвимость. Это целое отдельное…

Ангелина Грохольская: Каждый использует свои знания в своих целях.

Олег Христенко: Да, целое отдельное направление – информационная безопасность, которая никакого отношения к Чемпионату мира по программированию ICPC не имеет.

Ангелина Грохольская: А кто нас обгоняет – Китай и Польша, да?

Олег Христенко: Учитывая, что, начиная с 2012 года чемпионами мира последовательно становятся только российские участники на студенческом уровне, то пока что никто. Но из стран, которые составляют конкуренцию – это очень сильные команды Варшавского университета в Польше, и очень сильно идет Китай. Причем в Китае не только Университет Цинхуа, а и Университет в Шанхае. Ну, про Польшу – ничего удивительного. Фактор успеха России и Польши в спортивном программировании более или менее одинаковый – потому что если мы смотрим начало XX века, то это эпоха знаменитых проблем Гилберта. Но основные прорывные достижения в математике – это польская математическая школа и русская математическая школа.

Ангелина Грохольская: Спортивное программирование. Вот спорт и программирование – для меня, для дилетанта абсолютного, это вещи, которые стоят с разных сторон. Как это сочетается?

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

Ангелина Грохольская: То есть некий аналог с шахматами можно провести, да?

Олег Христенко: Аналог можно провести с теми же шахматами, потому что это интеллектуальный спорт.

Ангелина Грохольская: Ну, артисты тоже соревнуются на конкурсах, но они спортсменами не являются. А почему именно все-таки программисты – спортсмены?

Олег Христенко: Соревнования артистов – там оценка идет с помощью жюри, то есть люди оценивают, какое-то мнение. То есть это именно конкурс, потому что это субъективное мнение. В спортивном программировании же оценка ставится автоматически. То есть я считаю, что спортивное программирование появилось ровно тогда, когда появилась первая тестирующая система автоматическая. Что это такое?

Как проходят соревнования? Допустим, вот это соревнование ICPC. Это команда из трех студентов. Им дано пять часов, один компьютер и от 8 до 13 задач (на последнем чемпионате мира было 11). И у них один компьютер. Они должны разделить, как задачи писать. После чего они начинают писать. Написали программу – и отправляют ее в систему для проверки. И эта программа запускается на подготовленных тестах, которые просто проверяют ее корректность автоматически – прошла, не прошла. Если посмотреть аналогии, то это как стрельба в биатлоне – попал, не попал. Там же объективно. Если ты не попал, то убеждай, не убеждай…

И как только команда отправила задачу, она получает результат. То есть она видит – либо задача зачтена, и у нее есть уже как бы один балл, либо задача не зачтена. И она может продолжать ее либо решать, либо что-то еще.

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

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

Ангелина Грохольская: Ага. То есть постоянно меняются участники, да?

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

Ангелина Грохольская: А правда, что участие в чемпионате платное?

Олег Христенко: На сам финал люди приезжают, им оплачивают гостиницу, все, университет либо поддерживающие спонсоры. У любой команды сильной обычно есть и всегда появляется спонсор из IT-компаний, потому что надежда на то, что эти люди потом придут работать к ним. Вы понимаете, что со всего мира стартует где-то 30–40 тысяч студентов, а в финал выходят 140–150 команд. Это лучшие из лучших, элита. И понятно, что компания, оплатив поездку, она просто получит лояльность этих людей и получит шансы, что эти люди будут потом с ними сотрудничать.

Ангелина Грохольская: А много наших студентов, которые были участниками этого чемпионата, остались за рубежом, может быть, получили места в той же IBM?

Олег Христенко: С этого года генеральным спонсором IBM перестал быть, потому что люди не шли. К сожалению, для IBM получилось так, что в последние годы наиболее сильные программисты шли в другие компании, в Google. Вот у нас, россиян, аналог – "Яндекс".

И сейчас у нас получается так. Мы говорили про "ВКонтакте", я продолжу. Создатели компании "ВКонтакте", кода и вообще идеи этого дела – это не только Павел Дуров. Павел Дуров – он все-таки гуманитарий. А его брат Николай…

Ангелина Грохольская: Он, скорее, менеджер, который организовал все это.

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

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

Ангелина Грохольская: То есть нужны педагоги, нужны преподаватели, тренеры? Я не знаю, как их назвать.

Олег Христенко: Да, нужны люди, которые могут выполнить эти функции. И вот тут вступает в действие концепция Moscow Workshops, концепция сборов.

Ангелина Грохольская: Продолжим буквально через несколько секунд.

Проект Moscow Workshops был создан в 2012 году на базе МФТИ для подготовки студентов к Международной олимпиаде по спортивному программированию. Проект включает тренировочные кэмпы, онлайн-курсы, заочные чемпионаты и программы для школьников. В подготовительных сборах участвовали представители 167 вузов из 50 стран мира.

Ангелина Грохольская: Сегодня мы говорим о спортивном программировании, у нас в студии Олег Христенко. Команды формируете вы и отправляете на чемпионат?

Олег Христенко: Команды? Мы лишь создаем тренировочную базу, мы проводим Moscow Workshops, мы проводим тренировочные лагеря и у нас в МФТИ, и проводим их по всему миру. То есть мы просто подбираем задачи, создаем условия для тренировок, а собственно команды формируют сами тренеры. В команде есть тренер обычно – он приезжает либо он работает удаленно.

В частности, проект Moscow Workshops уникален тем, что мы, по сути дела, впервые в мире, да и в целом просто к спортивному программированию подход, именно подход к этому, как к какой-то единой системе, он в очень большой степени уникален для России. Потому что в остальных странах, которые участвуют в соревнованиях… Довольно активная и сильная польская школа, сильная китайская школа. В Северной Америке это зародилось, несколько первых чемпионатов было, но там это все в основном на любительском уровне.

Ангелина Грохольская: А у нас профессиональный подход. Я знаю, что в этом году очередная победа нашей команды.

Олег Христенко: Да, в этом году очередная победа. Первое место заняла команда Московского государственного университета, второе место заняла команда Московского физико-технического института, то есть это дубль московских команд. В прошлом году победила команда Университета ИТМО. Неслучайно эта концепция появилась и это проходит в Московском физико-техническом институте, потому что еще с отцов-основателей, с академика Капицы именно школа Физтеха и система Физтеха всегда были следующими – широкая интеграция науки и реальных институтов, производства. То есть в Физтехе отучился четыре курса – и пошел на базовую кафедру.

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

Ангелина Грохольская: Это практики.

Олег Христенко: Практики. Но они сами олимпиадники, и им интересно также поддерживать IT-образование. Они готовы приехать на сборы и почитать лекции. То есть как бы сейчас, в сравнении с системой, которая была до введения ЕГЭ, сейчас мобильность студента резко увеличилась. Это что значит? Что более или менее способный студент, условно говоря, из Самары, из Саратова поедет в Москву.

Ангелина Грохольская: Шансы равны, да?

Олег Христенко: И это стягивает людей в столицу. И в какой-то степени проекты, типа Moscow Workshops, могут послужить выходом из этой ситуации, которая в какой-то степени реальная проблема, потому что опять-таки страна является развитой настолько, насколько развиты ее регионы.

Ангелина Грохольская: Это точно.

Олег Христенко: Да. И мы получаем ситуацию следующую. В Чемпионате мира по программированию ICPC, в финале есть правило: это не чемпионат стран (страны, конечно, учитывают, табличка), это не чемпионат людей, а это чемпионат университетов. Поэтому система ICPC в приложении к нашей отечественной российской реальности стимулирует развитие регионов, потому что человек может хотеть оставаться дома, учиться у себя, потому что у него будет шанс попасть на финал. Интерес к карьере в спортивном программировании позволяет людям как-то оставаться в регионах – и тем самым их развивать.

Ангелина Грохольская: Олег, насколько я знаю, у нас в России существуют еще подобные мастерские на Дальнем Востоке, во Владивостоке, если я не ошибаюсь.

Олег Христенко: Да.

Ангелина Грохольская: Это отдельный проект?

Олег Христенко: Что касается Владивостока. Во Владивостоке в этом году сборы будут проведены в первый раз. Они проводятся, и это часть нашего проекта Moscow Workshops. Это полноценные сборы. И не только Владивосток, но и наши белорусские коллеги Гродно. В ближайшее время, 30 июля, мы проводим выездные сборы Moscow Workshops одновременно в двух концах бывшего Советского Союза – во Владивостоке и в Гродно.

Ангелина Грохольская: Скажите, вы на своих тренировочных базах, турах (я не знаю, как это правильно назвать), в своих мастерских, я понимаю, готовите к соревнованиям, чемпионатам. А вы учите студентов (или, может быть, это в университете происходит) зарабатывать?

Олег Христенко: Учить студентов зарабатывать, учить студентов именно выбирать, как лучше заработать – уйти ли в устойчивую компанию и иметь стабильную зарплату, но просто как бы делать от и до, или рискнуть и сделать свой стартап.

Ангелина Грохольская: Многие сейчас хотят делать именно стартапы, как мне кажется.

Олег Христенко: Ну, это да.

Ангелина Грохольская: А для стартапа нужны инвесторы.

Олег Христенко: Ну, это да, собственно говоря. Во-первых, при крупных университетах уже давно есть бизнес-парки. В частности, руководитель проекта Moscow Workshops Алексей Викторович Малеев одновременно в Московском физико-техническом институте ведет проект по международным делам, проект именно по бизнес-развитию студентов.

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

И по сути дела, очень много людей идут и в России в стартапы, очень много людей, в Америке. В частности, чемпион мира из Университета ИТМО. Михаил Кевер, в частности. Есть история – наш россиянин, петербуржец Виктор Шабуров, он создал уже несколько стартапов с участием олимпиадников. В частности, первый был сформирован с участием людей из Одесского университета. Это знаменитая Luxury, которая была продана Snapchat, работа с изображениями. Сейчас он в Сочи делает новый инвест-проект, это проект по искусственному интеллекту. И там выпускник Физтех Александр Машрабов, например.

Ангелина Грохольская: Какие из региональных университетов сейчас имеют наибольшие перспективы в спортивном программировании?

Олег Христенко: Региональных? В смысле – не Москва и не Санкт-Петербург?

Ангелина Грохольская: Не Москва и Санкт-Петербург, да.

Олег Христенко: Из региональных? Ну, в первую очередь стоит отметить Екатеринбург. В частности, Чемпионаты мира по программированию два раза принимала наша страна. Чемпионат проходит каждый год, и каждый год он проходит в разных местах. Например, в этом году чемпионат будет в Пекине, юбилей Пекинского университета. Еще были до этого в Африке. Но два раза подряд… Ну, изначально чемпионаты проводились только в Соединенных Штатах, а потом стали постепенно ездить.

Ангелина Грохольская: Ну, перемещается, да.

Олег Христенко: Сейчас в связи с ситуацией, с визовой политикой и текущей республиканской администрацией в позапрошлом году был чемпионат в США, но там были большие визовые проблемы для участия стран, поэтому как бы…

Ангелина Грохольская: А Россия принимала чемпионат?

Олег Христенко: Россия принимала чемпионат два года подряд. Это единственная страна, кроме США, которая принимала дважды. В 2013 году – Санкт-Петербург. И в 2014 году – как раз Екатеринбург. Более того, Москва в этом году подала заявку на финал чемпионата мира. И мы надеемся, что в 2020 году… В 2018 году финал Чемпионата мира по футболу. Мы надеемся, что в 2020 году Москва примет финал Чемпионата мира по программированию.

Ангелина Грохольская: А вот мне интересно о футболе, раз уж мы так проводим аналогии и сравниваем с вами в течение всей беседы с футбольными чемпионатами. Футбол – это эмоции, это крики и на трибунах, и на поле. А на Чемпионате программирования спортивного есть такие эмоции или все гораздо спокойнее?

Олег Христенко: Одно из условий проведения Чемпионата мира по программированию является следующее: чемпионат должен проводиться в большом едином зале, то есть все люди сидят, все их видят. Решившей команде приносят шарики, чтобы с трибуны видели, что эта команда решила. И там есть трибуна, балкон. И когда сдает задачу какая-то страна – радостные крики болельщиков этой страны.

И, собственно говоря, когда в 2005 году был чемпионат в Шанхае, там лидировала команда МГУ с Петром Митричевом. Это один из сильнейших участников, москвич, сейчас работает в Швейцарии. Там местные сдали две задачи в заморозку, то есть принесли шарики, но таблицы не было. И обогнали. И такой крик в зале был! И сразу стало понятно, что сдали хозяева.

Ангелина Грохольская: Значит, в спортивном программировании тоже есть и фанаты?

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

Ангелина Грохольская: Олег, спасибо вам огромное за беседу. Спасибо, что рассказали и познакомили и меня лично, и многих наших телезрителей со спортивным программированием. Будем надеяться и ждать в 2020 году чемпионат в России.

Олег Христенко: Ну, надеемся, да, надеемся, что Москва получит чемпионат.

Ангелина Грохольская: И я хочу пожелать вам как можно больше болельщиков, фанатов.

Олег Христенко: Ну, с вашей помощью.

Ангелина Грохольская: И чтобы этот спорт, как вы сказали, стал популярным.

Олег Христенко: Ну да, с вашей помощью. Потому что достижения есть, интерес тоже есть. Главное – правильно подать.

Ангелина Грохольская: Это действительно востребованно. Спасибо вам огромное. Сегодня у нас в студии был Олег Христенко, главный судья проекта Moscow Workshops ICPC.