Несколько лет назад мы с учителем математики (я сама преподаю информатику) Екатериной Слиньковой вели кружок, который назывался "Занимательная математика с компьютерной поддержкой".
Для этого кружка мы разработали несколько занятий, на которых дети погружались в среду Scratch и выполняли там задания, связанные с математическими понятиями.
Мы не ставили своей целью изучение языка программирования, при этом дети работали с достаточно сложными скриптами. Работа их сводилась к тому, что в непростую программу, написанную учителем, они должны были вписать свои несколько строчек. Что-то получилось, что-то нет, но кружок закончил свою работу, и развитие тема не получила.
Недавнее общение с Евгением Патаракиным и знакомство с его работами, в частности, со статьёй "Педагогический дизайн социальной сети Scratch", в которой проведён глубокий анализ возможностей сетевого взаимодействия на основе Scratch, напомнили мне об этих занятиях. Я бы хотела поделиться некоторыми материалами. Надеюсь, что они найдут адресата и получат своё развитие.
Я приглашаю учителей информатики и математики, работающих со Scratch, а также родителей, которые занимаются со своими детьми, и всех заинтересованных в этой теме, к совместному творчеству. Несколько проектов размещены в студии After School Math и они могут послужить отправной точкой.
"Философию" подхода, который был применён на занятиях кружка, я бы описала так.
В этой методике не предполагается системного последовательного изучения языка программирования. Дети погружаются в среду, которую с помощью инструментов Scratch разрабатывает учитель для каждой учебной задачи, и в этой среде выполняют различные действия, направленные как на освоение предметных понятий из области математики или физики, так и приобретение навыков алгоритмизации и программирования. Перед ребёнком ставится задача, сформулированная средствами Scratch, и для её решения он так же использует инструменты Scratch. Таким образом, через игровые ситуации, интерактивные эксперименты, «достраивание» частично заданного сценария или разработку сценария по инструкции осваиваются такие математические понятия как:
- числа целые и дробные, положительные и отрицательные;
- случайные числа;
- координаты на плоскости;
- относительные размеры и относительное расстояние;
- углы и их значение;
- многоугольники, правильные многоугольники, паркет из многоугольников;
- симметрия;
- окружность и её радиус, концентрические окружности, дуги.
При этом ученик естественным образом сталкивается с различными алгоритмическими конструкциями, правилами разработки программного кода и присваивает их. Через практические действия он знакомится с основными понятиями алгоритмизации и программирования:
- алгоритм и исполнитель, команды исполнителя;
- алгоритм линейный и содержащий ветвление (в полной и неполной форме);
- циклы;
- переменная, её имя и значение;
- подпрограмма, подпрограмма с параметром;
- события.
Такой способ освоения начальных навыков программирования подобен тому, как ребёнок обучается и решает задачи в своей повседневной жизни под наблюдением взрослых, более опытных людей — где-то проявляя любопытство и самостоятельно исследуя, как устроен и как работает тот или другой объект окружающего его мира, где-то решая упрощённые задачи, которые ему «подкидывает» взрослый.
Есть ещё отдельная тема "Паркеты в Scratch", но она требует доработки для размещения в студии. Паркеты в студии появятся позже.