Размер
Олимпиада по информатике. Муниципальный этап
Play

Олимпиада по информатике. Муниципальный этап

Заявляется допустим 50 участников. Приезжают 45. Через 15 минут после начала начинают выходить первые юные программисты с несколько озадаченным выражением на лице. Через полчаса уходит треть. Иногда уже половина. Через 2 часа остаются 5 монстров которые и остаются все допустимые по регламенту 4 часа. Кто-то из них получит какие-то баллы. Возможно. Может и нет.

Почувствуете мощь, с которой сейчас в наших школах растут кадры российской IT-элиты.

На прошлой неделе я и сам возил учеников на муниципальный этап олимпиады школьников по информатике. Есть повод рассказать интересующимся о процедуре ну и пару мыслей&наблюдений накидать.

За последние 15 лет олимпиада по информатике одновременно и сильно изменилась и осталась абсолютно прежней.

Что осталось неизменным, так это главная идея - олимпиада по информатике = олимпиада по программированию. Другого не дано. Неважно в каком ученик классе, в седьмом или одиннадцатом. Для получения баллов необходимо составить работающую программу на одном из языков программирования. Так у нас было всегда. Сейчас стало совсем безвариантно.

Что изменилось очень сильно - сама процедура. Еще лет 5-6 назад участникам раздавались задания на листочках. Теперь участники перед началом олимпиады получают логин-пароль для доступа на сайт олимпиады. Логинятся и читают задания на сайте. На сайт же и загружают файлы с решениями. Решение - скомпилированный исполнимый файл текстовый файл с кодом.

Решением задачи является программа, написанная на одном из следующих языков программирования: • Pascal • C • C++ • Java • Python.

Кому интересно, при компиляции текста программы, которую участник сдает на проверку, жюри использует вполне определенные командные строки для компиляции решений:

Компилятор Командная строка GNU С 4.9 (MinGW) gcc -O2 -х с –WI, --stack=67108864 <исходный файл> GNU C++ 4.9 (MinGW) g++ -O2 -х с++ –WI, --stack=67108864 <исходный файл> GNU C++11 4.9 (MinGW) g++ -O2 -х с++ -D_ _USE_MINGW_ANSI _STDIO=0- WI, --stack=67108864 --std=c++11 <исходный файл> GNU C++11 5 (Linux) g++ -O2 --std=c++11 -static <исходный файл> Visual C++ 2015 cl /F67108864/O2 /EHs /TP <исходный файл> Java javac <исходный файл> Free Pascal fpc <исходный файл> Pascal ABC.Net 2.1 pabcnetcc <исходный файл> Python 3.5 python <исходный файл>

Когда-то (лет 5-6 назад), школьники после завершения олимпиады оставляли за собой файлы с кодом и листочки с кодом и блок-схемами. Ученики расходились, а толпа коллег-информатиков начинала коллегиально проверять решения и раздавать баллы. Бывали жаркие дискуссии)

Теперь ничего интересного. Никаких интриг и мордобоя. Решения участников проверяются в 2 этапа:

- сначала бездушная система берет загруженную учеником прогу и подсовывает ей файлы с исходными данными. Решения системе разумется известны так что если творение шкодера вдруг выдает именно верное решение, то участнику начисляется БАЛЛ. Совершенно автоматически.

- набравшие баллы программы проверяются живыми экспертами

Скучно теперь стало на олимпиадах. В нашем муниципальном образовании - всего 58 школ. Из них - 34 в самом городе. Остальные - в окрестных поселках. Было врем, городские и деревенские олимпиады проводились отдельно. Теперь - все вместе собираемся в городе. В этом году из 24 сельских школ заявились на муниципальный этап всего 4 школы. Приехали фактически - только из 3.

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

Вот тогда было на олимпиаде общение с коллегами. Информатики района знали друг друга. Были вечные соперники принципиальные) Пока дети решали, коллеги обменивались опытом и точили кинжалы. Живое душевное общение вобщем) Преподавателей, которые реально умели программировать, всегда было очень мало, единицы, и они всегда охотно делились опытом и старались мотивировать остальных.

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

При работе с автоматизированной системой есть объективная сложность - участнику совершенно недостаточно найти правильный алгоритм решения задачи. Для того, чтоб система приняла решение, необходимо в программе ПРАВИЛЬНО реализовать ввод-вывод информации через текстовые файлы. Это - сама по себе отдельная задача с неочевидными решениями. Вот и получилось, если ранее ученики могли хотя бы алгоритм реализовать внятно и это решение могло быть оценено комиссией живых проверяющих преподавателей, то теперь ученику просто реализовать алгоритм - уже недостаточно. Вот и пошел дополнительный отсев деток без устойчивых навыков практического программирования.

Сам курс алгоритмизации и программирования в базовом курсе основного общего образования - одна четверть во втором полугодии 9го класса. Подготовить олимпиадника просто на уроках в школе - нереально от слова совсем. Потенциального олимпиадника по информатике надо выявлять как можно ранее, затаскивать на кружок и держать под контролем круглый год. И тогда успех не гарантирован.

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

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

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

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

Задача Президентом сформулирована, но вот решение наталкивается на проблемы еще на школьном этапе.

📎📎📎📎📎📎📎📎📎📎