Пятница, 23 июня 2017

Екатеринбург: +16°

$ 59,66 Стоимость продажи доллара Официальный курс ЦБ РФ на 23.06.2017 € 66,68 Стоимость продажи евро Официальный курс ЦБ РФ на 23.06.2017
Brent 53,03$ Стоимость барреля нефти, в долларах. По данным Finam.ru Квартиры 66 334₽ Средняя стоимость одного квадратного метра на вторичном жилом рынке Екатеринбурга. Данные: Уральская палата недвижимости / upn.ru
Ключевая ставка: 9,00% По данным ЦБ РФ.

Пятница, 23 июня 2017

Екатеринбург: +16°

$ 59,66 Стоимость продажи доллара Официальный курс ЦБ РФ на 23.06.2017 € 66,68 Стоимость продажи евро Официальный курс ЦБ РФ на 23.06.2017
Brent 53,03$ Стоимость барреля нефти, в долларах. По данным Finam.ru Квартиры 66 334₽ Средняя стоимость одного квадратного метра на вторичном жилом рынке Екатеринбурга. Данные: Уральская палата недвижимости / upn.ru
Ключевая ставка: 9,00% По данным ЦБ РФ.

Пятница, 23 июня 2017

Екатеринбург: +16°

$ 59,66 Стоимость продажи доллара Официальный курс ЦБ РФ на 23.06.2017 € 66,68 Стоимость продажи евро Официальный курс ЦБ РФ на 23.06.2017
Brent 53,03$ Стоимость барреля нефти, в долларах. По данным Finam.ru Квартиры 66 334₽ Средняя стоимость одного квадратного метра на вторичном жилом рынке Екатеринбурга. Данные: Уральская палата недвижимости / upn.ru
Ключевая ставка: 9,00% По данным ЦБ РФ.

Спортивное программирование. Интеллекция Михаила Рубинчика, тренера команды УрФУ

×
Интеллекции 8 июня в 18:00
В материале:

Рубинчик Михаил, Чемпионат мира по программированию

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

Краткий конспект лекции

(Также есть полная расшифровка лекции)

Подписывайтесь на Интеллекции!

Анонсы, фотоотчёты, новости технологий

Емэйл-рассылка

Facebook

ВКонтакте

1. История

Чемпионаты мира по спортивному программированию «изобрели» в Бейлорском университете (США) в 70-х. Впервые не в США чемпионат прошёл в 1999 году, это было в Эйндховене (Нидерланды). Заявку на проведение подаёт не город или страна, а университет.

В последнем чемпионате мира участвовали 46 тыс. человек.

Правила чемпионата

2. Терминология

ACM — Association for Computing Machinery, Ассоциация вычислительной техники, организатор чемпионата мира

ACM ICPC — ACM International Collegiate Programming Contest, собственно чемпионат мира по спортивному программированию

ACMщики, олимпиадники, спортивные программисты — участники соревнований

vk.com/ural_sp_school — группа «ВКонтакте» для школьников Свердловской области, которые занимаются олимпиадами по информатике или ещё только хотят ими заняться

3. Лидеры

На турнире кроме чемпионства разыгрывается 12 медалей: по четыре золотых, серебряных и бронзовых. Российские команды последние годы стабильно завоёвывают 4-5 из них. Китайские — 2-3. Следом идут польские команды. Иногда в медали попадают команды из США.

4. Российские команды

Самый сильный вуз — санкт-петербургский ИТМО. Его команды семь раз становились чемпионами, 15 раз брали медали, 22 раза выходили в финал.

Фотоотчёт

Вопросы Malina.am

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

Михаил Рубинчик: Я рассуждаю с позиции тренера. Я живу в олимпиадном движении, а не в промышленной разработке. Моя цель — конечно, спорт. Если ребёнок говорит, что хочет попасть в крутую IT-компанию, и спрашивает, сколько олимпиадных задач для этого надо решить, я честно отвечаю: «Если хочешь попасть в IT-компанию, узнай, чем она занимается и что спрашивают на собеседованиях, и готовься к этому». Косвенно олимпиада, конечно, подготовит — в принципе, на собеседованиях бывает много задач, похожих на олимпиадные.

Что касается популяризации… Вообще любой спорт — это более простая точка входа, чем профессия. Если студенты уже немного думают о профессии, то школьникам ещё тяжело осознать, кем они будут работать. Олимпиада для них — это простая точка входа. На мой взгляд, можно популяризировать профессию через олимпиады, это возможно.

Все вопросы

Екатерина Дегай: Если российские программисты с 2012 года выигрывают все чемпионаты, значит, стереотип, что они самые сильные в мире, не такой уж стереотип?

Михаил Рубинчик: Надо разграничивать промышленную разработку и спортивное программирование. Это взаимосвязанные темы, но я бы сказал, что спортивное программирование ближе к компьютерным наукам. Собственно, когда я защищал кандидатскую диссертацию, я использовал только знания, полученные в олимпиадах.

Раз спортивное программирование близко к компьютерным наукам, соответственно, оно близко и к исследовательским отделам IT-компаний, но чуть меньше. Точно могу сказать, что не знаю олимпиадника, который не смог бы найти работу. Все без проблем устраиваются. В 1990-е годы от нас почти все уезжали в Америку или в Европу. В последнее время тренд изменился, и очень многие из тех, с кем я участвовал в чемпионатах, остались в Екатеринбурге. Несколько участников чемпионата мира работают в «СКБ Контуре», несколько в местном филиале «Яндекса».

ЕД: И компании охотятся за такими парнями. Например, Геннадию Короткевичу, который сейчас лидирует в рейтинге Codeforces, несколько раз предлагали работу в Google.

МР: И не только ему. Он лучший в мире, но у топ-100, топ-1000 предложений тоже много. У меня на почте были предложения от Google и Facebook ещё до того, как я пошёл на чемпионат мира.

ЕД: До начала лекции мы с тобой обсуждали, что во «ВКонтакте», в «Телеграме» работает много ребят, которые пришли именно из олимпиадного движения.

МР: Да. Это проект Павла Дурова, а его брат, Николай Дуров, чемпион мира. Может быть, у него специфическое отношение к участникам олимпиад. А может и нет, может, он просто делает правильный выбор, а остальные пока неправильный. Я сам не работаю разработчиком, и мне сложно судить о промышленной разработке, но российские олимпиадники — и не только олимпиадники, но и программисты — выпускники вузов — хорошо устраиваются и находят себе работу. Я не слышал других историй.

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

МР: Я рассуждаю с позиции тренера. Я живу в олимпиадном движении, а не в промышленной разработке. Моя цель — конечно, спорт. Если ребёнок говорит, что хочет попасть в крутую IT-компанию, и спрашивает, сколько олимпиадных задач для этого надо решить, я честно отвечаю: «Если хочешь попасть в IT-компанию, узнай, чем она занимается и что спрашивают на собеседованиях, и готовься к этому». Косвенно олимпиада, конечно, подготовит — в принципе, на собеседованиях бывает много задач, похожих на олимпиадные.

Что касается популяризации… Вообще любой спорт — это более простая точка входа, чем профессия. Если студенты уже немного думают о профессии, то школьникам ещё тяжело осознать, кем они будут работать. Олимпиада для них — это простая точка входа. На мой взгляд, можно популяризировать профессию через олимпиады, это возможно.

ЕД: Чемпионаты мира проводятся на спонсорские деньги, и компании вкладывают в это миллионы долларов. С 1997 году главным спонсором была IBM, а со следующего года им станет российская компания JetBrains. Почему компании так интересуются подобными мероприятиями?

МР: Действительно, деньги вкладываются большие. Спонсорский взнос IBM на протяжении последних нескольких лет — миллион долларов. И принимающая сторона должна найти не меньше миллиона. Когда чемпионат проводился в Екатеринбурге, принимающей стороной был УрФУ, хост-партнёром — «СКБ Контур». Они суммарно должны были привлечь миллион долларов. Для «Контура», наверное, приличные деньги.

И это только для чемпионата мира. А ведь есть ещё несколько уровней отбора, есть отдельные независимые чемпионаты. Мы проводим чемпионат Урала, который не имеет отношения к отборочной сетке на чемпионат мира. Он стоит тысяч 700.

«СКБ Контур» нас поддерживает. Все тренировки проходят в «Контуре». На поездки — это два, два с половиной миллиона рублей — примерно половину даёт УрФУ, половину — «Контур». PR-эффект от этого точно есть, и точно есть HR-эффект, но его чуть сложнее измерить. Откуда мы знаем, человек пришёл в «Контур», потому что он в олимпиадах участвовал или потому что у него препод из «Контура»? Сейчас у нас в команде один участник работает в «Контуре», ещё один человек стажировался. Конверсия есть. Вопрос скорее не в этом, а в том, насколько хорошо они приживаются на работе. Про это я не знаю. Время от времени компания что-то анализирует, но при этом ни «Контур», ни «Яндекс» не прекращают спонсировать и не сокращают спонсирование. После анализов они, может быть, решают, что нужно что-то корректировать, но в целом я бы не сказал, что у ACM есть проблемы с деньгами.

ЕД: У меня есть версия, что JetBrains рассматривает спонсорство как способ продвижения своего языка программирования Kotlin. Может, IT-компании стремятся поддерживать чемпионат, чтобы продвигать свои продукты?

МР: Вполне возможно. Но это конкретно JetBrains, это частная история одной компании. Вообще же у нас не так много IT-компаний, которые делают продукты для разработчиков. Но для JetBrains, я думаю, это важно. Kotlin — молодой язык, он ещё развивается.

И ещё такой момент: Билл Паучер, директор чемпионата мира, сказал, что контракт с JetBrains заключён всего на три года. С IBM всегда заключали на пять лет. Теперь организаторы хотят создать фонд спортивного программирования, в который будут как-то собирать деньги с выпускников олимпиад, с IT-компаний и так далее. Этот фонд должен будет стать спонсором чемпионата. Возможно, это будет ещё один толчок для развития.

ЕД: Любой спорт — это всегда ещё и шоу. Хорошее шоу устраивают на соревнованиях по киберспорту: там специальные арены, много людей собираются, смотрят, болеют. Спортивное программирование не так зрелищно. Может ли чемпионат мира по программированию начать развиваться в этом же направлении? Стали же популярны шахматы, и Сергей Карякин стал новым героем.

МР: Организаторы к этому точно стремятся, но это довольно сложно.

Шахматы, несмотря на то что это интеллектуальный вид спорта, всё равно понятны. Любой образованный человек может понять правила шахмат, даже если он не способен оценить крутость хода. В спортивном программировании условия задачи можно не понять. Условные домохозяйки совсем ничего не поймут. Разработчики, но не спортивные программисты — кто-то поймёт, кто-то нет. Условия, наверное, все поймут, а сложна задача или нет, могут не понять.

ЕД: Ты был приглашённым экспертом в трансляции с последнего чемпионата мира. Сложно было объяснять людям, что происходит и как это устроено? Насколько популярны такие трансляции?

МР: В этом году трансляция впервые была на пяти языках. На чемпионате в Екатеринбурге мы впервые организовали профессиональную трансляцию, позвали ту же компанию, которая транслировала Сочи-2014. Всё было очень пафосно, и трансляция была сделана очень круто. Но полноценно перенести спортивную трансляцию на спортивное программирование не получилось. Трансляция была дорогой, качественной и красивой, но не очень интересной, на мой взгляд.

До 2015-го трансляцию делали местные организаторы. В Екатеринбурге это делал «Контур». Мы всё сделали качественно, но не продумали, как это сделать продаваемо. Через год чемпионат был в Марокко, там не смогли найти хорошую телевизионную компанию, и качество трансляции было ужасное.

Теперь у чемпионата мира есть своя команда трансляции из 20 человек. Сделали красивое оформление. Когда нам показывают команду, то мы видим, какие задачи она сдала — они обозначаются зелёным, а красным — то, что она пыталась сдать, но не сдала. Зрители по-прежнему могут не понять задачи, но они видят, кто лидирует, что должна сделать команда, чтобы обогнать того, кто перед ней.

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

МР: По стандарту министерства образования во всех школах есть около года программирования. По факту это не соблюдается. Там, где программирование всё-таки есть, это в большинстве случаев одна-две четверти Pascal. Нужно реформирование. Мы хотим пообщаться с министерством или конкретно со школами, чтобы как-то поменять стандарт. Когда дети с пятого по одиннадцатый класс изучают информатику, и это семестр Word, семестр Excel…

ЕД: Бездарно потраченное время.

МР: Ну, это полезные программы, ими нужно уметь пользоваться, но только школьники часто умеют пользоваться ими лучше, чем учителя. Я вообще за то, чтобы программирования в школах было больше, но его надо как-то по-другому преподавать. В Свердловской области при нашем участии это может развиваться более форсированно, чем в России. Если мы так сможем сделать, будет здорово.

ЕД: Может ли чемпионат мира по программированию ещё раз пройти в Екатеринбурге?

МР: По правилам может. Например, в Орландо чемпионат был в 2011-м — я в нём участвовал; сейчас Орландо в заявках, и, по-моему, где-то в 2005-м тоже было Орландо. Формально ничего не запрещают. Но как мне кажется, в России любят ухнуть, провести мероприятие, а потом — «нет, больше не хотим». У нас после проведения чемпионата было такое ощущение, и все воспринимали его как разовый проект. Хотя УрФУ спустя пару лет взялся за турнир юных физиков — тоже довольно масштабный ивент. Скажем так: должен появиться человек, который загорится идеей и будет её форсить. Появится – может быть, случится. Пока я его не вижу.

ЕД: Я хочу пригласить на сцену ребят, которые в этом году получили на чемпионате бронзу. Это Владимир Лесков, Кирилл Бороздин и Алексей Кунгурцев. Ребята, расскажите, как вы оказались в спортивном программировании и кем видите себя в будущем.

Кирилл Бороздин: Я в школе занимался олимпиадами по информатике, ездил на всероссийскую олимпиаду школьников. Мне хотелось изучать что-то больше школьной программы. На всеросе мне понравилось, там были умные интересные ребята, которые разделяют мои увлечения. И ещё все призёры получали по 30 тысяч. Потом — поступление в любой вуз России на соответствующий факультет. я мог выбирать. Когда пришёл в университет, познакомился с Мишей и узнал, что в университете можно продолжать заниматься олимпиадами. Начал тренироваться — и вот, попал на чемпионат мира.

В следующем году я последний раз смогу участвовать в чемпионате — там ограничение по возрасту и по количеству участий.

Этим летом иду на стажировку в «Яндекс». Навыки, полученные на олимпиаде, помогли мне пройти собеседование. На собеседовании было не так сложно, потому что задачи были алгоритмические, математические, и что-то похожее я видел и решал на олимпиадах. И во время работы, думаю, эти навыки могут пригодиться — навыки быстро что-то написать, быстро отладить, быстро разобраться.

Владимир Лесков: Я класса с пятого занимался олимпиадами по математике. В девятом классе поступил в СУНЦ УрФУ, поучаствовал в международном турнире юных физиков, продолжал заниматься математикой. В десятом занялся ей более плотно и вышел на всероссийскую олимпиаду, но в одиннадцатом как-то так получилось, что решил перейти на информатику — и тоже вышел на всероссийскую олимпиаду. Тогда же познакомился с Мишей.

Я всего лишь на втором курсе, поэтому о работе и стажировках говорить пока рано. На первом курсе я думал, что 100% буду программистом, а теперь уже не уверен. Может, буду учёным или вообще стану заниматься чем-то другим. Посмотрим.

Алексей Кунгурцев: Я учусь на первом курсе магистратуры. В девятом классе я после уроков информатики попал в Летнюю компьютерную школу, это такой всероссийский лагерь для школьников. И остался в ACM. ACM — это не только задачи; это люди, новые знакомства. Сейчас я работаю в «Контуре» и вижу общее с ACM: разработка — это командная работа. На соревновании в команде три человека, на работе больше, но всё равно надо уметь работать.

ЕД: Вы дружная команда? Нужно быть друзьями, чтобы хорошо выступать?

МР: В команде, где я сам был участником, мы общались только на контесте. Мы даже на контест из гостиницы шли разными путями.

Я не считаю, что нужно быть друзьями; в команде должны быть выстроены профессиональные отношения. Но вот Кирилл, например, считает, что важно быть друзьями. Зависит от личностей. Тем, кто всё принимает близко к сердцу, лучше, чтобы в команде были друзья. А тем, кто более хладнокровен, может быть, даже вредно, если партнёры по команде друзья.


«Интеллекции» — совместный проект телеканала Malina.am, благотворительного фонда Владимира Потанина, Президентского центра Б. Н. Ельцина и УрФУ

Организаторы




Генеральный информационный партнёр


Партнёр

Ведущая: Екатерина Дегай

Оператор: Максим Черных, Роман Бороздин

Режиссёр монтажа: Андрей Тиунов

Заметили ошибку в тексте? Выделите текст и нажмите Ctrl+Enter
Комментарии
Будьте с нами!
×
×
Наверх^^