«И ропщет мыслящий тростник»
Второй год преподавания дисциплины «Алгоритмы и алгоритмические языки» в Севастопольском филиале ВМК МГУ довольно определённо показал достоинства и недостатки использования языка программирования Python3 в рамках данного курса и данной аудитории. В докладе обсуждается опыт преподавания: подсказанные Python3 и найденные самостоятельно методические приёмы а также существенное увеличение объёма необходимого учебного материала по сравнению с аналогичным курсом на базе языка программирования Pascal.
В режиме тезисов
- Состояние дел на факультете в 2015: Паскалисты против Сишников
- 80-е: Algol → Паскаль
Разработка Л.С. Корухова, В.Н. Пильщиков (каф. АЯ)
- 4 лекции — понятие алгоритма, МТ, НАМ, проблема останова
- 11 лекций — Паскаль
- 6 лекций — структуры данных (списки, стек/очередь, деревья, таблицы ссылок и хеш-таблицы)
- Практикум
- Всё начало 2000-х: «давайте заменим Паскаль на что-нибудь»…
- (каф СП) «…на Си!»
см. выступление В. П. Иванникова на нашей конференции в 2013-м
Доклад Pythоn Domination на той же конференции (слайды)
- Универсальность
- Актуальность
- Простота
- В т. ч. в качестве первого ЯП
2014-2015 у. г.: спецкурс «Язык программирования Python / Разработка прикладных программ на языке программирования Python»
- Популярность
- Хороший выход годного
- Опыт использования EJudge
- Опыт сопровождения скринкастами
- Вывод: хороший, годный язык!
2015 у. г. I семестр и 2016 у. г. I семестр: базовый курс «Алгоритмы и алгоритмические языки» в Севастопольском филиале ВМК МГУ
- Дистанционные лекции
- Использование эмуляторов везде, где возможно (НАМ, МТ, СД, в планах — РФ и БНФ)
- Дистанционные «семинары» (не практикум! 2016 г. — практикум отдельно)
- С использованием Moodle chat
- Использование Moodle и EJudge
- Домашние задания (наполовину посредством EJudge, наполовину — «эссе» в Moodle)
- Контрольные работы (тоже функциональность Moodle)
- Учёт ДЗ и контрольных при выставлении оценки за экзамен
- Связь с преподавателем — группа ВКонтакте
- Итоговый «семестровый проект»: написание на Python эмуляторов МТ, НАМ и БНФ-парсера
- Дистанционный экзамен (много «автоматов»)
- Дистанционные лекции
- Итоги
- низкий уровень абиртуриентов
- Что такое БНФ — оба раза не поняли (лектор виноват?)
- Отсутствие мотивации и некорректный таргетинг (особенно 2016 г.)
- На семинарах работают 2-3 человека max
- Самая умненькая девочка отчислилась:
- Копипаста
Объём необходимых знаний: Python >> Pascal
- До темы «деревья» оба раза просто не дошли
- «Семестровый проект»:
- Чуть ли не все сделали эмуляторы МТ и НАМ
- Мнение студента, который просто вовремя делал все задания:
- 20% сделали БНФ-парсер
- низкий уровень абиртуриентов
- Что делать?
- Объём против уровня подготовки
- Усекать Python (изобретать Питончик)?
- Разделять Python для всех и доп. главы?
- Учить именно программированию, как в техникуме?
- Другой ЯП? А какой?
- Мотивация студентов
- Геймификация (чтоа?)
- Turtle или что-то такое
- Соревнования и рейтинги
- Реорганизация семинара:
- Официализация
- Тривиальные упражнения вместо задач
- Отчёт всех участников
- Оценки за семинар
- Геймификация (чтоа?)
- Контроль: пример усердного студента
- Объём против уровня подготовки