Найти в Дзене

Почему учить программирование так выматывает (и это нормально)

Если вы чувствуете себя измотанным уже после часа изучения программирования — вы не тупой и тем более не слабый. Просто ваш мозг делает невероятно много работы одновременно. Представьте: вы приехали в незнакомую страну, где нужно одновременно учить местный язык, разбираться в устройстве метро, решать математические задачки на этом новом языке. И ещё эта страна в параллельной реальности, где физические законы работают немного иначе, и их вам тоже нужно усваивать и учитывать. Примерно это и происходит, когда вы изучаете программирование. Вы смотрите на других людей и видите, что у них всё хорошо. Нет таких проблем, как у вас. Почему так? Селективная память: Люди, которые уже умеют программировать, искренне забыли, как тяжело было в начале. Мозг часто стирает воспоминания о мучениях, когда навык становится автоматическим. Они правда не помнят, сколько часов тупили над элементарными вещами. Скрытая история: Кто тот парень, который легко решает задачи? Например, он Скорее всего, что-то из с
Оглавление

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

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

Что вы делаете одновременно:

  • Учите новый язык — причём не один: язык программирования, английский, профессиональная терминология
  • Перестраиваете мышление — учитесь думать алгоритмами и абстракциями (на вполне себе вузовском уровне)
  • Решаете головоломки — каждая задача это мини-детектив: что пошло не так, почему не работает
  • Пытаетесь понять логику компьютера — он думает совсем не так, как люди, и да, это помимо пункта выше о перестраивании мышления — перестраивание мышления ещё и в этом направлении
  • Разбираетесь со скрытыми сложностями — что такое переменная? Почему = это не «равно»? Как данные живут в памяти? Для опытных это очевидно, для вас — новые неожиданные концепции
  • Переключаетесь между уровнями восприятия — то пишете конкретный код, то думаете об архитектуре всей программы, то возитесь с отдельной строчкой
  • Справляетесь с эмоциями — постоянные ошибки плюс вредные мифы могут очень расстраивать и бить по самооценке

Почему у других не так?

Вы смотрите на других людей и видите, что у них всё хорошо. Нет таких проблем, как у вас. Почему так?

Селективная память: Люди, которые уже умеют программировать, искренне забыли, как тяжело было в начале. Мозг часто стирает воспоминания о мучениях, когда навык становится автоматическим. Они правда не помнят, сколько часов тупили над элементарными вещами.

Скрытая история: Кто тот парень, который легко решает задачи? Например, он

  • уже изучал другой язык программирования (второй всегда легче)
  • имеет математическое образование
  • потратил 500 часов, пока вы не видели
  • просто не говорит о своих трудностях (особенно мужчины)

Скорее всего, что-то из списка объясняет эту лёгкость.

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

Социальные маски: В интернете, на курсах, в комьюнити люди показывают победы, а провалы прячут. Обычно люди не постят: «Сегодня 4 часа не мог понять, почему цикл на Python не работает (забыл поставить двоеточие)». Сейчас это, конечно, немного меняется, но оно так.

Разные точки входа: Кто-то начинал в 12 лет или ещё раньше ради игр — у них было время на ошибки без давления. Вы начинаете во взрослом возрасте с ожиданиями «быстро освоить для работы» — совсем другой психологический груз.

Суровая правда и хорошие новости:

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

Те, у кого «всё хорошо», просто прошли через те же проблемы раньше. И да, некоторым действительно легче из-за предыдущего опыта или склада ума — но это не делает вас хуже, просто у вас другой маршрут. Может, по итогу вы перегоните всех, кто впечатлял

Но со временем часть действий станет автоматической, как при вождении машины. Сначала вы думаете о каждом движении, а через год уже едете «на автопилоте».

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

Что с этим делать:

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

  1. Перерывы почаще. Каждые 5-10 минут перерыв на 20 секунд, 20 секунд просто вообще не делать ничего. Каждые 15-30 минут — перерывы подольше. ДО того, как устанете, отдыхать требуется меньше.
  2. Дробите материал. Одна тема/один навык за раз, не больше! Ещё можно посвящать одной теме 2, 3, и даже 10 занятий подряд — сколько нужно.
  3. Снизьте ожидания. Ставьте себе простые и достижимые цели на месяц. Поставили цель и не достигли даже половины? Тогда уменьшайте цели в 4 раза.
  4. Пишите руками на бумаге. Не смотрите всё время в экран — рисуйте схемы, чертите таблицы на темы, которые проходите.
  5. Проговаривайте/читайте вслух. Что написано, что делаете, что собираетесь сделать
  6. Посвящайте больше времени элементарному. Изучили тему, она для вас простая? Не идите сразу дальше, напишите 20 мини-проектов на эту тему или решите 20 минизадач. Да, скучно, зато эффективно!
  7. Смиритесь с ошибками физически. Создайте журнал ошибок и заносите туда все ошибки и проблемы, регулярно перечитывайте. Повторяется одна и та же ошибка? Автоматизируйте проверку на неё.
  8. Найдите свой ритм. Вам лучше подходит заниматься по три часа три раза в неделю? Или четыре по по два с половиной? Или вообще полчаса каждый день? Проверьте, используйте самый эффективный вариант.

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

Заключение:

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

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

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