Программирование как игра?
Автор: Константин Кноп
Классики (от Дональда Кнута до Дэвида Гриса и Эдсгера Дийкстры) долго спорили о том, чем же является программирование как вид человеческой деятельности - научной дисциплиной, искусством, профессией или чем-то еще. Никому из "отцов-основателей", видимо, не могло прийти в голову, что программирование станет игрой и даже видом "интеллектуального спорта". Однако именно игровое (или, если угодно, спортивное) программирование в последнее время стало одним из путей, приводящих в эту сферу самую талантливую и яркую молодежь. Причем не поодиночке, а целыми командами.
Ты помнишь,как все начиналось?..
"Википедия" утверждает, что история командных чемпионатов по программированию уходит корнями в далекий 1970 год, когда в Техасском университете было проведено первое соревнование такого рода. Спустя семь лет в рамках научной конференции ACM (Association for Computer Machinery) состоялся первый международный турнир, и пошло-поехало…
Все последние годы борьба за чемпионство идет между командами из Китая, Польши и России. Причем борьба нешуточная, и разворачивается она задолго до попадания будущих чемпионов на студенческую скамью. В Китае на поддержку школьных олимпиад по программированию (впрочем, другие предметы школьной программы тоже не забыты) государство ежегодно выделяет огромные деньги. В Китае нет исторической традиции разворовывать дотации, поэтому там эти деньги реально работают.
Впрочем, и у нас дела обстоят неплохо - иначе откуда бы взяться успехам на международной арене? В 1996 году учрежден Северо-Восточный Европейский регион, проводящий свое (полуфинальное) соревнование среди студентов. На сегодняшний день он является крупнейшим в мире как по охвату территории, так и по количеству команд-участниц. Предварительные отборочные турниры проводятся в четырнадцати городах, от Минска и Еревана до Красноярска и Владивостока. Четыре раза "наши" команды становились чемпионами мира.
Восьмой год подряд проводятся Открытые Всероссийские командные олимпиады по программированию среди школьников (ВКОПШ). В последней олимпиаде, проходившей в декабре 2007 года в Санкт-Петербурге, участвовали 140 команд. А главный приз - неожиданно для очень и очень многих - уплыл в Гомель, областной центр братской Беларуси.
Гомельское Чудо -взгляд снаружи…
Первое место и Кубок чемпионов олимпиады завоевала сборная команда городов Гомеля и Столбцов, третье место - команда города Мозыря. Только на втором месте оказался новый чемпион России - сборная команда Нижнего Новгорода и Сарова. Команды Москвы и Санкт-Петербурга остались на четвертом и пятом местах, безнадежно отстав от первой тройки по времени. Такого разгрома школьников российских столиц не случалось за всю многолетнюю историю этих интеллектуальных соревнований".
Эти слова сказаны не сторонним наблюдателем, а профессором СПбГУ ИТМО Владимиром Глебовичем Парфеновым - одним из главных организаторов командных программистских соревнований в России. Охарактеризовав успех двух белорусских команд как "ошеломляющий", он особо обратил внимание на бронзовых призеров из Мозыря (районного центра Гомельской области, города со стотысячным населением): "Команда, подготовленная Алексеем Бруновым, руководителем кружка информатики при Клубе юных пожарных (!) Мозыря, одерживает победу над сборными Москвы и Санкт-Петербурга.
Местонахождение кружка информатики и численность населения Мозыря многократно усиливали шоковый эффект. Впечатление от этого события можно сравнить разве что с эффектом от победы сборной Мозыря по футболу над мадридским "Реалом" или лондонским "Челси".
…и изнутри
И все-таки чудеса не только объяснимы, но даже в каком-то смысле закономерны. Об этом мы беседуем с Михаилом Семеновичем Долинским, тренером гомельской чемпионской команды и создателем тренирующей системы обучения программированию DL.
Как долго вы шли к этой победе?
- Я занимаюсь подготовкой школьников и студентов к олимпиадам с 1996 года. До тех пор я просто учил их прикладному программированию. Но когда в один год из десятка хороших школьников, с которыми я работал, в институт поступили только двое, я понял, что так нельзя - и мой, и их труд пропадает даром. Надо или целенаправленно натаскивать ребят к поступлению в вузы, или готовить их к диплому на республиканской олимпиаде школьников по информатике, которая дает право поступления без экзаменов. А уж потом заниматься прикладным программированием.