Современные тенденции в обучении программированию в школе

Практические советы: преодолеть барьеры в преподавании

Современные тенденции в обучении программированию в школе

Статьи

Зачем мы учим школьников программированию? 

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

Первый важный момент — алгоритмическое мышление: ученик должен понимать, что такое алгоритм, уметь его составить или проанализировать.

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

Что нас останавливает?

Какие могут быть основные препятствия? Это и страх перед новым, сложным материалом, непонимание, как к нему подступиться, и сложности по преодолению разрыва между школьным программированием и программированием «взрослым».

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

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

Проверьте цифровые навыки учеников вашего класса и сформируйте индивидуальный образовательный трек с помощью Яндекс Учебника.

Как развить интерес к предмету?

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

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

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

Для развития алгоритмических навыков  не надо сразу изучать язык программирования. Для развития алгоритмических навыков существуют разные среды программирования с исполнителем (например, КуМир, используемая в ОГЭ). 

Какому языку программирования обучать в школе? 

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

alt
Так выглядит работа с исполнителем-роботом в курсе Яндекс Учебника для 7 класса.Ученики не пишут код, а составляют алгоритмы с помощью перетаскивания специальных блоков.

Затем можно переходить на более абстрактную работу с данными.

alt
Урок из 8 класса — мы повторяем те же концепции (условный оператор, с которым уже знакомились в 7 классе), но без исполнителя. А программирование 9 класса — это прямое продолжение курса 8 класса, появление более сложных структур данных и вспомогательных алгоритмов.

К этому моменту знание языка программирования, конечно, необходимо преподавателю. Но это не значит, что нужно получать полную специализацию разработчика. Достаточно усвоить базу. Обратимся к ФГОСу, чтобы определить её. База — это основные структуры данных (числа, строки, логический тип, массивы) и работа с ними, ветвление, циклы и функции.

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

alt
Пример карточки из презентации Яндекс Учебника. На вкладке «Методический комментарий» даётся весь необходимый материал по языку программирования в дополнение к самим карточкам.
alt
Пример авторского решения задачи повышенной сложности — к ним даются комментарии по ходу решения.

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

Так как задачи в ОГЭ и ЕГЭ даются для выполнения на 5 разных языках, остаётся свобода выбора.

Выбор языка Python в программе Яндекс Учебника обусловлен несколькими причинами. Во-первых, в отличие от учебных языков, Python — востребованный язык в профессии (он преобладает в веб-разработке, в машинном обучении). Во-вторых, это язык «для программиста». У него очень низкий порог вхождения, поскольку он был создан так, чтобы на нём было удобно писать код. Поэтому Python легче начать изучать. Сдать экзамены для ученика тоже не составит проблемы – как один из самых популярных языков, Python представлен в ОГЭ и ЕГЭ по информатике.

Больше разборов задач по программированию в телеграм-канале Яндекс Учебника по Информатике.

Больше по теме

Статьи

II Всероссийская конференция Яндекс Учебника

Статьи

Как управлять результативностью учеников в информатике

​​Какие инструменты и методики помогут современному учителю

Статьи

Как вовлечь детей в информатику

Практические советы

Статьи

Как школьные кружки влияют на выбор профессии девочек и мальчиков

Результаты опроса  Яндекс Учебника

Статьи

Зачем раскладывать образование на навыки, и как это работает в Яндекс Учебнике

Школьники осваивают навыки неравномерно, а педагогам не хватает удобных инструментов для отслеживания прогресса каждого ребёнка. Мы поговорили с экспертами из НИУ ВШЭ, МГПУ и Яндекс Учебника о том, что такое доказательный подход в образовании, как опора на навыки позволяет добиться лучших образовательных результатов, а также о том, что лежит «под капотом» рекомендательной системы Учебника.

Статьи

Как учителю найти подход к каждому, чтобы дети учились лучше?

Статьи

Как раз и навсегда навести порядок в рабочих задачах с помощью матрицы Эйзенхауэра?

[ПОДАРОК: матрица Эйзенхауэра для распечатывания]