То, что я узнал во время учебы.

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

Целый день - долгое время, чтобы оставаться сосредоточенным

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

Из-за этого я каждую неделю экспериментировал со структурой своего дня, пока не нашел то, что мне было удобно. Прежде всего, я попытался отследить, в какое время дня я чувствовал себя наиболее сосредоточенным, продуктивным и энергичным; Как оказалось, я лучше всего работаю утром и ближе к вечеру, поэтому я спланировал наиболее интенсивные задачи сразу после прибытия в свое рабочее пространство и за два часа до отъезда. Остальные промежутки времени, например сразу после обеда, были заполнены упражнениями и материалами, которые не были так тяжелыми для моего мозга, такими как короткие пояснительные видео или интерактивные упражнения.
Как и в обычный рабочий день, я использовал счетчик времени для всего, что я делал, чтобы отслеживать, среди прочего, как часто меня прерывали (или прерывали себя, отвлекаясь). Я сочетал это с техникой pomodoro (25 минут работы и 5-минутный перерыв), чтобы заставить себя учиться в промежутках времени, и с моим любимым приложением для блокировки социальных сетей, чтобы сосредоточиться.

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

Трудно придерживаться добровольной учебной программы

В начале своего учебного пути я наивно предполагал, что смогу заниматься несколькими концепциями в день, и составил нелепое предварительное расписание, в котором каждую неделю посвящал одному языку программирования.
Хотите верьте, хотите нет, но это просто не то, как это работает - сосредоточение внимания на Python одну неделю и JavaScript на следующей неделе может показаться забавным, но это может сбить с толку. Поначалу у меня было много проблем, потому что у меня было множество языковых ресурсов, и я хотел прочитать и использовать их все, поэтому я продолжал переключаться между ними. Через некоторое время я заметил, что это не особо помогло мне, поэтому я подошел к проблеме с другой стороны. Вместо того, чтобы думать языком программирования, я решил использовать независимый от языка подход: что я хотел изучать? Меня интересовал UX / UI, интерактивность в сети, визуализация данных? Хотел ли я узнать больше об алгоритмах и о том, как работает мой компьютер?
Эти вопросы дали мне представление о том, что мне было нужно больше всего.

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

Все учатся по-разному

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

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

Документируйте все

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

Там нет финишной линии

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

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

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

Я решил продолжить свое познавательное путешествие по тому, что я начал неофициально называть "вторниками кода". Я также собираю ресурсы для отслеживания того, что я узнал, чтобы другие могли иметь хорошую отправную точку, если это необходимо, и будут писать в Твиттере с использованием хэштега #codetuesdays.