Почему дети должны учиться программированию в школе?

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

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

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

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

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

Один из многообещающих инструментов, часто упоминаемых в контексте развития этих компетенций, — это обучение программированию.

Что такое программирование?

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

Самые первые программы были написаны в машинном коде — последовательности чисел в двоичной форме (состоящей из цифр 0 и 1), удобочитаемой для процессоров. Фрагмент примерной программы, добавляющий единицу к сохраненному номеру, выглядел так: 0000 0010 0000 0000 0001 0000 0011 0100.

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

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

языки программирования

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

Даже ребенок может программировать

Компьютерное программирование — это навык, который часто приписывают избранным, получившим образование и специализирующимся в областях STEM (наука, технологии, инженерия и математика) специалистам, которые обладают знаниями и способностями создавать что-то с нуля с помощью клавиатуры и компилятора. Этакие программисты — создатели технологий.

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

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

Сеймур ПаппертВозможности программирования в качестве учебного пособия были исследованы математиком Сеймуром Папертом еще в 1960-х годах. Вдохновленный теорией когнитивного развития Жана Пиаже, Паперт создал первый образовательный язык программирования, предназначенный для обучения информатике и математике: Logo.

Сеймур Паперт скончался в 2016 году, но его многолетние исследования прямо или косвенно привели почти ко всем достижениям, достигнутым в этой области по сей день. Революционный роботизированный набор LEGO Mindstorms стал результатом сотрудничества между LEGO Group и исследовательской группой MIT Media Lab во главе с Папертом. Название набора фактически было заимствовано из новаторской книги Паперта: «Mindstorms: Children, Computers and Powerful Ideas». Его влияние признают и создатели известного языка визуального программирования Scratch. Благодаря усилиям MIT, Tufts, LEGO и многих других, программирование стало гораздо более доступным навыком для детей, и обучение программированию могут проводить даже учителя, которые никогда раньше не программировали.

LEGO Mindstorms

Образовательные языки программирования созданы специально для обучения. Обычно они представлены в графическом виде. Чтобы кодировать, вы выбираете команду, а затем логически соединяете их вместе, создавая таким образом программу. Процесс основан на методе перетаскивания, а команды часто выглядят как цветные блоки с различными значками или текстом. Эта среда визуально привлекательна и исключает ранние синтаксические ошибки, кошмар для каждого начинающего программиста. Некоторые языки также исключают логические ошибки алгоритма — блоки кода, которые не могут работать вместе, не подходят друг другу. Даже дети, у которых не развит навык набора текста, могут создавать программы.

Преимущества обучения программированию в школах

1. Преимущество на рынке труда

Марк Цукерберг, основатель Facebook, когда-то сказал: — Наша политика в Facebook — буквально нанять как можно больше талантливых инженеров. Сегодня просто не хватает обученных и обладающих этими навыками людей.

Начнем с аргументов, которые легко измерить. По некоторым оценкам, рынок труда будет нуждаться все больше и больше в квалифицированных специалистах в области ИКТ. Цифровая экономика развивается быстрее, чем мировая экономика в целом.

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

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

квалифицированные специалисты в области ИКТ

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

Это касается и совершенно нетехнических профессий. В настоящее время 80% всех рабочих мест требуют хотя бы базовых информационных навыков. По совпадению, несмотря на растущий доступ к технологиям, 50% сотрудников не обладают достаточными компетенциями в этой области.

Мы имеем дело со значительным пробелом в знаниях. Восполнение этого пробела в ближайшие годы — одна из важнейших задач, стоящих перед образованием сегодня.

2. Цифровая грамотность

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

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

3. Преимущества для развития

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

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

Дети, знакомые с основами информатики с элементарным алгоритмическим мышлением и логическими построениями, продемонстрировали успехи в различных академических и социальных областях. Было отмечено улучшение зрительной памяти, когнитивных и языковых навыков.

Еще одна заметно улучшенная вещь — это метапознание, или обучение тому, как учиться, которое связано с самоконтролем и независимым обучением.

4. Вычислительное мышление

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

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

Логическое мышление

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

5. Тренировка творческих способностей

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

Развитие творческих способностей тем вероятнее, чем проще и разнообразнее язык программирования. Отличным примером является Scratch, структура которого была вдохновлена​​ кубиками LEGO.

Scratch

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

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

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

6. Учимся на ошибках

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

По умолчанию программы создаются методом проб и ошибок, они также требуют повторного тестирования на каждом этапе. Благодаря этому методу ошибка в программировании приобретает образовательную ценность; в отличие от других методов, ошибка — это проблема, а не неудача.

Вопрос о программе не в том, правильная она или неправильная, а в том, можно ли ее исправить. Если бы этот способ взгляда на интеллектуальные продукты был обобщен на то, как более широкая культура думает о знаниях и их приобретении, мы все могли бы меньше бояться наших страхов «ошибиться».

синтаксис в цветном блоке

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

7. Развитие когнитивных способностей

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

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

Метод обучения также важен. Он должен соответствовать возрасту, быть представлен как форма развлечения и связан с другими процессами развития, такими как искусство, математика или чтение.

Как обучать программированию?

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

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

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

создать свою собственную игру

В процессе обучения игре образовательный процесс интегрирован с игровым контекстом. Выполняя задания, ученики набирают баллы и переходят на следующие уровни. Подобные инструменты применяются не только при обучении программированию, но и по другим школьным предметам. Существует множество приложений, использующих аналогичный механизм, например: Code.org, Scratch.mit.edu, Blockly.games  и т.д.

В игровом дизайне основное внимание уделяется обучению через кодирование и обучению через создание. Оно позволяет детям стать гейм-дизайнерами, программистами, создателями собственных функциональных игр, что дает им реальные навыки и повышает их самооценку. Несомненно, это самый эффективный и вдохновляющий из доступных сегодня методов обучения. Создавая эквиваленты своих любимых игр, дети чувствуют себя волшебниками. Отличное программное обеспечение для программирования простых игр — Scratch.

Робототехника — еще одна область, способная удивительно вдохновлять детей учиться программированию. Ощутимые механизмы (лучше всего созданные самими учащимися) делают кодирование более реальным. Ученикам намного легче понять код, когда робот выполняет его в физическом мире, прямо рядом с ними.

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

На рынке доступно множество образовательных наборов робототехники, но самые ценные из них были созданы LEGO Education: LEGO WeDo и LEGO Mindstorms. Их эффективность основана на любви детей к кубикам LEGO, но у них есть и другие преимущества. Оснащенные датчиками и двигателями, этими наборами можно управлять с помощью удобного для детей программного обеспечения для визуального программирования с перетаскиванием мышью (наборы WeDo также можно программировать в Scratch!). Поэтому они являются отличным инструментом для учащихся от 6 лет (WeDo), но также и для тех, кому 99 (Mindstorms).

LEGO Education

Говоря о робототехнике, нельзя не упомянуть другие ее образовательные ценности. Работая в физическом мире, роботы обучают физике и механике. Строя роботов из кубиков или других элементов, дети улучшают свои моторные навыки, которые, кажется, были забыты. Выбирая подходящие конструкции, датчики или темы, можно также изучать биологию, химию, историю или искусство.

Следовательно, робототехника — действительно междисциплинарная область.

С чего начать

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

Для маленьких детей (в возрасте от 6 до 8 лет) лучшим выбором будут роботы, программируемые на графических языках, которые не требуют свободных навыков чтения и письма. Вы можете использовать наборы робототехники (LEGO Education WeDo), которые предоставят вам больше возможностей, но и отнимут много времени для занятий в классе.

Если вашим ученикам уже исполнилось 8 лет, вы можете познакомить их с немного более сложным программным обеспечением, таким как Scratch (вы также можете программировать в нем наборы LEGO WeDo) или создать более продвинутых роботов с помощью LEGO Mindstorms EV3.

WeDo Scratch Mindstorms EV3

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

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

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

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

С Уважением, MonitorBank

 

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *