Вопрос вполне справедливый. Особенно если представить домашнее задание в привычном школьном смысле. Но у нас всё иначе.
Домашняя работа — не приложение к занятиям и не способ дополнительно загрузить ребёнка. Это часть образовательного процесса, без которой системное обучение программированию довольно быстро теряет эффективность.
На занятии ребёнок знакомится с новым материалом, слушает объяснение преподавателя, разбирает примеры и сразу применяет новые знания на практике.
Настоящая проверка понимания начинается позже — когда похожую задачу нужно решить самостоятельно.
Именно тогда становится понятно, действительно ли новое знание стало собственным или пока существует только на уровне «когда объясняли, мне всё было понятно».
Между «я понял» и «я умею сделать сам» есть довольно большое расстояние. Домашняя работа как раз помогает его пройти. Поэтому в Tomorrow мы просим выполнять все части домашнего задания, читать заданную теорию и готовиться к тестам. Не ради формальной дисциплины, а потому, что без самостоятельной практики даже хорошо понятый на занятии материал легко остаётся поверхностным.
Домашнее задание превращает знание в навык
Понять объяснение преподавателя значительно легче, чем через несколько дней самостоятельно восстановить логику решения.
Это естественная особенность обучения.
На уроке новая тема может казаться совершенно понятной. Ребёнок видит пример, понимает действия преподавателя, выполняет похожую задачу — всё получается. Но стоит немного изменить условие и убрать готовую последовательность действий, как становится ясно, насколько глубоко материал действительно усвоен.
Именно поэтому одного лишь занятия недостаточно.
Ребёнку необходимо самостоятельно вернуться к материалу, вспомнить принцип, попробовать применить его в другой ситуации и получить собственный опыт решения задачи. Иногда для этого придётся открыть пример, иногда — перечитать теорию, а иногда несколько раз ошибиться, прежде чем найти правильный вариант.
В результате знание постепенно перестаёт быть услышанной информацией и становится собственным инструментом ученика.
Если же ребёнок занимается только на уроках и почти не возвращается к материалу между ними, небольшие пробелы начинают накапливаться. Сначала это почти незаметно, но программа становится сложнее, новые темы опираются на предыдущие, и ученик всё чаще нуждается в подсказках там, где уже должен был бы справляться самостоятельно.
Поэтому домашнее задание в нашей программе обязательно.
При этом его содержание и сложность сильно зависят от возраста ребёнка.
Младшая ступень: учимся самостоятельно думать и не бояться ошибок
У младших учеников теории совсем немного. В этом возрасте нам не нужно, чтобы ребёнок механически заучивал большие определения и воспроизводил их слово в слово.
Гораздо важнее понять, действительно ли он осмыслил понятие.
Если ребёнок способен объяснить его своими словами и показать, как оно работает в программе, значит, основная задача выполнена.
Практическая часть домашней работы обычно строится вокруг знакомого материала. У ученика есть пример, материалы или видео с занятия, на которые можно опереться, а затем нужно самостоятельно решить небольшую задачу, дополнить алгоритм или создать простой проект.
Для ребёнка это может выглядеть как игра или головоломка, но основная педагогическая задача глубже: мы постепенно приучаем его не ждать готового ответа.
Когда решение не лежит перед глазами, возникает очень важный момент выбора. Можно сразу сказать «я не знаю, покажите мне», а можно сначала попытаться разобраться: вспомнить занятие, посмотреть пример, попробовать один вариант, затем другой.
Наша задача — постепенно сформировать второй сценарий.
Самостоятельность редко появляется сама собой только потому, что ребёнок становится старше. Она развивается через опыт самостоятельного решения посильных задач.
Одновременно домашняя работа помогает сформировать правильное отношение к ошибкам. В программировании невозможно постоянно получать верный результат с первой попытки. Что-то обязательно будет работать не так, как задумано, и ребёнок должен привыкнуть воспринимать это спокойно.
Ошибка здесь — не свидетельство того, что ученик «не умеет программировать». Это сигнал о том, что между задуманным и полученным результатом есть несоответствие, которое нужно найти и исправить.
Чем раньше ребёнок привыкнет не бояться такого процесса, тем легче ему будет двигаться дальше.
Именно поэтому на младшей ступени мы сохраняем игровую форму домашних заданий. Ребёнок сразу видит результат собственных действий: изменил программу — изменилась игра, исправил ошибку — заработал механизм. Такая связь между усилием и видимым результатом помогает сохранить интерес и одновременно формирует привычку самостоятельно работать.
Средняя ступень: теория начинает связывать знания в систему
В средних группах требования постепенно меняются.
Безусловно, на начальном этапе погружения ученики средней ступени также учатся правильному отношению к ошибкам. Мы также учим их самостоятельному принятию решений, так как самостоятельность сама по себе с возрастом не появляется: её надо развивать.
Но, естественно, сложность и объём теории и самостоятельной практики увеличиваются и видоизменяются.
В теории теперь недостаточно только приблизительно понимать, что делает тот или иной механизм. Появляется более серьёзный понятийный ряд: ученик должен знать основные определения, различать конструкции и понимать связи между ними.
Это связано не с желанием сделать обучение более академическим, а с естественным усложнением программирования.
Пока программа состоит из нескольких простых действий, многое можно объяснить интуитивно. Но когда одновременно используются переменные, условия, циклы, функции и более сложные алгоритмы, необходимо понимать не только что написать, но и почему выбран именно этот инструмент.
Без теории практика постепенно превращается в повторение знакомых шаблонов. Ребёнок помнит, что в похожей задаче когда-то использовалась определённая команда, и пытается воспроизвести её снова. Пока задача почти совпадает с примером, это может работать. Но стоит изменить условие — и становится видно, понял ученик принцип или просто запомнил форму решения.
Поэтому теория в средней ступени постепенно превращается в основу, на которую ребёнок может опираться при самостоятельной работе.
При этом мы стараемся сразу связывать её с практикой.
Если изучается новое понятие, ученик должен увидеть его в настоящей программе, изменить, применить самостоятельно и понять, как оно влияет на результат. Так теория перестаёт быть набором определений для запоминания и становится рабочим инструментом.
Меняется и сама форма домашних заданий. В начале средней ступени многие из них всё ещё сохраняют игровую основу, но затем работа становится серьёзнее: появляется больше кода, проекты усложняются, а результат всё чаще требует нескольких последовательных этапов.
Ребёнок постепенно привыкает к тому, что программирование — это не только момент, когда на экране появилось что-то красивое и работающее. Это ещё и длительный процесс, в котором нужно разобраться в задаче, написать часть программы, проверить её, найти ошибки и только затем получить конечный результат.
Старшая ступень: самостоятельная работа превалирует над теорией
К старшей ступени ученик уже должен быть подготовлен к значительно более самостоятельной модели обучения.
Если он прошёл предыдущие этапы, мы несколько лет постепенно формировали именно эту способность: работать дома, возвращаться к теории, спокойно относиться к ошибкам и сначала пытаться разобраться самому.
Поэтому требования здесь становятся выше.
На занятии преподаватель объясняет новую теорию, разбирает сложные вопросы и показывает подходы к решению. Но значительную часть практики ученик должен выполнить самостоятельно: написать код, применить новый материал, столкнуться с собственными ошибками, найти их причины и исправить.
Именно так постепенно появляется настоящий навык разработки.
Можно внимательно наблюдать за преподавателем и прекрасно понимать каждое его действие, но этого недостаточно. Реальный уровень становится виден тогда, когда перед учеником появляется новая задача без готовой пошаговой инструкции.
Способен ли он понять, с чего начать? Разбить проблему на части? Выбрать подходящий инструмент? Проверить результат и исправить ошибки?
К старшей ступени ученик должен всё чаще отвечать на эти вопросы самостоятельно.
Почему мы не используем обычные школьные оценки
В Tomorrow мы сознательно отказались от привычной системы оценок.
Это не означает, что мы не контролируем результат. Мы видим выполнение домашних заданий, знание теории, результаты тестов, самостоятельность и качество работы над проектами.
Более того, мы создали абсолютно прозрачную систему отчётности: личный кабинет с графиком успеваемости, разбитый на показатели: ДЗ, теория, поведение, посещение; видеоотчёты, мастер-классы с родителями. Мы не только полностью контролируем процесс обучения, но и показываем каждый его шаг.
В программировании существует еще один наглядный показатель прогресса обучения: работает созданный тобой проект или нет.
Если ребёнок изучал материал, выполнял домашнюю работу и научился применять знания, результат можно увидеть своими глазами: работает программа, запускается игра, отвечает чат-бот или открывается созданный сайт.
Такой результат значительно понятнее абстрактной пятёрки.
Ученик работает не ради цифры в журнале, а потому, что без понимания материала его собственный проект просто не получится таким, каким он его задумал.
В этом смысле программирование — довольно честная дисциплина. Программу невозможно убедить работать хорошей оценкой. Нужно найти правильное решение.
Зачем нужны тесты по теории
Тесты выполняют другую функцию.
Для нас это своеобразная лакмусовая бумажка, которая показывает, что ребёнок действительно понял и сохранил в памяти, а что постепенно начало забываться.
Обычно тест занимает около 10–15 минут занятия и не превращается в отдельную большую контрольную работу.
Его задача — не поставить оценку, а провести диагностику.
Материал мог быть хорошо понят на занятии, но спустя несколько недель часть определений или принципов начинает забываться. Это естественно. Важно обнаружить пробел раньше, чем следующая программа начнёт строиться поверх него.
По результатам тестов преподаватель понимает, к какой теме стоит ненадолго вернуться, что нужно повторить или закрепить дополнительной практикой.
У родителей тоже есть часть ответственности
Здесь мы предпочитаем говорить максимально открыто.
Сам факт того, что ребёнок посещает хорошую школу программирования, ещё не гарантирует сильного результата.
Школа может дать программу, преподавателей, материалы, проекты, систему мотивации и обратную связь. Но учиться всё равно должен сам ребёнок.
Если он уже умеет организовывать своё время и привык выполнять домашнюю работу, участие родителей может быть минимальным.
Если такой привычки пока нет, первое время потребуется помощь.
Не нужно решать задачу вместо ребёнка или сидеть рядом, пока он пишет программу. Гораздо важнее помочь организовать процесс: напомнить о домашней работе, помочь выделить время и не позволять постоянно откладывать всё на последний вечер.
Наша система мотивации, Futures, игровая форма заданий в начале обучения и возможность видеть собственный результат действительно помогают заинтересовать детей. Но никакая мотивационная система не способна полностью заменить привычку регулярно работать.
И именно в формировании этой привычки школа и семья должны действовать вместе.
Регулярность важнее большого объёма
Одна из самых неудачных моделей — выполнять всё домашнее задание одним большим блоком непосредственно перед следующим занятием.
Формально работа будет сделана, но образовательный эффект окажется значительно слабее.
Гораздо полезнее несколько раз ненадолго вернуться к материалу между уроками: повторить теорию, продолжить проект, спокойно разобраться с возникшей проблемой.
Поэтому с первых недель мы постепенно вводим нового ученика в регулярный режим. Нагрузка не должна резко становиться большой. Сначала это небольшая теория и короткая задача, затем самостоятельной работы становится больше.
Так ребёнок привыкает к нагрузке постепенно и начинает воспринимать её не как неприятную обязанность раз в неделю, а как нормальную часть обучения.
Что происходит, если домашнюю работу не выполнять
Мы чётко следим за показателями каждого ученика. Когда мы не наблюдаем регулярности выполнения домашних заданий и/или теории, то сначала пробуем убедить ученика: проводим полезные разговоры, не мораль, а именно разговор, пытаемся найти причину и объяснить на показательном примере в чем важность самостоятельной работы. Если ситуация не меняется в сторону улучшения, то сигнализируем родителям.
При этом у родителей всегда есть полный открытый доступ к успеваемости своего ребёнка в личном кабинете.
При систематическом невыполнении обязательств по ДЗ и теории ученик начинает отставать от группы. Программа усложняется, а новые темы всё сильнее опираются на предыдущие. Поэтому при отставании мы либо переводим ученика в более слабую группу, либо прощаемся с ним.
Да, это сложно. Да, это больно. Но если ученик не хочет работать и развиваться, если разговоры, уговоры и объяснения не оказывают влияния, то мы просто не можем продолжать тянуть такого ребёнка без ущерба для его группы. Так как количество вопросов и дополнительных объяснений для отстающего ученика на занятии начинает превалировать над объяснением новой темы.
После всего вышесказанного может показаться, что домашние задания, теория и тесты требуют большого количества свободного времени. На практике всё гораздо проще:
К примеру, на первом году обучения в начальной средней группе на домашнее задание и повторение теории обычно достаточно 10–15 минут в день. Это не часы за учебниками и не ещё одна школьная домашка, а небольшая регулярная работа за компьютером, которая со временем становится привычной частью обучения.
Поэтому бояться домашних заданий или теории точно не стоит. Мы не стремимся перегрузить ребёнка — наша задача постепенно научить его работать самостоятельно и сделать так, чтобы полученные знания действительно оставались с ним, а не забывались через неделю после занятия.