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

Не стесняйтесь задавать вопросы или просить о помощи

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

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

Задавая вопросы, вы можете быстрее двигаться вперед в команде

Практика делает совершенство

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

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

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

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

Учитесь, делая и борясь

Коммуникация

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

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

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

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

Основы, основы и основы

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

Скажем, во фронтенд-разработке многие новички, кажется, погружаются в области React, Angular или Vue после нескольких месяцев изучения HTML / CSS и JS. Это не неправильный выбор, но вполне вероятно, что они могут столкнуться с некоторыми трудностями, в первую очередь, из-за нехватки основ JS. Я написал это как человек, переживший эти невзгоды.

Как новичок 3 года назад, мне не потребовалось много времени, чтобы попасть в ловушку JS Fatigue. В моем первом проекте меня засыпали все большим количеством новых концепций с точки зрения JS Framework и рабочих процессов. Кроме того, мне пришлось сразу перейти к обучающим фреймворкам, таким как Angular и React, потому что некоторые проекты требовали таких навыков. Отсутствие достаточно глубокого понимания Javascript, казалось, создавало огромные препятствия для моих повседневных задач.

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

Отсутствие достаточно твердого понимания основ может создать огромные препятствия для выполнения ваших повседневных задач.

Перерывы

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

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

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

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

Перерывы помогают избежать поломки

Изобретая колесо ради обучения

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

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

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

Изобретая колесо заново, вы узнаете, как обстоят дела за кулисами

Будьте скептичны

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

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

  • Насколько велико приложение?
  • Какие функции должны поддерживаться библиотеками с открытым исходным кодом?
  • Эти библиотеки еще обслуживаются?
  • Нужно ли изобретать велосипед? Если да, то сколько времени потребуется, если мы изобретем колесо для получения долгосрочной выгоды? и тому подобное.

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

Знайте как плюсы, так и минусы вашего выбора технологии

Письмо

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

Моей первой записью в блоге было Freecodecamp показывает местную погоду. Я написал об этом, чтобы конкретизировать свое понимание и мои знания, и я не ожидал, что кто-то прочитает мой пост. Но некоторым это помогло! Поэтому я решил написать о как я стал фронтенд-разработчиком на сайте codelikeagirl, чтобы поделиться своим путешествием.

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

Письмо поможет вам конкретизировать и сохранить свои знания

Спасибо за чтение.

Хотите поделиться своими уроками? Я бы хотел их узнать - оставьте комментарий!