Научно-методическая конференция
«ИНТЕРНЕТ И СОВРЕМЕННОЕ ОБЩЕСТВО»

АКТИВНОЕ ОБУЧЕНИЕ ПРОГРАММИРОВАНИЮ

Л.В. Городняя, П.А. Дортман, В.А. Потапенко

Институт систем информатики им. А.П. Ершова Сибирского отделения РАН
Новосибирск

Доклад посвящен разработке в современных условиях методов активного обучения программированию на основе опыта новосибирских Летних школ юных программистов (ЛШЮП), основная идея которого - совместная работа учащихся и специалистов над общим творческим проектом, обладающим исследовательским компонентом или практическим значением. Выполнение проектов требует быстрого овладения информационными системами и навыков работы в Интернет.

ПРЕДЫСТОРИЯ

На протяжении ряда лет (1989-1994 годы) Новосибирские ЛШЮП проводились как школы с углубленным изучением информатики и программирования: в отличие от ЛШЮП прежних лет и в последующие годы, а также от ряда летних школ в других городах, они ставили целью не компьютерную грамотность, а проявление и развитие профессиональных склонностей школьников, преимущественно старшего возраста. Эта цель достигалась через знакомство с программированием, как с производством информационных систем, с его проблематикой, творческими, исследовательскими и технологическими аспектами. Основные понятия и объекты для изучения - программный продукт, технологический процесс разработки, грамотная постановка задачи, рациональное распределение и планирование работ, отладка, оформление, документирование, отчет [1].

Для отработки этих понятий учебный процесс в ЛШЮП рассредоточивается по нескольким (10-15) учебно-производственным мастерским, главной целью которых ставится полное прохождение всего технологического цикла в рамках поставленной задачи, с обязательным отчетом о проделанной работе. Необходимая для этого интенсивность работ заставляет уделять большее внимание предварительным и начальным стадиям проектирования, как со стороны постановщика задачи - мастера, так и со стороны организаторов ЛШЮП. Для многих мастеров, привлекавшихся к работе, оказывалась привлекательной именно возможность апробирования новых методик организации работ и обучения в условиях присущего ЛШЮП дефицита времени и техники [2].

Совокупность тем проектов мастерских подбиралась так, чтобы лучше обеспечить разнообразие учебного процесса ЛШЮП с целью более адекватного учета индивидуальных наклонностей, интересов и способностей учащихся. Ежедневная работа по мастерским (2-3 недели) проводилась в двух формах: практические занятия на машинах и семинарские занятия, в ходе которых велась подготовка к практике, разбирались теоретические вопросы, связанные с тематикой мастерских, проводились консультации, анализ работы и др.

Для объективной оценки продвижения учащихся проводилось две конференции: до работы мастерских рассказ о своих достижениях и интересах, а в конце ЛШЮП - представление полученных в мастерской результатов [1, 2].

Следует отметить, что уровень техники тех лет, как правило, не позволял реально воспроизвести полный жизненный цикл разработки. Многое можно было прочувствовать лишь на уровне демонстрации или понимания идей без реального воплощения, но квалификация и доброжелательность Жюри ЛШЮП проявлялись в весьма уважительном отношении к трудам и трудностям учеников, что помогало им продолжать попытки и успешно развивать свои программистские интересы уже за пределами ЛШЮП.

Теперь, при резком улучшении эксплуатационных характеристик оборудования, идеи мастерских ЛШЮП смогли быть воплощены более результативно и убедительно, что и удалось осуществить ИСИ СО РАН им. А.П. Ершова совместно с НГУ при поддержке программы взаимодействия науки и образования в последние два года.

ПЕРВАЯ ПОПЫТКА - ПРЕЦЕДЕНТ

Восстановление механизма ЛШЮП в новых условиях было предпринято в сроки, крайне неудобные для проведения подготовительных работ: сразу за Мемориальной конференцией «Перспективы систем информатики»; на все имелась одна неделя. (Очень кстати оказалась синхронизация усилий через сайт ЛШЮП (http://www.iis.nsk.su/SYP). Этот первый вклад новых информационных технологий обнадеживал, что работа мастерских должна стать существенно успешнее, чем раньше.)

Небольшая группа энтузиастов под председательством профессора А.Г. Марчука (директора ИСИ СО РАН им. А.П. Ершова) рискнула погрузиться в эксперимент по активному обучению школьников программированию и информатике и в личном опыте понять на современной основе специфику, проблемы и преимущества программистских мастерских как для мастеров, так и для учеников [3].

Ведение мастерских в 2001 году сопровождалось ежедневным семинаром по проблемам организации, подготовки и проведения ЛШЮП. Работа мастерских проходила довольно ровно, существенных сбоев ни у кого не было. Аврал в конце ЛШЮП удалось ограничить одним днем, и мастерские успели выполнить запланированные работы, включая качественную подготовку к отчетам, на что времени в прежние времена не хватало. Практически все мастерские успели подготовить демонстрационные версии, некоторые - довольно качественную документацию.

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

Другими, общими параметрами оценки были: качество отчетов, понимание учащимися задач и состояния дел в своей мастерской, своей роли в ней. В целом, работа мастерских была расценена как вполне успешная. Особый интерес, естественно, вызывали web-технологии и все связанное с аппаратурой и модными новинками. Подробности о работе ЛШЮП были представлены в Интернете (http://mag.iis.nsk.su/SYP), где и сейчас можно ознакомиться с ее тематическим разнообразием.

Но требования к уровню командной работы учеников удалось выполнить лишь мастеру, который в свое время имел опыт учебы в мастерской по трехмерной компьютерной графике в 1994 году у мастера В.А. Цикозы. Был весьма заметен высокий уровень самостоятельности учеников этой мастерской, занявшейся разработкой сетевой игры под Linux. (Постановка темы вызвала зависть участников других мастерских легальной возможностью играть в процессе работы.) Это была одна из немногих мастерских за всю историю ЛШЮП, успешно сочетавших создание законченного продукта с целенаправленной разработкой эффективного алгоритма.

Важной составляющей учебного процесса ЛШЮП является итоговая конференция. Общеизвестно, что любителей выступать среди программистов мало, большинство предпочитают безмолвно демонстрировать на компьютере результаты, качество которых зрителям трудно оценить. Но успех в любой профессии существенно зависит от искусства представления результатов. Поэтому участие в итоговой конференции обязательно для всех мастерских. Здесь подстерегает опасность избыточной заорганизованности, подготовки и заучивания докладов и, увы, этого избежать удалось не всем.

На конференции рассматриваются полученные результаты и выбранные технические решения. Школьники обмениваются рекомендациями по улучшению их разработок. Важную роль играет личность председателя конференции (А.М. Поздняков), задающего уважительный стиль общения и обсуждения. Оценивается качество доклада, уровень вопросов и ответов, активность обсуждения. Все это учитывается в итоговых формулировках наградных грамот. Большое внимание было уделено наградным формулировкам в дипломах и поощрительных грамотах. Формулировки индивидуально отражают характер достижений каждого участника.

Но главный результат ЛШЮП-2001 - создание прецедента и формирование корпуса участников, понявших, что же это такое - обучение в программистской мастерской. Им предстоит на следующий год передать свой опыт новичкам.

ВТОРАЯ ПОПЫТКА - «ПОЛУЧИЛОСЬ!»

Подготовка мастерских ЛШЮП-2002 носила более систематический характер, и многие мастера имели время и возможность хорошо продумать тематику и технологию работы учащихся. В результате почти половина мастерских проработали не просто результативно, т.е. не только получили демонстрируемый результат и сумели его представить на итоговой конференции, но и убедительно показали навыки командной работы, включая правку при комплексной отладке кода программы, написанного партнерами.

Очень приятно отметить, что большинство участников успели настолько четко осознать рост своего уровня квалификации и ранга полученных ими результатов, что их не смущали ни провокационные вопросы по классической терминологии, ни противоречия в оценках результатов со стороны Жюри. Оценка работ по навыкам применения информационных технологий порой оказывалась выше грамотных системных разработок.

Это говорит о том, что Жюри не успело подготовиться к качественному скачку в уровне оцениваемых работ, точнее, к переходу от оценки индивидуального вклада к поощрению совместной работы в команде и оценке коллективного результата разработки. Это уже задача следующих ЛШЮП. Но главное - получилось!

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

ЗАКЛЮЧЕНИЕ

Следует отметить, что в последние годы работы по активному обучению программированию становятся все более популярными в связи со сложностью преподавания сложных разделов информатики и программирования. К таким методам можно отнести систему программистских олимпиад, привлекающей талантливую молодежь, обладающую склонностью к соревнованиям [4]. Творческие мастерские в школах юных программистов способны содействовать более разнообразным формам и содержанию обучения, многие из которых получают достойное развитие на базе Интернет [5].

Работа поддержана грантом РФФИ № 02-07-90431.

ЛИТЕРАТУРА

1. Газета «Информатика». Август 2002.

2. Городняя Л.В. Откуда берутся хорошие программисты // История информатики в Новосибирске: становление и развитие / под ред. И.В.Поттосина. - 2001.

3. Берс А.А., Городняя Л.В., Марчук А.Г. О школьных командных олимпиадах по программированию // Перспективы систем информатики. Секция «Школьная информатика». - Новосибирск, 2001. С. 96-99.

4. Сайт Открытой Всесибирской школьно-студенческой командной олимпиады по программированию (http://www.nsu.ru/olimp)

5. http://www.iis.nsk.su/practit/pig/

[Аннотация на английском языке]

Опубликовано: Городняя Л.В., Дортман П.А., Потапенко В.А. Активное обучение программированию // Технологии информационного общества - Интернет и современное общество: труды V Всероссийской объединенной конференции. СПб., 25 - 29 ноября 2002 г. СПб.: Изд-во С.-Петерб. ун-та, 2002. С. 171-174.

Ориг. URL — http://imsconference2002.spbu.ru/02-r3f14.html