ПиктоМир: дошкольное программирование как опыт продуктивной интеллектуальной деятельности

УДК 37.0

И. Б. Рогожкина

Пиктомир: дошкольное программирование как опыт продуктивной интеллектуальной деятельности

В работе изложены результаты опыта обучения старших дошкольников азам программирования в среде ПиктоМир. Рассказано о программной среде ПиктоМир, о методике обучения дошколят программированию в группе и индивидуальном порядке и об особенностях работы с 5 и 6-летними детьми. Обсуждается развивающий эффект занятий программированием и план дальнейшей разработки методики обучения.

Ключевые слова: раннее обучение программированию, свободно распространяемая программная система, методика обучения, дошкольное программирование.

I. B. Rogozhkina

PiktoMir: Preschool Programming as Experience of the Productive Intellectual Activity

In this paper we present our experiment of teaching elements of programming to preschoolers with an open source environment called PiktoMir. We describe PiktoMir, the individual and group education programmes for preschoolers and specifics of working with 5-year old and 6-year old children. Finally, we discuss effects of PiktoMir programming experience and future plans for further development of the education course.

Key words: an early programming course, open source programming environment, an education programme, programming to preschoolers.

Несмотря на широкий выбор образовательных программ, предлагаемых сегодня в дошкольных учреждениях, многочисленные развивающие и досуговые центры для малышей, многие родители чувствуют потребность заниматься со своими детьми самостоятельно. Одни, следуя советам Масару Ибука [3], буквально с пеленок обучают детей чтению и письму, другие осваивают тесто-пластику, оригами, рисование и вместе с ребенком создают маленькие шедевры, а третьи пытаются придумать интеллектуальную деятельность, в которой ребенок мог бы стать полноправным партнером и участником. Последнее, несомненно, является одним из наиболее перспективных, но и самых сложных направлений. В качестве примера такой деятельности можно привести домашний математический кружок, который несколько лет вел российский ученый Александр Звонкин. Этот необыкновенно удачный опыт, описанный в книге «Малыши и математика» [2], породил множество последователей среди современных родителей. Особенно привлекательной оказалась идея Звонкина, согласно которой главная цель занятий состоит не в том, чтобы обучить детей конкретным умениям и навыкам, а

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

Несколько лет назад команда ученых НИИСИ РАН поставила перед собой задачу разработать цикл занятий, который позволил бы старшим дошкольникам получить опыт успешного преодоления интеллектуальных трудностей. Было решено, что в отличие от подхода Звонкина, предметной областью будет программирование. Конечно, такая постановка задачи выдвигала два круга вопросов. Во-первых, вопросы готовности ребенка дошкольного возраста к восприятию концепций программирования. Действительно ли 6-летние дети могут освоить метафору программного управления, понятия обратной связи, цикла и подпрограммы? Другой аспект касался технической стороны вопроса. С помощью каких средств ребенок, еще не умеющий или не очень любящий читать и писать, сможет создать свои первые программы?

Для решения последней проблемы была предложена старая идея - не записывать программы в текстовом виде, а тем или иным образом «собирать» программы из готовых элементов. Именно

© Рогожкина И. Б., 2012

так составляли первые программы из готовых перфокарт второкурсники мехмата в курсе программирования, который начал читать А. Г. Кушниренко в конце 70-х гг. прошлого века. Воплощением этого подхода стала программная среда ПиктоМир (http://www.piktomir.ru), в которой дети, собирая алгоритмы из пиктограмм, могли управлять виртуальным Роботом. Теоретически, ПиктоМир обеспечивал возможность постепенно осваивать такие важнейшие концепции программирования, как циклы, подпрограммы и условные операторы. Практически, однако, возникал упомянутый выше вопрос о том, насколько эти базовые понятия программирования доступны и интересны детям дошкольного и младшего школьного возраста.

В работе изложены результаты опыта обучения старших дошкольников азам программирования в среде ПиктоМир. Рассказано о программной среде ПиктоМир, о методике обучения дошколят программированию в группе и инди-

видуальном порядке и об особенностях работы с 5 и 6-летними детьми. Обсуждается развивающий эффект занятий программированием и план дальнейшей разработки методики обучения.

ПиктоМир - обучающая программная среда

Методический комплект ПиктоМир [6, 10] состоит из нескольких цепочек заданий. В первой цепочке осваиваются правила игры с ПиктоМи-ром и вводятся понятия:

- Линейная программа;

- Исполнение программы;

- Пошаговая отладка;

- Сокращение записи программы с помощью линейных подпрограмм без параметров;

- Сокращение записи программы с помощью цикла К раз, где К цифра от 0 до 6;

- Условные операторы (рис. 1);

Остальные цепочки состоят из заданий, направленных на закрепление этих понятий.

Рис. 1. Программная среда ПиктоМир

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

ченное, а создать программу управления Роботом, действия которого можно увидеть тут же на экране. Кроме того, ПиктоМир является «разговорным» языком программирования, то есть предполагает и полное, и пошаговое выполнение программ. Наконец, ПиктоМир - это бестексто-

вая программная среда, для работы в которой от детей не требуется умение читать и писать.

Индивидуальные занятия с дошкольниками

Как и многие обучающие системы, ПиктоМир вначале использовался разработчиками для проведения занятий с собственными детьми и внуками. Так, А. Г. Кушниренко прошел несколько игр в ПиктоМире со своей 6-летней внучкой Аней. За 4 занятия девочка сумела научиться создавать не только линейные программы, но и использовать циклы и подпрограммы. Впоследствии Аня ассистировала А. Г. Кушниренко в проведении занятий с детьми более младшего возраста. По наблюдениям А. Г. Кушниренко комментарии Ани носили манипуляционный характер («Делай вот так») и зачастую оказывались эффективнее его объяснений. 6-летний Антон, занимаясь с отцом, А. Г. Леоновым, не только освоил базовые концепции программирования, но и сумел пройти наиболее сложные (недоступные многим взрослым) игры в ПиктоМире. К сожалению, результаты этих занятий слабо документированы: доступны только условия решавшихся задач. Эффективность занятий в Пик-тоМире была отмечена А. И. Левенчуком, 9-летний сын которого, за 3-4 месяца решивший все задания ПиктоМира, плавно перешел на более серьезный язык программирования Кумир

[7].

Курс программирования для дошкольных учреждений

Накопленный положительный опыт позволил предпринять попытку разработки регулярного миникурса программирования для дошкольных образовательных учреждений.

В 2010-2011 учебном году с детьми подготовительных и старших групп детского сада № 1511 г. Москвы был проведен курс занятий, разработанный И. Б. Рогожкиной в сотрудничестве А. Г. Кушниренко. В эксперименте участвовали 48 детей. Из них 7 посещали старшую группу детского сада и были моложе 6 лет. Остальные дети посещали подготовительную группу и были старше 6 лет.

Учебный курс состоял из 8 занятий по 25 минут. Они проводились раз в неделю в подгруппах из 6 человек. На первых трех занятиях дошкольникам предлагалось составить простые линейные программы. Последующие занятия были посвящены введению циклов (повторителей) и подпрограмм.

Непосредственная работа детей на компьютере занимала 10 минут, что было обусловлено и санитарными нормами, и наблюдениями за деятельностью дошкольников (многие из них уставали после 10-минутной игры на компьютере и не могли сосредоточиться). Таким образом, большая часть занятия была посвящена играм и упражнениям без использования компьютера.

Во втором цикле занятий, проведенном в 2011-2012 учебном году, приняли участие 18 пятилетних и 23 шестилетних ребенка. Цикл состоял из 12 занятий и существенно обогатился за счет новых методических приемов и игр:

- Игры в Робота и Капитана: один ребенок изображает Капитана, отдающего команды, а другой - выполняющего их Робота.

- Игры на магнитных досках: один из детей передвигает Робота - фишку со стрелочкой, а другой отдает команды, необходимые для того, чтобы Робот добрался до нужной позиции.

- Использование математических корабликов для визуализации процесса исполнения программы.

- Раскрашивание клетчатых полей: в соответствии с заданной программой ребенок должен правильно раскрасить клетчатое поле.

- Разрезание листа с программой: детям предлагалось разрезать длинный лист бумаги с нарисованными на нем пиктограммами команд на одинаковые кусочки и заменить исходную линейную программу программой с циклом-повторителем.

- Творческое программирование: необходимо придумать и нарисовать пиктограммы для команд, с помощью которых робот мог выполнить то или иное задание.

Особенности работы с 5 и 6-тилетними детьми

В ходе проведенного эксперимента удалось обнаружить разницу в восприятии концепций программирования 5 и 6-летними детьми. Во-первых, из двадцати пяти 5-летних участников только пятеро сумели научиться использовать циклы и подпрограммы. Во-вторых, что более существенно при практической работе с детьми, 5-летним детям потребовалось больше занятий и упражнений для того, чтобы научиться создавать линейные программы и понимать, как они будут выполняться.

Третья проблема была связана со слабым развитием мелкой моторики у детей 5-летнего возраста, что затрудняло работу на компьютере. В ПиктоМире при составлении программы основ-

ным считается не стандартный метод «перетаскивания» команды в программное окно, требующий от ребенка продолжительного мышечного усилия, а более легкий, «манипуляционно»-игровой метод, при котором выбор команды и включение ее в программу состоит из двух этапов: 1) выделение, активизация команды (при этом выделенная пиктограмма подпрыгивает, привлекая внимание ребенка) и 2) последующее размещение выделенной команды в программном окне. Но даже и в этом режиме, 5-летние дети (в отличие от 6-летних) испытывали трудности с выделением нужных пиктограмм. Потребовалось около двух-трех занятий, чтобы дети научились работать мышкой. Возможными решениями описанной проблемы могут стать увеличение размера пиктограмм и включение пальчиковых игр в занятия.

В целом мы пришли к довольно очевидному a posteriori выводу, что детям 5-летнего возраста необходим курс «Введение в программирование», состоящий из 5-6 занятий и не затрагивающий циклы, подпрограммы и условные операторы. Основная задача этого курса - научить детей составлять, понимать и выполнять линейный набор инструкций и дать им представление о том, что такое программное управление.

Показатель успешности проведенных занятий

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

Максимальный возможный балл в каждом блоке был равен 6. Часть заданий в тесте была повышенного уровня сложности. Мы полагали, что ребенок успешно прошел тест (точнее, один из блоков теста), если его результат был не ниже трех баллов.

Диагностика показала, что все дети научились составлять линейные программы. Что касается подпрограмм и циклов, то использовать их научились, соответственно, 93 % и 95 % 6-летних детей. В 2011-2012 учебном году результаты были намного лучше. По результатам теста абсолютно все дети сумели освоить учебные понятия. Интервью с детьми продемонстрировали высокую мотивацию и заинтересованность дошколят в занятиях. По признанию детей им нравились занятия, потому что «они были очень интересными», «там надо было думать», «можно было на компьютере играть», «научились играть во взрослые игры», «решали сложные задачки».

В целом результаты проведенного эксперимента доказывают возможность обучения дошкольников приемам настоящего «серьезного» программирования, доказывают (в терминологии Пиаже) отсутствие каких-либо физиологически обусловленных барьеров при освоении основных алгоритмических конструкций в возрасте 6-6,5 лет.

Во многих работах было показано, что грамотно выстроенный курс программирования влечет за собой развитие важнейших когнитивных навыков, таких как умение планировать и организовывать свою деятельность, а также развитие математических способностей и абстрактного мышления [9]. Кроме того, занятия программированием способствуют формированию и развитию особого типа мышления, называемого алгоритмическим [1, 4-5, 8]. Этот тип мышления подразумевает умение планировать структуру действий, разбивать сложную задачу на простые, составлять план решения задачи. В широком смысле алгоритмическое мышление является операционной базой всех методов и приемов обработки и использования информации. Навыки, составляющие его основу, являются метапред-метными и необходимы каждому человеку, живущему в современном информационном обществе, независимо от его профессиональной подготовки и ориентации.

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

по меньшей мере в одном отношении: у детей появился интерес к такой трудной интеллектуальной деятельности, как программирование. Дошколята убедились, что управлять Роботом захватывающе интересно. Многие из них просили дать им задание посложнее и с удовольствием бились над полученной головоломкой. Все дети без исключения были расстроены окончанием занятий и выразили желание продолжить их в будущем. Это означает, что сам материал и форма его подачи позволяют без проблем удерживать внимание дошкольников.

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

Библиографический список:

1. Дуванов, А. А., Шумилина, Н. Д. Азбука Робот-ландии - курс информатики для младших школьников [Текст] / А. А. Дуванов, Н. Д. Шумилина // ИТО-РОИ, 2011.

2. Звонкин, А. К. Малыши и математика. Домашний кружок для дошкольников [Текст] / А. К. Звонкин. - М. : МЦНМО, МИОО, 2006.

3. Ибука, М. После трех уже поздно [Текст] / М. Ибука. - М. : Альпина нон-фикшн, 2011.

4. Козлов, О. А. Методика преподавания основ алгоритмизации и метод проектов в раннем обучении информатике [Текст] / О. А. Козлов // ИТО-РОИ, 2010.

5. Кушниренко, А. Г., Лебедев, Г. В. Информатика: 12 лекций о том, для чего нужен школьный курс информатики, и как его преподавать [Текст] / А. Г. Кушниренко, Г. В. Лебедев. - Лаборатория Базовых Знаний, 2000.

6. Кушниренко, А. Г. Пиктомир: опыт использования и новые платформы [Текст] / А. Г. Кушниренко,

A. Г. Леонов, К. А. Пронин, М. А. Ройтберг,

B. В. Яковлев // 6-ая конференция «Свободное программное обеспечение в высшей школе». - Пере-славль, 29-30 января 2011.

7. Левенчук, А. И. Публикация в ЖЖ [Электронный ресурс]. - Режим доступа : http://ailev.livejournal. com/948015.html

8. Первин, Ю. А. От операционного стиля мышления через педагогические компетенции к универсальным учебным действиям [Текст] / Ю. А. Первин // ИТО-РОИ, 2010.

9. Clements, D. H. The Future of Educational Computing Research: The Case of Computer Programming. // Information Technology in Childhood Education Annual, 1999. - pp. 147-179.

10. Rogozhkina I. B., Kushnirenko A. G. PiktoMir: Teaching Programming Concepts to Preschoolers with a New Tutorial Environment // Procedia - Social and Behavioral Sciences, 28 (2011) - pp. 601-605.