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

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

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

Поразмыслив, вы понимаете, что такой принцип можно применить практически ко всему остальному, а не только к программированию.

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

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

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

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

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

Но в моем случае я хотел более или менее «спроектировать» его сам, чтобы я мог почувствовать, как это работает (и не только написать код, но и получить представление о цветах/позиционировании элементов/и т.д.). Это больше похоже на понимание всего процесса, а не только кода: как он должен выглядеть, какие инструменты вам нужны, где его развернуть и т. д.

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

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

Если ты дочитал до этого места, как и прежде, благодарю тебя, добрый человек.