Как программисту составить эффективный план обучения
easy

Как программисту составить эффективный план обучения

Особенно если он пока будущий программист

Для успешного обучения важно многое: мотивация, методы, окружение и условия, актуальные источники информации, оценка прогресса и обратная связь, регулярная практика и даже хорошее самочувствие. А ещё для того, чтобы обучение шло как надо, необходим план. Сегодня поговорим о том, как его составить.

Эта методика подойдёт как тем, кто только хочет изучить программирование, так и тем, кто им уже занимается. Во втором случае задача обучения будет в том, чтобы углублять уже имеющиеся знания, следить за новыми технологиями и изучать чужие проекты, чтобы применять какие-то удачные решения.

Отличие первого случая от второго будет только в том, что при изучении какого-то языка программирования с нуля нужно сначала выбрать этот самый язык. Для этого нужно понять, какая область вас больше интересует:

  • фронтенд, бэкенд или фулстек;
  • десктопные, мобильные или веб-приложения;
  • программирование роботов и машин;
  • нейросети и машинное обучение и так далее.

Если вы новичок, вам могут помочь наши статьи «Я ничего не понимаю в ИТ. С чего начать?». После того как вы определитесь с тем, каким программистом хотите стать, выберите язык, который вам в этом поможет (для этого у нас есть статья «Ваш первый язык программирования: гид для начинающих»). 

Если же вы выбираете второй ЯП, то принцип примерно такой же, только вы и без нас знаете, что вам нужно :-)

Поставьте себе конкретные цели

Чтобы достичь какой-то цели, сначала нужно её определить — и чем точнее, тем лучше. Для этого такую большую и расплывчатую цель, как «изучить какой-то язык программирования», нужно разбить на более конкретные. Это поможет выстроить обучение плавно, а не пытаться выучить слишком много за один раз. При постановке мы рекомендуем придерживаться метода постановки целей SMART — о ней мы рассказывали в статье «Как программисту приобрести новый навык».

Представим, что вы выбрали Java. Большую задачу «изучить Java» можно разбить на такие более мелкие:

  • изучить общий синтаксис языка;
  • понять классы, объекты и обработку исключений;
  • научиться работать с файлами и потоками ввода/вывода;
  • освоить многопоточность;
  • познакомиться с коллекциями;
  • изучить основы веб-разработки;
  • изучить популярные фреймворки и так далее.

Java — объектно-ориентированный язык программирования, поэтому в план обучения стоит включить цель разобраться с этим самым ООП. У нас есть об этом серия статей.

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

Кстати, ни на что не намекаем, но в Яндекс Практикуме можно попробовать обучение бесплатно, вот пример из курса по Java:

Как программисту составить эффективный план обучения

Выберите подходящие учебные материалы и методы обучения

Мы уже писали об этом в статье «Как программисту приобрести новый навык», поэтому повторим кратко.

Вашим целям и индивидуальным потребностям могут соответствовать разные источники знаний. Это могут быть книги с теорией программирования, онлайн-курсы и видеоуроки и даже практические задания и проекты.

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

Составьте удобный график

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

  • начинать понемногу и плавно увеличивать время занятий;
  • запланировать регулярные занятия с одинаковой продолжительностью.

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

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

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

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

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

Установите срок для каждой цели

Для эффективного и продуктивного обучения нужно иметь какой-то конкретный срок. Но такая цель, как «изучить язык Java за год», всё ещё слишком абстрактна, и здесь на помощь придёт разбиение большой цели на маленькие. Например, для цели «изучить общий синтаксис языка» можно установить срок в неделю или две.

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

Предусмотрите чередование теории и практики

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

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

Наметьте в графике точки анализа прогресса

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

Для анализа прогресса можно выделить одно-два занятия между большими блоками обучения — они помогут не только определить текущий прогресс, но и повторить пройденный материал.

Хорошо, план у меня есть — что дальше?

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

Не торопитесь вносить изменения в план, пока не убедитесь, что ваши выводы действительно справедливы. Один или два практических примера могут зависеть от настроения, бодрости или просто от того, что тема интересна. Наблюдайте за своими успехами в течение по крайней мере трёх недель. Если по их истечении вы всё ещё будете уверены, что план обучения нужно скорректировать, вносите изменения.

У вас всё получится, мы в вас верим.

Обложка:

Алексей Сухов

Корректор:

Ирина Михеева

Вёрстка:

Маша Климентьева

Соцсети:

Юлия Зубарева

Курсы по программированию с нуля
Приходите к нам в ИТ. У нас есть удаленная работа, высокие зарплаты и удобное обучение в «Яндекс Практикуме». Старт бесплатно.
Начать бесплатно
Курсы по программированию с нуля Курсы по программированию с нуля Курсы по программированию с нуля Курсы по программированию с нуля
Получите ИТ-профессию
В «Яндекс Практикуме» можно стать разработчиком, тестировщиком, аналитиком и менеджером цифровых продуктов. Первая часть обучения всегда бесплатная, чтобы попробовать и найти то, что вам по душе. Дальше — программы трудоустройства.
Начать карьеру в ИТ
Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию Получите ИТ-профессию
Еще по теме
easy