Сразу оговорюсь, что я работаю в частной академии дополнительного образования, преподавателем веб-дизайна и программирования. Веду занятия у детей с 5 по 11 класс. Конечно, на наши курсы ходят в основном заинтересованные ученики, которым важна будущая профессия. Но я верю, что и в школе можно давать программирование на достойном уровне.
Сегодня расскажу, какие ресурсы и языки лучше использовать для обучения детей программированию. Будет много ссылок, но это не реклама, просто я сама ими пользуюсь.
Учить детей программированию иногда тяжело. Иногда нет. Иногда попадаются одаренные, которые могут пройти несколько тем за месяц, а есть "одаренные", которые так же сильны в логике, как слоны в бальных танцах. По-разному. Самое главное - заинтересовать.
Но как заинтересовать детей, если программирование - вообще не легкая вещь?
Через игры, отвечу я вам. Если вы молодой учитель, который еще не затух в желании давать интересный материал всем - возьмите на заметку. Уверена, это вам пригодится.
- Дети 5-7 классе и/или имеют минимум логических навыков и/или тяжело осваивают сложные формулы:
Scratch. Он не сложен, он не имеет в себе строчки кода, которые надо писать, там есть анимация и звуки, а также очень легко объяснять, что такое данные, условные инструкции, переменные, циклы и все остальное. Можно легко составить игровой процесс, где ученики работают в команде либо по одиночке, а также можно придумывать сложные задания и потом устраивать контрольные как положено: с вопросами что такое цикл, целые числа, тип bool и прочее. Вариаций много. Можете посмотреть уроки на younglinux.info.
Также посоветую вам учебник: Программирование для детей. Иллюстрированное руководство по языкам Scratch и Python. Там все иллюстрировано и вы можете его применять в обучении. Можно свободно скачать на просторах интернета.
- Дети 7-9 класс.
ЯП Python. Я думаю, что многие наслышаны о нем, но многие не хотят его учить. А зря. Это отличный язык для преподавания детям. В нем очень простой синтаксис, нет лишних операторов и элементов как в паскале или бэйсике, а если подключить pygame то можно ваять крутые штуки вроде анимаций, рисунка и так далее. Если класс не математический или тяжко им даются сложные описания функций, циклов и прочего, то возьмите этот сайт за основу. Там именно через создание различных игр проходит все обучение Python, плюс есть уже готовые проверочные, которые можно спокойно использовать для контрольных, например. Также есть интересные лабораторные работы, которые можно давать делать попарно.
Из учебников: Программируем на Python. Майкл Доусон.
Без комментариев, просто полистайте. Там даже дурак поймет, в чем суть :)
- Дети 8-11 класс.
Тот же Python, но сменим вектор направления. Если все те же гуманитарии - возьмите предыдущий пункт. Если математический класс - то можно спокойно взять ресурс pythontutor.ru, а после с линуксоида взять уроки по библиотеке Tkiner(это встроенная библиотека python для создания GUI(графических интерфейсов). Во-первых, на пайтонтьюторе много околоолимпиадных задач, которые помогут ученикам в будущем сдать экзамен или пойти даже на олимпиаду. Во-вторых на втором ресурсе вы можете на пальцах показать, как применять ЯП, написать с детьми какой-то проект, может который поможет им в обучении, или просто чтобы они могли похвастаться своим родителям - смотри какой я умный.
Учебник: Все тот же Доусон, либо можете попробовать: Python3 и PyQt5, разработка приложений 2016. Прохоренок.
Но сразу оговорюсь, данная литература не ученая, скорее справочная, но там есть почти все нужные функции в основах, и есть примеры применения. Можно взять оттуда первую часть и давать ее в качестве справочника на занятиях под запись(лекциях).
- Зачем это детям в школе?
Давать детям программирование важно и нужно. Оно очень сильно развивает логическое мышление, фантазию, способность мыслить нестандартно, и главное через программирование можно объяснить то, как работает окружающий мир. Это гораздо интереснее и полезнее, чем в слепую разбирать двоичную систему - покажите, где это действительно применяется. Как и шестнадцатеричной СиС, в цветах RGB. Логику же можно осваивать через условные инструкции - это понятнее и нагляднее.
Мы ведь с вами сами запрограммированные машины. Просто с душой. :)
По всем вопросам пишите мне в ВК. Буду рада обменяться опытом и подискутировать с действующими учителями информатики.