На протяжении всей начальной школы вам вбивают в голову концепцию ведения заметок. Если вы не делаете конспекты в классе, то учителя думают, что вы либо гений, либо не относитесь к учебе серьезно; часто последнее. Я, как и большинство прилежных людей, думал, что конспектирование способствует обучению. Я перенес эту концепцию в свое путешествие по программированию. Мне потребовалась целая вечность, чтобы пройти учебные модули. Я чувствовал, что я был самым медленным человеком в моем тренировочном лагере, и моя уверенность была в туалете. После ухода из моего первого учебного лагеря по семейным обстоятельствам я пересмотрел свою стратегию обучения. Изучение того, как учатся другие, дало мне понять, что мой способ был неэффективным.
Мой старый метод обучения был:
- Слушайте видео или лекцию и делайте заметки
- Просмотрите эти заметки позже и задайтесь вопросом, слышал ли я вообще лекцию.
- Еще больше расстраивайтесь из-за заметок, потому что формат не имеет смысла, и теперь я переформатирую его.
- Надеюсь понять прочитанное и двигаться дальше, или посмотреть видео или лекцию еще раз
- Повторение.
Это было утомительно и пустая трата времени. Пришлось прекратить делать записи.
Делая заметки, вы отвлекаетесь
Сосредоточиться — значит направить свое внимание на одну задачу и довести ее до конца или, по крайней мере, до момента, когда имеет смысл сделать паузу. Делая заметки, я должен был сосредоточиться на двух вещах одновременно: слушать и писать. Написание — сложная задача: выполнение ее при одновременном прослушивании видео, учителя и т. д. отвлекает. Мне потребовалось 30 лет, чтобы понять, что конспектирование не работает. Вместо этого я решил сделать заметку о том, что мне нужно пересмотреть. Оттуда я решаю, нужна ли мне тема для запоминания или усвоения концепции.
Флэш-карточки — это мощный инструмент
Когда я прочитал, что люди используют карточки для лучшего понимания сложных понятий, я был поражен. Никогда не приходило в голову, что это было что-то эффективное. Ключ заключается в том, чтобы не использовать эти усталые, устаревшие бумажные карты прошлых лет. Такие приложения, как Anki, позволяют создавать более интерактивные карточки. Я смог создать некоторые, которые, по сути, действовали как небольшая викторина для отработки концепции. Вы можете настроить тип карточки, которую хотите создать. Некоторые берут пользовательский ввод и проверяют его на соответствие предоставленному ответу — очень похоже на логическое значение в программировании. Вы даже можете редактировать HTML карты. Возможности безграничны в том, что вы можете создать.
Резиновые уточки кодируют лучше
Поначалу термин «отладка резиновой утки» был мне незнаком. Общая идея состоит в том, чтобы отлаживать свой код, последовательно проходя программу и объясняя ее неодушевленному объекту — в данном случае резиновой утке. Исследования показывают, что благодаря механизму обучения кого-то еще учитель получает более глубокое понимание темы. Это может быть частью механизма необходимости ссылаться на учебные материалы: было показано, что это увеличивает запоминание информации. Я использовал эту информацию и говорил сам с собой на темы, которые мне нужно было понять более полно. Каждые несколько дней я находил время, чтобы просмотреть главу или концепцию, произнося «речь» на эту тему для себя. Если я замечал, что спотыкаюсь на информации, я делал пометку и возвращался к ней.
Практика, практика и еще раз практика
Нет замены повторению. Я обнаружил, что единственное, что сделало программирование второй натурой, — это практика. Я создавал методы, очищал код, редактировал переменные и изменял параметры и т. д. Я делал все, что мог, чтобы усложнить свой код, работая с той же целью метода. Игра — важная часть обучения, и игра с вашим кодом ничем не отличается.
Что делать с этой информацией
Информация — это сила; информация без действия - слабость. Если вы изучаете новый язык программирования, вам следует начать следующий модуль/урок прямо сейчас. Вместо того, чтобы делать заметки по всему модулю, вы должны записать концепции, которые, по вашему мнению, вам необходимо повторить. Когда вы закончите этот модуль, вернитесь и просмотрите то, что вы записали. Это что-то, что вы должны запомнить? Если да, то сделайте флешку. Это концепция, которую вам нужно усвоить? Если да, то сделайте карточку и попрактикуйтесь в этой концепции. Для более крупных понятий (логические значения, циклы, объектная ориентация и т. д.) я бы рекомендовал использовать метод «резиновой утки». Даже когда я знаком с общими понятиями других языков, я обнаружил, что эти темы требуют больше практики, чем другие.
Это практики, которые работали для меня; Я не учитель и не имею педагогического образования. Я даю собственный опыт. С усердием вы найдете метод, который лучше всего работает для вас. Вышеупомянутое является началом.
Практика делает совершенным. Я знаю, что вам не нужно быть совершенным, чтобы стать великим программистом — вам просто нужно постоянно быть хорошим.