YOUNG

Пропуск в мир ИТ: что такое спортивное программирование и зачем оно нужно

YOUNG
Мария Мильшина
Мария Мильшина

Заместитель директора Центра развития ИТ-образования МФТИ

Мария Передок

Историю спортивного программирования отсчитывают с 1970 года, когда в Техасском университете (США) было проведено первое студенческое соревнование по программированию ICPC. В разное время спонсорами международных турниров становились технологические гиганты — IBM, Apple, Microsoft.

Первая олимпиада по программированию в России прошла в 1981 году среди московских школьников, в которой участвовало всего четыре человека. В 90-х к олимпиадному движению примкнули студенты. Интерес к программированию, как к спорту вырос в 2000-х годах — развивался интернет и рушились географические барьеры. .

Сегодня ICPC — всемирное соревнование: в 2019 году в олимпиаде приняли участие около 50 тысяч участников из 110 стран. Рассказываем, как устроено спортивное программирование, какие у него есть перспективы и на кого оно рассчитано. 

Пропуск в мир ИТ: что такое спортивное программирование и зачем оно нужно

Что такое спортивное программирование

Сегодня популярность спортивного программирования растёт. Число участников чемпионата ICPC за 20 лет увеличилось на 2000%. Но что программирование имеет общего со спортом? Отсылка к спорту здесь не случайна — для достижения высоких результатов в состязании по алгоритмам необходимо потратить много времени на подготовку, решать задачи на скорость и работать в команде. То есть прилагать усилия и в свободное время тренироваться, чтобы на соревнованиях показать класс. 

Алексей Малеев

Директор по дистанционным программам МФТИ

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

Главное участие, а не только победы

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

Михаил Рубинчик

Бронзовый медалист Чемпионата мира 2011, тренер-преподаватель в УрФУ

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

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

Олимпиадное программирование — это карьерный трамплин 

Современные ИТ-компании активно взаимодействуют с техническими вузами и организуют собственные образовательные программы по Computer Science. Так они ищут будущих талантливых сотрудников и делают вклад в развитие ИТ-образования. 

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

Shutterstock

Михаил Рубинчик

Чтобы попасть в российский Яндекс или зарубежные Google или Facebook, нужно решать олимпиадные задачи, и именно поэтому выпускники олимпиадного сообщества оказываются в большом выигрыше. Можно долго спорить о том, какую пользу приносят навыки, наработанные в соревнованиях. Но мы видим, что и ведущие университеты и ведущие ИТ-компании единодушны в своём мнении о том, что таких ребят нужно брать на учёбу и работу.  

Во сколько начинать, чтобы добиться успехов

Соревновательное программирование — не про силу, а про интеллект. Кажется, если не начать заниматься в младшей школе, путь в профессиональное сообщество будет закрыт — такой тренд диктует время. 

Михаил Рубинчик

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

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

Алексей Малеев

Начинать учиться программированию (в том числе спортивному) можно с младшей школы. Есть много обучающих подходов для детей, простые учебные языки. Это полезно, так как развивает мозг, –  и для этого не нужно обладать каким-то большим бэкграундом в математике и физике.

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

Быстрее продвигаться в этом помогут различные курсы и программы, постоянные решения задач, участие в дистанционных чемпионатах на известных платформах – например, индийская CodeChef или российская Codeforces. 

Что будет дальше

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

Shutterstock

Алексей Малеев 

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

Михаил Рубинчик 

Спортивное программирование станет массовым явлением. Сто самых крутых ребят в России через 20-30 лет будет гораздо сильнее, чем сто самых крутых ребят сейчас. Они будут тратить на это больше времени, будут иметь больше ресурсов для поездок, иметь большее количество тренеров, экспертов и так далее. Но радикально на всё движение это не повлияет. 

Фото на обложке: Shutterstock / Diana Grytsku

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 «Программирование — это не математика, а язык». Какие заблуждения мешают школьникам учиться
  2. 2 «Я сам изучал искусственный интеллект перед хакатоном». Подросток об увлечении программированием
  3. 3 Почему программирование должны учить не только программисты

Актуальные материалы —
в Telegram-канале @Rusbase