20 вещей, которые мне хотелось бы знать, прежде чем стать веб-разработчиком
В самом начале своей карьеры я не знал многих важных вещей, которые для начинающего разработчика являются крайне полезными. Оглянувшись назад, я могу сказать, что многие мои ожидания не оправдались, они и близко не соответствовали реальности. В этой статье я расскажу о 20 вещах, которые стоит знать еще на старте карьеры веб-разработчика. Статья поможет вам сформировать правильные ожидания.
Вам не нужен диплом
Да, для того чтобы стать разработчиком, вам не нужен диплом. Большинство информации можно найти в интернете, особенно основы. Вы можете научиться программировать самостоятельно, с помощью интернета.
Гугление — это реальный скилл
Поскольку вы только начинаете, вам еще не хватает знаний, нужных для решения некоторых задач. С этим все ок, вы справитесь с помощью поисковых систем. Знать, что и как искать, — важный навык, который сэкономит вам кучу времени.
Рекомендуем бесплатный интенсив по программированию для начинающих: Разработка приложений: Android vs iOS — 22–24 августа. Интенсив позволяет на три дня погрузиться в разработку приложений для самых популярных мобильных ОС. Задача — создать голосового помощника на Android и разработать «Список дел» для iOS. Плюс знакомство с возможностями кроссплатформенных приложений.
Вы не можете выучить всё
Вам придется изучить очень многое. Только посмотрите, сколько существует популярных фреймворков для JavaScript: React, Vue и Angular. Вы не сможете изучить досконально их все. Но это и не требуется. Вам нужно сфокусировать внимание на том фреймворке, который вам больше нравится, либо же том, с которым работает ваша компания.
Писать простой код очень сложно
Многие относительно неопытные разработчики пишут весьма сложный код. Это такой способ повыделываться, показать, как хорошо они программируют. Не делайте так. Пишите максимально простой код.
У вас не будет времени для тщательного тестирования
По собственному опыту я знаю, что разработчики — те еще лентяи, когда дело касается проверки своей работы. Большая часть программистов согласятся, что тестирование — не самая интересная часть их работы. Но если вы планируете делать серьезные проекты, не забивайте на это.
А еще у нас есть дедлайны — почти всё время. Поэтому тестированию часто уделяется меньше времени, чем требуется, — просто чтобы успеть сдать работу в срок. Все понимают, что это вредит конечному результату, но выхода нет.
Вы всегда будете ошибаться в оценке времени
Неважно, каким способом вы это делаете. Проблема в том, что теория никогда не совпадает с практикой. Вы рассуждаете примерно так: вот эту небольшую штуку я сделаю за час. Но потом оказывается, что вам нужно реструктурировать большую часть кода, чтобы заработала эта небольшая функция. В итоге изначальная оценка оказывается в корне неверной.
Вам будет стыдно смотреть на свой старый код
Когда вы только начинаете программировать, вам просто хочется что-то делать. Если код работает — это уже радость. Неопытному программисту кажется, что работающий код и качественный код — это одно и то же. Но когда вы уже станете опытным разработчиком и заглянете в тот код, который писали в самом начале, вы изумитесь: “Неужели это я написал всю эту мешанину?!”. Собственно, всё, что можно сделать в этой ситуации, — посмеяться и почистить тот хаос, что вы сотворили.
Вы будете тратить кучу времени на вылавливание багов
Отладка — часть вашей работы. Написать код без багов совершенно невозможно, особенно если у вас мало опыта. Проблема начинающего разработчика в том, что он просто не знает, куда смотреть при отладке. Иногда непонятно даже, что нужно искать. И хуже всего то, что эти баги вы создаете себе сами.
Internet Explorer — худший браузер из когда-либо созданных
Internet Explorer, который также называют Internet Exploder, заставит вас пожалеть о только что написанном CSS. В IE глючат даже базовые вещи. На каком-то этапе вы начнете спрашивать себя, почему существует так много браузеров. Многие компании решают проблему, поддерживая лишь IE 11 и более новые версии, — это реально помогает.
Работа прекращается, когда сервера падают
Однажды это обязательно случится: один из ваших серверов упадет. Если вы не работали на локальной машине, вы ничего не сможете сделать. И никто не сможет. Ну что же, это время для перерыва на кофе.
Вы будете притворяться, что понимаете всё, о чем говорят коллеги
Хотя бы раз (скорее всего, больше) вы побеседуете с коллегой-разработчиком, который будет увлеченно рассказывать о новой технике или инструменте. Закончится разговор тем, что вы согласитесь со всеми утверждениями собеседника. Но правда в том, что большую часть его речи вы просто не поняли.
Вам не нужно запоминать всё на свете
Программирование — это применение знаний на практике. Нет смысла запоминать всё — вы сможете найти недостающую информацию в интернете. Главное — знать, где искать. Запоминание придет позже, во время работы над проектами, вместе с опытом.
Вам нужно научиться эффективно решать проблемы
И делать это креативно. Программирование — это постоянное решение проблем, причем одну и ту можно решить несколькими способами. Креативность помогает сделать это быстро и эффективно.
Вы будете много читать
Чтение будет занимать у вас много времени. Придется читать о методах, лучших практиках, инструментарии и многих других отраслевых новинках. Не забывайте о книгах. Чтение — отличный способ получить знания и не отстать от жизни.
Адаптивность может стать головной болью
Адаптировать сайт под все устройства очень сложно. Существует огромное множество устройств и браузеров, поэтому всегда найдется комбинация «устройство+браузер», в которой сайт будет смотреться плохо.
Опыт отладки экономит время
Как уже говорилось выше, отладка может быть очень времязатратным занятием, особенно если не знать, куда смотреть и что искать. Знание принципа работы собственного кода помогает выполнять отладку быстро. Свой скилл в отладке можно прокачать, разобравшись в том, как работают инструменты отладки в разных браузерах.
Вы будете искать готовые решения, но у вас они не сработают
Если вы не сможете найти решения сами, стоит погуглить. В большинстве случаев на форумах типа StackOverflow вы найдете работающие решения. Но в большинстве случаев их нельзя просто скопипастить — так они не будут работать. Здесь как раз пригодятся навыки решения проблем и креативность.
Хороший IDE сделает жизнь проще
Прежде чем начать кодить, стоит потратить немного времени и найти подходящий IDE. Хороших много, как платных, так и бесплатных. Но вам нужен тот, что подходит идеально. В IDE обязательно должна быть подсветка синтаксиса, а также подсветка ошибок. В большинстве IDE есть плагины, которые помогают кастомизировать ваш IDE.
Терминал сделает работу более эффективной
Если вы привыкли работать в графическом интерфейсе, попробуйте командную строку. Это мощный инструмент, который позволяет решить многие проблемы быстрее, чем графические инструменты. Вы должны чувствовать себя уверенно, работая с командной строкой.
Не изобретайте колесо
Когда вы разрабатываете какую-то стандартную возможность, прежде всего стоит поискать решение на GitHub. Если задача типовая, то, скорее всего, ее уже решили. Возможно, уже есть стабильная и популярная библиотека с готовым решением. Посмотрите активные проекты с документацией. Если вы захотите добавить в чужое «колесо» новые функции или просто переписать его, можно просто форкнуть проект или создать merge request.