У программистов есть дети. В этом плане статистика непоколебима.
И эта статья будет интересна как раз тем, у кого есть ребенок в возрасте 5-~9 лет, тем кто уже задумывается или уже задумывался над вопросом как посвятить ребенка в азы программирования.
Зачем это нужно?
Если вы еще задумываетесь над этим вопросом ( I guess, no) — Programming for everyone, be creative.
В чем сложность?
Вы можете в совершенстве знать несколько языков программирования, быть превосходным спикером, и натренировать десятки джуниоров, но, когда дело касается вопроса обучения детей, прочувствовать, что ваша “терминология” хромает, и весьма затруднительно подобрать правильные примеры и объяснения, чтобы сформировать у ребенка понимание предмета.
Возможно, не дурная идея как на картинке в топике читать детям Java 2 на ночь вместо сказок, но, наверное, нужно быть настоящим гуру, чтобы сделать это интересным и захватывающим детское воображение, больше чем истории про Бабку Ежку.
Если ребенку не интересно — слушать он не будет…
RSA Animate — Changing Education Paradigms
Так с чего же начать?
- “Сходинки до інформатики” dvsvit.com.ua/cxodunku/
- GCompis gcompris.net/index-ru.html
Дети хорошо понимают визуальные примеры и инструменты похожие на игру.
Пример — Scratch, уже упоминался на Хабре, правда, только в рамках программирования под Адруино:
Но наверное, главное не инструмент, а задачи которые он может решать, задачи которые можно использовать для игрового обучения:
Задачки, с которых можно начать:
Примеры приведены “как есть”, не обессудьте. Далее “Кот” — визуальный объект в среде Scratch.
(Hello, world! намеренно пропущен)
- Движение. Сделать, чтобы Кот двигался по экрану
- прошел N шагов;
- ходил перебирая лапками;
- двигался из точки в точку.
- Загадка. Кот должен загадать загадку и проверить ваш ответ. Пример, scratch.mit.edu/projects/14709879
- Рисование:
- многоугольники: нарисовать треугольник, четырехугольник, N-угольник;
- узоры, повторяющиеся фигуры, нарисовать дом. Пример, scratch.mit.edu/projects/12641639
- “графический редактор” с выбором цвета.
- Упражнения со строками:
- Соединение строк. Кот спрашивает имя мальчика, имя девочки и соединяет их в фразу. Пример, scratch.mit.edu/projects/13642667/
- Подсчитать количество вхождений заданной буквы в слове.
- Перевернуть слово. Пример scratch.mit.edu/projects/13844321/
- Проверить слово палиндром или нет.
- Таблица умножения: Кот спрашивает цифру и рассказывает таблицу умножения на эту цифру. Пример, scratch.mit.edu/projects/14038043/
- Игры. Кот двигается по лабиринту или между экранами, собирая “бонусы”. Пример scratch.mit.edu/projects/14662137
- Часы со стрелками. Пример scratch.mit.edu/projects/12769526
Полезные правила (кажется простые, но некоторым из этих правил сложно следовать):
- сначала пример;
- ребенок хорошо понимает если ему хорошо объясняют — не нужно требовать много и сразу;
- если ребенок вас не понимает — сделайте паузу до “завтра”, и придумайте новое объяснение;
- для ребенка обязательно нужно время на просто “поиграть” в свое удовольствие, поэкспериментировать;
- сложные задачи (такие как создание игры) — это здорово, и интересно, но для усвоения ребенком, имхо, лучше подходят простые задачи и главное многократное решение/повторение их вариаций.
И напоследок, важный алгоритм, который стараюсь хранить в уме.
Хочется услышать от предложения интересных задач для детей.
Автор: itsekhmistro