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

Часть 1 читайте здесь — https://ianflemingdeveloper.medium.com/how-to-survive-a-coding-bootcamp-part-1-motivation-d4ad3a3b3779.

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

Но! Вы получаете еще одну ошибку CORS. Аутентификация на стороне клиента не работает. Вы прочитали так много статей о цикле событий, что умудрились запутаться еще больше. И да, эта переменная все еще необъяснимым образом не определена, несмотря на то, что вы думаете, что понимаете область действия и замыкания.

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

  • Техника помидора

Метод тайм-менеджмента Pomodoro был изобретен итальянцем по имени Франческо Чириллио (который, по совпадению, начал свою карьеру в разработке программного обеспечения). Это включает в себя разделение вашего рабочего времени на определенные временные отрезки и перерывы между ними.

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

В идеале встаньте и потянитесь, подвигайтесь, сделайте чашку чая, что угодно. Просто постарайся не думать о том, что ты сделал! После отведенного перерыва переустановите таймер еще на 25 минут и снова работайте. Как только вы закончите 4 из этих кусков, вы сделаете более длительный перерыв. Вот и все.

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

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

К преимуществам этого метода относятся:

  • Выбирая конкретную задачу для работы в первую очередь, вы устраняете любую первоначальную прокрастинацию. Можно сразу приступать к работе.
  • Прямо за углом всегда есть небольшой перерыв, а это значит, что вы можете заняться любым из ваших обычных отвлекающих дел. Я часто обнаруживал, что, когда я посвящал ночь сплошному кодированию, у меня возникало искушение отвлечься чем-нибудь. Следующее, что я понял, это то, что я потратил 30 минут на поиск идеального эмбиент-сета на Youtube, на чтение статей о программировании на Medium или просто на просмотр футбольных новостей или чего-то подобного. 25-минутное обязательство сосредоточиться гораздо менее пугающе, чем целая ночь.
  • Назначая разные задачи для каждого отрезка времени (необязательно), это означало, что я всегда оставался свежим и менее разочарованным, а также избегал чувства удара головой о кирпичную стену, пытаясь что-то отладить.

Официально вы должны провести обзор каждого чанка Помидора и решить, нужно ли доработать его. Лично я этого не делал, я просто рвался вперед со своей, казалось бы, бесконечной рабочей нагрузкой. Я начал использовать веб-сайт для отслеживания своего времени (https://tomato-timer.com/), но затем переключился на мой верный Garmin Forerunner, когда выяснилось, что даже просмотр веб-сайта, не связанного с моей текущей задачей, ощущался как отвлечение.

  • Резиновый уклон

Звучит как странное сексуальное движение, но на самом деле это фантастический способ приблизиться к проблеме, экстернализируя ее и позволяя вашему мозгу сосредоточиться на проблеме в более простых терминах. Этот метод использовался для обучения сложным понятиям на различных курсах CS на протяжении многих лет. Название отсылает к истории из книги «Программист-прагматик», в которой инженер носил в кармане резиновую утку. Чтобы отладить свой код, он построчно объяснял его утке и при этом часто находил решение.

Методично проходя через это — вслух — мозг имеет привычку замечать пробелы в логике и предлагать ответ (или, если это не удается, путь вперед). Выкинуть проблему из головы бесценно: объяснив свой собственный код резиновой утке (или любому неодушевленному предмету), вы можете разбить его на простые термины и найти решение. Поскольку у меня не было под рукой резиновой утки, я использовал своего приятеля по программированию Честера.

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

  • Производительная сила отдыха

Игнорировать это очень легко. Когда вы в ударе и все идет по плану, вы продолжаете идти. Внезапно вы застрянете. Это совершенно естественно. Искушение сказать: «О, я просто закончу эту часть, а потом пойду спать» вполне реально. Или если вы отлаживаете, и вы просто не можете заставить что-то работать. Вы продолжаете, пробуете все мыслимые решения, и ничего не получается. У вас открыто 10 Stack Overflow и 10 вкладок YouTube, но ничего не работает.

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

К счастью, решение часто состоит в том, чтобы просто лечь спать. Когда наступает поздняя ночь и я знаю, что впереди у меня долгий день (работа/воспитание детей/учеба), я сопротивляюсь желанию не ложиться спать, бросая все на проблему, и просто иду спать.

«Спать на нем» действительно работает. Часто я просыпаюсь отдохнувшим и с новым взглядом на проблему. Открывая свой редактор, у меня было бы мини «а-ха!» момент и удивляюсь, почему мой усталый мозг не сложил 2 и 2 прошлой ночью. Сон — это когда наше подсознание обрабатывает события дня. Когда мы бодрствуем, смотрим на мириады различных решений и все больше и больше сбиваемся с толку, наш мозг находится в замешательстве. Он не знает, как оценить важность каждой крупицы информации, и вы ничего не добьетесь.

Когда мы спим, наш чудесный мозг просматривает события дня, видит, что осталось незавершенным, использует связанные эмоции в качестве «меток памяти», чтобы пометить событие как важное (вы расстроены своей неспособностью сообразить что-то? Ваш мозг пометил это для последующей обработки). Чтобы объяснить это дальше:

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

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



  • Производительная сила упражнений

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

Исследования показали, что аэробные упражнения улучшают когнитивные функции (https://www.newswise.com/articles/aerobic-exercise-improves-cognition-even-in-young-adults?sc=dwhr&xy=10020971). В частности, упражнения помогают улучшить исполнительные функции мозга, то есть когнитивные процессы, такие как рабочая память, когнитивная гибкость, контроль внимания и многое другое. Когда несколько основных исполнительных функций (таких как упомянутые) выполняются одновременно, у нас есть то, что известно как исполнительные функции более высокого порядка, такие как подвижный интеллект (например, рассуждение и решение проблем).

Это еще одна причина, почему мы должны быть активными. В дополнение к нашему физическому здоровью, это также помогает поддерживать наше психическое здоровье. Моя собственная привычка во время учебы заключалась в том, чтобы бегать по крайней мере три раза в неделю: два коротких пробега от 5 до 10 км и один более длинный пробег от 10 до 20 км в выходные (если позволяет семья).

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