И это хорошо

Недавно, когда я занимался репетиторством, меня спросили: Разрешено ли вам просматривать материалы на работе? Разрешено? Это практически требование работы. Но когда они спросили меня об этом, я вспомнил, как раньше беспокоился, что мне тоже не разрешат гуглить. Когда я только начинал, я ошибочно думал, что настоящие разработчики слишком умны, чтобы тратить время на поиски переполнения стека. Что ж, я здесь, чтобы сказать вам, чтобы вы перестали беспокоиться, это не, как это работает.

Мы начинаем запоминать, потому что привыкли

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

Запоминать все неэффективно

Если вы посещали учебный лагерь, вы, вероятно, слышали что-то вроде «Изучайте концепции, а не синтаксис». Что сначала кажется глупым. Когда вы изучаете свой первый язык, вам обязательно необходимо изучить синтаксис. Что еще ты делаешь? Если вы изучаете JavaScript, ваш мыслительный процесс может быть таким: «Мне нужно написать for (let i=0; i < users.length; i++)». Но когда вы переходите на второй язык, он щелкает. Весь этот синтаксис JS сейчас неверен, поэтому вместо этого вы думаете: «Мне нужно перебрать этот массив пользователей. Я просто посмотрю, как Ruby выполняет циклы ". Вы начинаете уходить от синтаксиса к псевдокоду. Не заботясь так сильно о синтаксисе, вы можете больше сосредоточиться на общей логике программы.

Все изменяется

Еще одна важная причина, по которой кодеры так часто ищут информацию, заключается в том, что все меняется . Год назад я научился создавать компоненты React с классами и Redux. Сейчас вроде все перешли к функциональным компонентам с хуками и контексту. Те же цели, разные методы. Эта тенденция изменений усугубляется битом во внешнем интерфейсе с фреймворками JavaScript, но все языки либо развиваются, либо умирают. Вчерашний REST - это сегодняшний GraphQL.

Это было сделано раньше

Еще одна распространенная причина, по которой люди ищут что-то, заключается в том, что изобретать колесо не всегда того стоит. Если вам нужен конкретный фрагмент кода, например: создание списка букв из A…Z, AA…AZ, BA и т. Д. Что ж, вероятно, вы не первый. Проверьте, есть ли уже готовое решение, на котором вы можете развиваться. Но не копируйте бездумно. Убедитесь, что вы все поняли, прежде чем добавлять это, могут быть части, которые вам не нужны. Сначала поискать - отличный способ увидеть новые способы мышления и научиться задавать правильные вопросы.

Что нужно помнить и что хранить

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

Сохранение всех этих ссылок сэкономит ваше время в будущем. Таким образом, когда вы снова столкнетесь с той же проблемой flexbox или забудете, как Ruby обрабатывает массивы, вы сможете мгновенно найти все эти полезные ресурсы. Я черпал вдохновение из ссылочных типов. Ваша программа не знает, что это за объект в переменной, только его расположение в банках памяти. Вам не нужно запоминать все, вам просто нужно иметь возможность быстро получить к этому доступ в заметках.

Все ищут - профессионалы экономят

Как говорит Адам Сэвидж: «Единственная разница между бездельничанием и наукой - это записывать это». Я думаю, что это хорошо подходит для программирования. Если вы каталогизируете все ресурсы, которые найдете, то это не просто бездельничание над личным проектом. Я уже говорил об этом раньше, но у меня есть 20-страничный документ для устранения неполадок и ресурсов. Почти три страницы из них - это просто ссылки на различные блоги, документы и видео.

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

счастливого кодирования всех,

Майк