Заметки к докладу «Программирование для математиков» 35 лет спустя

Мои заметки к докладу Кушниренко “«Программирование для математиков» 35 лет спустя” (слайды).

Кушниренко начал читать первый курс по программированию в 79 году. Один из основных принципов этого курса был в том, что через 15 минут после начала работы студент уже должен увидеть какой-то результат работы этой программы. Уже тогда был сделан интересный ход для обучения: использовались готовые перфокарты с кусочками программ из которых студенты как из конструктора собирали готовую программу. Благодаря этому не требовался компьютер для написания программ, только для исполнения собранной программы. И студенты не отвлекались на исправление синтаксических ошибок, так как их невозможно было совершить. В 86-ом была написана книга “Программирование для математиков”.

От обучения студентов начали переходить к обучению школьников и появился курс информатики в рамках которого нужно было обучать школьников программированию. Была разработана первая версия программы для обучения программированию Кумир. В Кумире используется школьный алгоритмический язык для написания программ. Это практически полноценный паскалеподобный язык программирования. Много лет пытались с его помощью обучать программированию детей разных возрастов. Хоть как-то это начинало получаться только с седьмого класса. Но в целом попытку массово обучать школьников программированию автор считает провалившейся.

Относительно недавно произошел кардинальный сдвиг и научились хорошо обучать программированию детей даже начиная с начальной школы и детского сада за один учебный год! Авторы выделили базовые алгоритмические навыки которые нужно освоить прежде чем допускать детей/студентов к полноценному программированию. Экспериментально обнаружили что для освоения этого ядра навыков необходимо прорешать минимум сто задач. Поняли, что это невозможно сделать в рамках школьных часов отведённых на алгоритмику. Невозможно потому что слишком много времени уходит на второстепенные задачи типа набора текста, борьбу с синтаксическими ошибками и т.д. Тогда они разработали среду из которой убрали всё лишнее, а текст программы заменили на наборы пиктограмм. Получили среду с визуальным языком программирования сфокусированной на обучении и тренировке навыков алгоритмизации. Необходимое количество задач можно прорешать за достаточно небольшое время. Отсутствие необходимости читать и писать текст позволяет начать обучение даже в детском саду или в начальной школе. При этом школьники младших классов прошедшие курс алгоритмики с ПиктоМиром способны решать с его помощью даже достаточно сложные задачи которые дают на ОГЭ старшеклассникам. Приём со сборкой программы из готовых перфокарт из 80-х годов в современных реалиях превратился в сборку программы из кубиков детьми в детском саду. Программа фотографируется, изображение распознаётся и исполняется физическим роботом.

Ещё интересно, что ПиктоМир начали использовать для обучения студентов и взрослых людей программированию с нуля. Выстроили обучение в виде трёх этапов на каждом из которых используется своя среда обучения. Сначала ПиктоМир для освоения базовых понятий алгоритмизации без необходимости изучения синтаксиса какого либо текстового языка и сложных текстовых редакторов или IDE. Затем переходят на ПиктоМир-К где программы можно вводить как пиктограммами так и текстом. И только в конце переходят к полноценному программированию текстом в КуМир. Благодаря этому достигается высокая эффективность обучения.

Описание ПиктоМира на сайте НИИСИ. Там доступна для использования устаревшая версия 2.5. Более современная версия 3.1 доступна на отдельном сайте https://piktomir.ru. Оба варианта работают в браузере.

Подробный разбор доклада Анатолием Левенчуком.

Пошёл читать “Программирование для математиков”.