Устюжанина Н.В.
МАОУ гимназия №18 г. Нижний Тагил, Россия
ОБУЧЕНИЕ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЮ В
НАЧАЛЬНОЙ ШКОЛЕ
Аннотация
В статье рассматриваются актуальные вопросы внедрения новых обучающих процессов с использованием интерактивных сетевых технологий в сфере образования. Раскрываются особенности среды Code.org для формирования алгоритмического мышления учащихся младшего школьного возраста, представлен опыт работы в среде Code.org.
Ключевые слова: информатика, программирование, начальная школа, Code.
Ustyuzhanina N. V.,
gymnasium № 18 Nizhny Tagil, Russia
TRAINING ALGORITHMS AND PROGRAMMING IN PRIMARY
SCHOOL
Abstract
The article considers topical issues of introducing new learning processes using interactive network technologies in the field of education. Features of the circle of Code.org for formation of algorithmic thinking of pupils of younger school age are revealed, experience among Code.org is presented.
Keywords: Informatics, programming, Primary School, Code.
Согласно Федеральному образовательному стандарту начального общего образования важными целями математического образования являются: формирование у обучающихся основ логического и алгоритмического мышления, умений записи и выполнения алгоритмов; умений действовать в соответствии с алгоритмом и строить простейшие алгоритмы; исследовать, распознавать и изображать геометрические фигуры; работать со схемами, представлять, анализировать и интерпретировать данные [6].
Вопросы обучения детей основам программирования в научной и научно-методической литературе обсуждаются учеными, учителями и специалистами в области информационных технологий. Рассматривая программирование, как общение с компьютером на языке понятном ему, исследователи поддержали идею обучения детей программированию с раннего возраста. Однако,
информатика сегодня в начальной школе разделена на технологический компонент, который изучается в рамках дисциплины «Технология», и теоретический компонент, вынесенный на уроки математики [3, 154]. Мы придерживаемся мнения, что информатика не должна ни сводиться к технологии, ни преподаваться как один из разделов математики. Это означает, что помимо информационных технологий, информационного моделирования и математических основ теории информации должно изучаться и программирование. Ввести курс «Информатики» можно при поддержке администрации школы за счет вариативной части стандартов второго поколения.
В то же время, при обучении раннего программирования возникает другая проблема: учащиеся начальных классов не могут запоминать сложные команды, длинные коды, написанные, как правило, на иностранном языке (который они только начинают изучать). Для решения данного противоречия необходим язык программирования близкий к образу мышления детей, содержащий команды для работы с интересными и понятными для них объектами, но в то же время, дающий прочную основу для изучения других языков программирования.
В 80-е годы прошлого века одни из основоположников теории искусственного интеллекта, создатели языка Logo Сеймур Пейперт и Алан Кей указывали, что средства, которые существенно меняют способы мышления, должны быть доступны ребенку как можно раньше [5].
С осенью 2014 года основы программирования начали изучать в школах Великобритании. Учащиеся начальных классов британских школ с помощью таких программных обеспечений, как MIT's Scratch, Kodu, Logo учатся создавать простые программы по блокам, а в одиннадцать лет учащиеся должны иметь представление о базовых алгоритмических структурах и использовать их при создании учебных программ [2]. Финский проект Koodi 2016, учебные планы ряда таких стран, как Южная Корея, Эстония, Франция, Австралия также предполагают обучение детей основам программирования с начальных классов.
Следует отметить, что тенденцию раннего обучения программированию в школе поддерживают многочисленные ведущие компании в области информационных технологий, предоставляя доступные инструменты для программирования, но и также повсеместно поддерживают идею обучения программированию в школе. Огромное количество пользователей таких ресурсов, как MIT's Scratch и AppInventor, Codecademy, Code.org и др. показывают растущий интерес современного общества людей к знанию и пониманию искусства программирования.
В таких средах процессе изучения программирования формируются специфические «функциональные мозговые органы». И очень важно, что эти «органы» формируются в общении и предметной деятельности ребенка [4]. Среда программирования - представляет переходные объекты, который служат метафорами, с помощью которых учащиеся превращают опыт телесных
манипуляций с вещами (поворот направо, шаг вперед и другие) в понятийные обобщения и абстракции, что важно в младшем школьном возрасте, когда умственная деятельность не отделена от моторной деятельности субъекта.
Рассмотрим некоторые элементы методики обучения программирования учащихся младшего школьного возраста в среде Code.org. В процессе обучения информатики в начальной школе необходимо учитывать, что учащийся не может проводить за компьютером на уроке более 15 минут. Как следствие, урок необходимо делить на два взаимосвязанных этапа: на первом этапе учащиеся изучают новый материал по теоретической части информатики (например, кодирование информации), а на втором этапе - работают на компьютерах.
Можно выделить следующие особенности среды Code.org для формирования алгоритмического мышления учащихся младшего школьного возраста.
Первая и важная особенность - игровая форма обучения. Работа учащихся в среде представляет собой онлайн-игру, в процессе прохождения которой дети знакомятся с основами программирования. Во время игры дети управляют зомби, пчелкой, художником или фермером, которые перемещаются по игровому полю и выполняют задания. Для этого игрок должен составить цепочку команд, а затем запустить их на выполнение. Перед каждым уровнем даются подсказки, все задания имеют визуальную и звуковую окраску. Данная характеристика среды призвана решить главную проблему при обучении программирования является - мотивация к изучению новой и сложной области.
Другая особенность среды - двойное представление алгоритма - в виде блочного визуального языка и на языке javascript. Программирование исключает написание текста и производится простым перетаскиванием элементов из палитры. Чтобы программа заработала, достаточно написать несколько строчек кода, которые должны быть выполнены после нажатия на кнопку «выполнить». Наглядное отображение и интерактивное исполнение позволяет ученику видеть поэтапное выполнение алгоритма, дает возможность анализировать и корректировать алгоритм.
Третья характеристика среды - последовательность и системность в освоении возможностей языка программирования. Данный сайт содержит несколько курсов рассчитанных на разные возрастные группы: от изучения простых команд для детей четырех лет, до работы с циклами, переменными процедурами и функциями, ориентированных на учащихся 16-18 лет и старше.
Для педагога (после предварительной регистрации) предусмотрены возможности создания классов, назначения им соответствующих курсов и дальнейший мониторинг успеваемости учащихся (рис.1).
Раздел Оценка Курс $ Ученики Login Info
23 S Курс 1 27 SQLSVZ V
2Б S Курс 1 11 QVWVZQ V
Рис. 1 Классы с указанием курса и количества учащихся
В качестве пароля для учащихся начальной школы можно использовать картинку (рис. 2), для более старшего возраста - кодовое слово. 2Б
Пршр^с: I Теисшыые ишшы I Т^: I ы/Си^сы I Рто)ес1ь I Пиима1р^1Ь си иник.у
УЬра&лзн/е учениками
Добавить ученика
Добавить несюпью учеников
Переместить студа-гта
В
Переуетановть се^ет
Редагтирсвггтъ
Радактирояпъ
Переустановить декрет
Рис. 2 Данные об учениках класса
После формирования классов педагога имеются ссылки для входа учащихся на сайт. Перейдя по ссылке, ученики видят фамилии своих одноклассников, находят свою и выбирают кодовую картинку. Кроме того на ресурсе появилась новая возможность - добавить друга при входе в курс. Данная возможность очень удобна при недостаточном количестве компьютеров в классе.
На уроках во 2 классе рекомендуется использовать первый курс. Желательно выполнять предлагаемые задания в начале учебного года, когда учащиеся только начинают знакомиться с компьютером. Задания третьего этапа направлены на работу с мышкой и составление картинок (Рис. 3).
Рис. 3. Пример задания начального курса.
На следующих этапах дети знакомятся с составлением алгоритмов для различных персонажей (Рис. 43).
Рис 4. Пример задания 1 курса.
В 3 и 4 классе можно переходить ко 2 и 3 курсам. На данном этапе команды в виде стрелок заменяются на команды, написанные на русском языке (Рис. 5). Выполняя задания на данных курсах учащиеся изучают линейные алгоритмические структуры, структуры ветвления и циклические структуры. При освоении этих курсов в средней школе можно рассмотреть функции и процедуры.
Место сбора блоков: О Начать заново
при запуске
вперед
вперед т
на КГЯ пиксели
прыгнуть СШтаСТ на И»1 пиксели
переместить ГШЯРп на ИЯ»1 пиксели
на пиксели
повернуть 1И|ШАЛ на Л градусов
на ИИ пиксели
прыгнуть на ИД пиксели
Рис. 5. Пример выполнения линейного алгоритма.
Каждый курс состоит из нескольких этапов. Например, курс 2 состоит из 19 этапов. На каждом этапе задания можно условно разделить на 4 фазы формирования алгоритмического стиля мышления:
1. Введение алгоритма: актуализация знаний, открытие алгоритма учащимися, освоение основных шагов алгоритма (рис. 6).
Рис. 6. Знакомство с командами исполнителя.
2. Усвоение алгоритма: отработка отдельных операций, входящих в
алгоритм и усвоение их последовательности (рис. 7).
Рис.7. Отработка операций
3. Применение алгоритма: отработка алгоритма в знакомой и незнакомой
ситуациях.
Рис.8. Составление алгоритма в новой усложненной ситуации
Обучение алгоритмизации и программированию подразумевает не только создание, но и применение алгоритма. Как показывает практика, дети не сразу могут это делать, для многих из них применение алгоритма является серьезной проблемой. В связи с этим мы уделяем достаточное количество времени работе парами с проговариванием каждого шага вслух. Так как все выполненные задания сохраняются в профиле ученика, мы рекомендуем использовать наиболее успевающих учеников в качестве экспертов-консультантов для помощи отстающим ребятам. Подобная работа повышает не только успеваемость всего класса, но и создает дополнительные стимулы для мотивации учащихся.
Таким образом, среда Code позволяет учащимся младшего школьного возраста знакомиться с основами алгоритмизации и программирования в процессе игры со знакомыми им героями, изучать сложную тему и готовиться к изучению программирования.
ЛИТЕРАТУРА
1. Code.org - Учится в студии кода [Электронный ресурс]. URL:https://studio.code.org (дата обращения: 27.11.20157)
2. Computing in the national curriculum. A guide for primary teachers. [Электронный ресурс]. URL: https://www.tes.co.uk/teachmg-resource/primary-computmg-guide6436709?s_cid%2FNNCR_C0_newprim (дата обращения: 27.11.2017)
3. Дженжер В. О. Место программирования в курсе информатики начальной школы // Вестник ОГУ. 2010. №9 (115), стр. 154-159
4. Леонтьев А.Н., Проблемы развития психики, М., Изд-во МГУ, 1981 г., с.214-218
5. Пейперт С. Переворот в сознаний: Дети, компьютеры плодотворные идеи: Пер. с англ./под. ред. А.В. Беляевой, В.В. Леонаса. - М.: Педагогика, 1989. -224с.
6. Федеральный государственный образовательный стандарт основного общего образования от 17.12.2010 г. № 1897. 50 с.