1. Найдите правильную мотивацию для обучения

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

  1. Продвинуться дальше в текущей карьере.
  2. Сменить род занятий.
  3. Зарабатывать дополнительно благодаря сторонним проектам.
  4. Разработать свой собственный продукт (игру, мобильное приложение), создать стартап.

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

Чтобы помнить о цели, можете записать её на бумаге и держать на виду, сделать обоями на рабочем столе компьютера или телефона (что мне больше нравится).

2. Выберите правильный язык

В самом начале может оказаться очень сложно решить, что именно изучать. Некоторые языки программирования освоить легче, некоторые имеют узкие сферы применения. Однако на этом не стоит серьёзно зацикливаться. Лучше начать с чего угодно, чем тратить часы в поисках «идеального» варианта. Потому что, освоив один язык программирования, будет легче переключиться на другой.

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

Если не знаете, с чего начать, попробуйте изучить язык JavaScript. Нравится это или нет другим программистам, JavaScript становится всё более популярным и применяется не только при разработке веб-сайтов, но и в других сферах. Таким образом, вы покроете максимальное количество вариантов применения.

3. Составьте расписание

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

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

Самостоятельное изучение программирования
Eric Rothermel/Unsplash.com

Заниматься 25 минут в день легко. Стоит привыкнуть к такому минимуму, и вскоре вы не сможете оторваться от обучения на протяжении нескольких часов.

4. Занимайтесь одним делом в один момент времени

Многие пытаются делать сто вещей за раз. Огромная ошибка! Занимайтесь одним делом в один момент времени. Не изучайте параллельно HTML, JavaScript, Swift и что-то ещё. Вы сведёте себя с ума!

Этот пункт может даться вам с трудом (говорю по опыту), потому что всегда хочется выучить всё сразу.

В своей книге «Начни с главного!» Гэри Келлер (Gary Keller) сказал: «Необыкновенные результаты напрямую определяются тем, насколько сильно вы можете сузить свой фокус». Это можно применить к чему угодно, включая изучение программирования. Не бойтесь опоздать — языки и технологии никуда не денутся. Начинайте с малого и двигайтесь вперёд.

5. Делите всё на небольшие порции

Как и в предыдущем совете, вам не нужно впихивать в себя сразу слишком большой объём информации, даже если она по одной теме. Изучать что-то новое намного легче, когда оно раздроблено на мелкие порции.

Сфокусируйтесь на одной теме и разделите её на удобоваримые кусочки. Удостоверьтесь, что вы полностью поняли и усвоили какую-то концепцию, перед тем как переходить к следующей.

Предприниматель Тим Феррисс (Tim Ferriss) придумал акроним ABC — Always Be Compressing. Идея заключается в том, что каждый блок информации нужно постараться сформулировать настолько кратко, насколько возможно. Потом обобщить это в абзац, создать диаграмму или изображение, использовать мнемоническую схему — что угодно, если это поможет вам быстро вспомнить нужное.

6. Меняйте способы

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

Впитывайте информацию любыми возможными способами. По словам Джуди Уиллис (Judy Willis), автора книги «Как научить ребёнка легко учиться», чем больше областей мозга хранит данные о предмете, тем активнее формируются взаимосвязи. Их избыточность даёт учащемуся дополнительные возможности доставать информацию из разных хранилищ мозга. Такие перекрёстные связи данных означают, что мы изучили что-то, а не просто запомнили.

7. Обучайте других

Необходимость объяснять кому-то концепцию или процесс даёт гарантию, что вы сами полноценно это усвоите. Делать это можно разными способами. Один из них — вести курс или семинары для подростков. Можно делать свои видео на YouTube с объяснениями каких-то концепций. Не нравится идея с видео? Можно обойтись и без него. Вы можете преподавать разными способами. Как вариант — писать. Например, с помощью своего блога я не только помогаю другим, но также обучаюсь гораздо эффективнее, чем если бы я училась одна.

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

На образовательных платформах, как правило, есть возможность помогать другим. Обычно это что-то вроде форума с вопросами учащихся. Загляните туда, и если там есть вопрос, ответ на который вам известен (или у вас есть хотя бы соображения по поводу), — пишите, не стесняйтесь. На хороших образовательных сайтах царит здоровая атмосфера, и вашу помощь оценят. И не стесняйтесь задавать вопросы сами! Дайте другим возможность объяснить вам что-нибудь.

8. Найдите единомышленника

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

9. Найдите наставника

Чаты и форумы образовательных платформ — неплохие места для поиска единомышленников и, возможно, наставников.

Онлайн-форумы — это, конечно, ценный источник информации, но ничто не может сравниться с персональной поддержкой, когда есть возможность получить ответ напрямую.

10. Внесите в процесс элементы игры

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

Устанавливайте цели и работайте над ними. Вознаграждайте себя, когда достигнете их.

Самостоятельное изучение программирования
Pawel Kadysz/Unsplash.com

11. Переделайте чей-нибудь код

Посмотрите, как кто-то другой реализовал решение, которое вы хотите разработать. Заглядывайте в open source проекты на GitHub. Сообщество программистов может оказаться очень дружелюбным местом, где чтение (или даже модификация) чьего-то кода — это абсолютно нормально. Просто просматривайте строку за строкой, размышляя, как каждая из них работает и сочетается с общей картиной.

Используйте чью-то работу для вдохновения и идей.

12. Практикуйтесь. Не зацикливайтесь только на обучении

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

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

13. Не бойтесь неудач

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

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

Вывод

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

Игра проиграна, только если вы сдались.