Первая белорусская олимпиада по прикладному программированию прошла успешно!
Накануне 5-летия своей деятельности Ассоциация "Инфопарк" совместно с факультетом прикладной математики и информатики БГУ выступила инициатором проведения первой Олимпиады по прикладному программированию. К участию в олимпиаде приглашались все желающие, единственным критерием отбора был возраст — не старше 25 лет.
Следует подчеркнуть, что это была первая попытка проведения в Беларуси конкурса по прикладному (некоторые организаторы использовали термин "промышленному") программированию. Дело в том, что традиционный формат олимпиад по программированию — так называемое "спортивное программирование" — предполагает решение задач по алгоритмике. Здесь же была предпринята попытка совместить в рамках одного состязания решение как алгоритмических, так и приближенных к бизнес-реалиям ООП-задач. Олимпиада проходила в два тура: заочный и очный. Из 550 зарегистрированных участников в онлайн-тестировании (заочный тур) приняло участие 450 человек. Ребятам нужно было ответить на 20 вопросов по алгоритмике и 20 — по конкретным языкам программирования. "Олимпийскими" языками были признаны C++, C#, Pascal и Java. 50 самых достойных претендентов вышли на второй — очный — тур, который проходил 10 декабря в помещении БГУ (факультет прикладной математики). Очные состязания также предполагали две составляющие: алгоритмику (5 задач разной степени сложности) и ООП (2 задачи). Каждая решенная задача приносила участнику определенное количество баллов. За каждую корректно решенную алгоритмическую задачу давалось от 20 до 40 баллов. А вот ООП-задачи "стоили" подороже — 90 и 180 баллов. И это не удивительно, ведь в рамках этой олимпиады упор делается именно на прикладное программирование, что отражено и в названии мероприятия. Оценка алгоритмических задач производилась автоматически по набору тестов с помощью системы ФПМИ БГУ Insight Runner. Прикладные ООП- задачи оценивались компетентным жюри (32 человека!) исходя из набора предварительно сформулированных критериев, например:
— корректность работы;
— устойчивость к аварийным ситуациям;
— соответствие принципам ООП;
— качество оформления кода;
— оригинальность и др.
Каждый участник выполнял задания на выбранном им языке программирования. Стало быть, и призовые места распределялись по 4 номинациям, соответствующим четырем вышеперечисленным "олимпийским" языкам. Некоторая интрига заключалась в том, что среди участников присутствовали признанные мастера спортивного программирования, изрядно поднаторевшие в решении алгоритмических задач и неоднократно участвовавшие в престижных международных соревнованиях. В том, что они отлично справятся с заданиями по алгоритмике, никто не сомневался, но как у них пойдет с ООП? Займут ли "спортсмены" призовые места? Этими и другими вопросами участники и наблюдатели задавались в ожидании оглашения результатов. Кстати, промежуток времени после окончания решения задач до оглашения результатов также был заполнен полезными мероприятиями: компания IBA провела ряд мастер-классов (хотя, по-правде говоря, уместнее было назвать их семинарами) на тему перспектив работы молодых специалистов в различных подразделениях компании. Сотрудники EPAM совместно с председателем жюри провели круглый стол, на котором обсуждались такие актуальные темы, как олимпиадное движение, плюсы и минусы формата нынешней олимпиады, а также более отвлеченные вещи, как, например, качество преподавания и программ по информатике в средней школе. А в это время жюри трудилось над оценкой олимпиадных работ. Дело оказалось непростым даже для столь многочисленного и в высшей степени профессионального жюри. В результате церемония награждения была задержана почти на час. Но первый блин — он же всегда com'ом — ничего страшного: второй обязательно будет exe'шником;). Итак, наконец-то объявлены победители.
В номинации С# места распределились следующим образом:
1 место — Рудаков Станислав (234 баллов).
2 место — Терлецкий Денис (185 баллов).
3 место — Хрол Игорь — (111 баллов).
Переходим к номинации C++:
1. Гончар Евгений (278).
2. Воробец Роман (189).
3. Толстиков Алексей (170).
Номинация Java:
1. Антоник Александр (374).
2. Терешко Константин (368).
3. Размыслович Дмитрий (233).
Самые высокие баллы в номинации Java! Это обусловлено тем, что в этой группе лучше всего были решены ООП-задачи. Тут есть о чем подумать;). И, наконец, номинация Pascal:
1. Метельский Иван (212).
2. Нигериш Павел (161).
3. Сикорский Алексей (147).
Ну, что тут скажешь. "Спортсмены" и тут не подкачали — по крайней мере, первое место в C++, первое и третье места в Pascal заняли именно они. Возможно, на пьедестале почета есть и другие представители олимпиадного движения. Кстати, призовой фонд нынешней олимпиады был весьма и весьма пристойным: за первые места — КПК HP iPAQ, вторые места — 17-дюймовый ЖКИ-монитор Philips, бронзовые призеры получили по мобильному телефону Nokia. Организаторы утверждают, что прошедшая олимпиада — лишь первый, пробный шар в организации подобных мероприятий, у этой команды есть еще ряд интересных задумок, среди которых — конкурсы по проектированию ПО, СУБД, соревнования веб-программистов... Пожелаем организаторам удачи в этом прекрасном начинании!
Alice D. Saemon.
Следует подчеркнуть, что это была первая попытка проведения в Беларуси конкурса по прикладному (некоторые организаторы использовали термин "промышленному") программированию. Дело в том, что традиционный формат олимпиад по программированию — так называемое "спортивное программирование" — предполагает решение задач по алгоритмике. Здесь же была предпринята попытка совместить в рамках одного состязания решение как алгоритмических, так и приближенных к бизнес-реалиям ООП-задач. Олимпиада проходила в два тура: заочный и очный. Из 550 зарегистрированных участников в онлайн-тестировании (заочный тур) приняло участие 450 человек. Ребятам нужно было ответить на 20 вопросов по алгоритмике и 20 — по конкретным языкам программирования. "Олимпийскими" языками были признаны C++, C#, Pascal и Java. 50 самых достойных претендентов вышли на второй — очный — тур, который проходил 10 декабря в помещении БГУ (факультет прикладной математики). Очные состязания также предполагали две составляющие: алгоритмику (5 задач разной степени сложности) и ООП (2 задачи). Каждая решенная задача приносила участнику определенное количество баллов. За каждую корректно решенную алгоритмическую задачу давалось от 20 до 40 баллов. А вот ООП-задачи "стоили" подороже — 90 и 180 баллов. И это не удивительно, ведь в рамках этой олимпиады упор делается именно на прикладное программирование, что отражено и в названии мероприятия. Оценка алгоритмических задач производилась автоматически по набору тестов с помощью системы ФПМИ БГУ Insight Runner. Прикладные ООП- задачи оценивались компетентным жюри (32 человека!) исходя из набора предварительно сформулированных критериев, например:
— корректность работы;
— устойчивость к аварийным ситуациям;
— соответствие принципам ООП;
— качество оформления кода;
— оригинальность и др.
Каждый участник выполнял задания на выбранном им языке программирования. Стало быть, и призовые места распределялись по 4 номинациям, соответствующим четырем вышеперечисленным "олимпийским" языкам. Некоторая интрига заключалась в том, что среди участников присутствовали признанные мастера спортивного программирования, изрядно поднаторевшие в решении алгоритмических задач и неоднократно участвовавшие в престижных международных соревнованиях. В том, что они отлично справятся с заданиями по алгоритмике, никто не сомневался, но как у них пойдет с ООП? Займут ли "спортсмены" призовые места? Этими и другими вопросами участники и наблюдатели задавались в ожидании оглашения результатов. Кстати, промежуток времени после окончания решения задач до оглашения результатов также был заполнен полезными мероприятиями: компания IBA провела ряд мастер-классов (хотя, по-правде говоря, уместнее было назвать их семинарами) на тему перспектив работы молодых специалистов в различных подразделениях компании. Сотрудники EPAM совместно с председателем жюри провели круглый стол, на котором обсуждались такие актуальные темы, как олимпиадное движение, плюсы и минусы формата нынешней олимпиады, а также более отвлеченные вещи, как, например, качество преподавания и программ по информатике в средней школе. А в это время жюри трудилось над оценкой олимпиадных работ. Дело оказалось непростым даже для столь многочисленного и в высшей степени профессионального жюри. В результате церемония награждения была задержана почти на час. Но первый блин — он же всегда com'ом — ничего страшного: второй обязательно будет exe'шником;). Итак, наконец-то объявлены победители.
В номинации С# места распределились следующим образом:
1 место — Рудаков Станислав (234 баллов).
2 место — Терлецкий Денис (185 баллов).
3 место — Хрол Игорь — (111 баллов).
Переходим к номинации C++:
1. Гончар Евгений (278).
2. Воробец Роман (189).
3. Толстиков Алексей (170).
Номинация Java:
1. Антоник Александр (374).
2. Терешко Константин (368).
3. Размыслович Дмитрий (233).
Самые высокие баллы в номинации Java! Это обусловлено тем, что в этой группе лучше всего были решены ООП-задачи. Тут есть о чем подумать;). И, наконец, номинация Pascal:
1. Метельский Иван (212).
2. Нигериш Павел (161).
3. Сикорский Алексей (147).
Ну, что тут скажешь. "Спортсмены" и тут не подкачали — по крайней мере, первое место в C++, первое и третье места в Pascal заняли именно они. Возможно, на пьедестале почета есть и другие представители олимпиадного движения. Кстати, призовой фонд нынешней олимпиады был весьма и весьма пристойным: за первые места — КПК HP iPAQ, вторые места — 17-дюймовый ЖКИ-монитор Philips, бронзовые призеры получили по мобильному телефону Nokia. Организаторы утверждают, что прошедшая олимпиада — лишь первый, пробный шар в организации подобных мероприятий, у этой команды есть еще ряд интересных задумок, среди которых — конкурсы по проектированию ПО, СУБД, соревнования веб-программистов... Пожелаем организаторам удачи в этом прекрасном начинании!
Alice D. Saemon.
Компьютерная газета. Статья была опубликована в номере 48 за 2006 год в рубрике программирование