Суми: новини, події, коментарі

Нотехс - будівництво у Сумах

Программные килограммы

123

Студенты СумГУ посоревнуются с лучшими компьютерными умами на чемпионате мира по программированию

Дмитрий Литовченко

Каждый, кто хотя бы однажды набирал текст в популярной программе Microsoft Word, непроизвольно пользовался компьютерной проверкой орфографии. Неправильные слова услужливая программа подчеркивает красной линией и даже предлагает варианты замены. Чтобы научить компьютер этой премудрости, когда-то потребовался труд сотни программистов. Теперь с этой задачей способны справиться и набравшиеся опыта сумские программисты.

Об уровне подготовки наших знатоков алгоритмов говорят последние успехи. Недавно команда по спортивному программированию Сумского государственного университета (СумГУ) преодолела четвертьфинал чемпионата мира, а в конце ноября ребята собираются покорить следующую вершину на полуфинале в Батуми, где померяются силами с тысячами других программистов.

Задача по проверке орфографии в тексте на таких соревнованиях считается простой. «Зачастую приходится решать абстрагированные и немного усеченные реальные задачи. Мы строим абстрактные модели реального мира», — говорит тренер команды СумГУ по спортивному программированию, аспирант кафедры информатики Сергей ПЕТРОВ и приводит пример: построение оптимальной стратегии выполнения очереди задач на нескольких компьютерных процессорах. Простыми словами: нужно сделать так, чтобы миллионы сложнейших операций были реализованы за минимум времени и чтобы при этом ничего не сломалось. Лишь условие подобной задачи занимает несколько листов А4 английского текста, и непосвященному человеку не удастся разобраться чего от него хотят. Тем не менее это реальная задача, с которой сейчас сталкиваются разработчики программного обеспечения по всему миру. За специалистами, знающими такие алгоритмы, охотятся монстры индустрии Google, IBM, Microsoft.

«Задача считается решенной, если она проходит все тесты с точностью до единички. Если результаты хоть немного отличаются, задача не решена. Это и понятно. Когда запускается спутник за миллион долларов, а программа ошибется, то спутник разобьется. Или если программа, обеспечивающая работу кардиостимулятора, даст сбой, последствия могут быть ужасными», — разъясняет Сергей Петров.

С 1999 г. он ездит на различные соревнования как программист, а с недавнего времени начал обучать новинкам алгоритмического мира сумских школьников и студентов. «Не представляете, какое это удовольствие — решить серьезную сложную задачу, над которой думал несколько дней. Это восторг, эйфория. Вы бы видели моих ребят, когда на четвертьфинале чемпионата мира они сдали первую задачу!» — улыбается он. Набрав около тридцати учеников из сумских вузов и школ, он готовится догнать гениев программирования из московских и питерских вузов.

Развивать специфическое направление Сергею помогает проректор СумГУ Александр ЛЮБЧАК, и это неслучайно, в университете это направление имеет статус стратегического — сразу несколько кафедр выпускают профессионалов IT-индустрии. Специалисты, способные быстро находить эффективное решение и реализовывать его, очень ценятся. На подготовку профессионала необходимо много времени и усилий. Россияне, давно подметившие перспективную волну, создали целую структуру школ, в которых детей (с 8–9 класса) целенаправленно готовят к участию в соревнованиях по программированию. В Украине пока все держится на талантливых самоучках и самородках. «Если бы, к примеру, Николая ВАЛУЕВА, обладающего уникальными природными данными, не обучили боксерским приемам, он бы не стал выдающимся спортсменом», — приводит аналогию Сергей Петров.

Вопреки стереотипам о нелюдимых программистах, просиживающих за компьютером ночи напролет, одетый в деловой костюм 25-летний парень производит впечатление общительного и открытого человека. «Это неправильный стереотип, что если человек — программист, то должен быть заросшим, себе на уме. Нет. Это обыкновенные люди, имеющие нормальные ценности, приличный внешний вид.

Я встречал финалистов, призеров чемпионатов мира. Любой элемент внешнего мира откладывает отпечаток на человека, в том числе и компьютер. Но мы же не говорим, что общественный транспорт откладывает большой отпечаток на человека!» — рассуждает программист.

Многие бывшие студенты, увлекавшиеся олимпиадным программированием, теперь стали преуспевающими и самостоятельными бизнесменами. Александр АЛФИМОВ, Артем ВОЛК, Дмитрий УСИК, Виталий КРИВЕНКО теперь развивают выбранные компьютерные направления в собственных фирмах. «Участие в олимпиадах — это вклад в свою рыночную стоимость. Человек, умеющий решать нетрадиционные задачи, знающий алгоритмы, умеющий манипулировать структурами данных и творчески решать нетривиальные задачи, ценится выше даже самого качественного „кодера“», — говорит Сергей Петров.

О будущем он говорит философски: «Было бы банально, если бы я сказал, что в будущем будут программы, которые будут сами писать программы. Динамика развития отрасли программирования слишком высокая. В программировании будущее делается уже сейчас».