Знакомство с миром веб-программирования
В свободное время от обучения я уделяю изучаю веб-программирование.
Это хобби у меня еще появилось на втором курсе обучения бакалавриата. Но из-за военных действий и потом подготовке к защите диплома, у меня не было возможности посвятить ему достаточное количество времени.
После поступления на магистратуру у меня наконец появилось возможность не сдерживать себя и полностью окунуться в мир web-разработки. Все началось повторения основ html, css, javascript, потому что с момента второго курса прошло много времени и очень многое поменялось. Затем научился делать такие вещи как аккардионы, слайдеры, табы, разные паралакс-эффекты и много чего другого.
После того как изучил вышеперечисленные основы, научился верстать сайты. Затем, моих знаний оказалось мало, и я выучил сss-фреймворк bootstrap. Когда изучил его, то моя работа по верстке макетов ускорилась в разы, но этого все-равно оказалось мало.
Я понимал, что если хочу двигаться дальше, то мне надо изучить или php, или python, или node.js. Изучив тенденции современного рынка труда, пришел к выводу, что php для меня будет идеальным вариантом.
Когда изучил основы php, мне пришлось сразу изучить и wordpress. После этого смог делать свои первые простые сайты. Так продолжалось три месяца.
В процессе работы начал замечать, что wordpress – хорошее решение только для стандартных задач, но как только задача выходила за пределы возможностей этой cms, то необходимо было придумывать свои решения, а это очень всегда очень хорошо, потому что по мере возрастания количества таких решений этот сайт будет все тяжелее и тяжелее поддерживать.
В итоге познакомился с фреймворками php. Чтобы их понять мне пришлось очень сильно подтянуть свои знания по php в разных областях, от простого понятия класса до принципов объектно-ориентировачного программирования, изучить паттерны программирования, понять, как они работают и где какой использовать. И только после этого мне удалось сделать свой первый проект на фреймворке yii2.
Также, по мере погружения в мир web-разработки, мне пришлось изучить дистрибутив linux Ubuntu, настраивать веб-сервера apache2, nginx, сервера баз данных mysql, redis, модули php и многое другое. Это всего-лишь верх айсберга, и чтобы все изучить, необходимо много времени и терпения.
На данный момент я работаю на операционной системе linux. В своей работе использую cms wordpress, фреймворки yii2, laravel. В будущем хочу изучить angular.
В работе встречается много интересных заданий. Например, создать функционал работы с картинками, который будет выполнять следующие функции: проверять подходит ли картинка по размерам или формату, автоматический обрежет ее, проверит область наложения водяного знака и в, зависимости от цветового фильтра, наложит светлый или темный водный знак.
Еще одна из задач: автоматический брать с youtube информацию о видео с нескольких каналов и сохранять в базу данных для дальнейшего использования. В результате выполнения этой задачи ближе познакомился с функционалом google.
Со стороны может показаться, что мой рабочий день проходит монотонно, сидишь за компьютером и набираешь какой-то текст. Но так только кажется. Работа программиста, это не только написание кода, а еще продумывание функционала приложения, решение тех или иных вопросов, постоянное умственное и эмоциональное напряжение. Если не следить за своим состоянием, то можно очень быстро выгореть, состояние, когда просто ничего не хочется, это в лучшем случае. В худшем случае, получить нервный срыв и долго после этого приходить в себя.
Для того, чтобы этого со мной не произошло на работе я делаю часто делаю небольшие перерывы, в которых играю с коллегами в настольный теннис или читаю какую-то книгу. Также помогает питье чая, как бы странно это не звучало, без него свою работу не представляю.
Еще в процессе написания кода люблю слушать на заднем фоне музыку. Сосредоточится не помогает, но не отвлекаюсь на вешние звуки, плюс сама работа протекает приятнее и быстрее.
Поддерживать себя в рабочем тонусе и в здоровом психологическом состоянии мне помогает чтение, прослушивание музыки и занятия спортом.
В итоге пришел к выводу, что мне нравится это работа со всем ее плюсами и минусами. Она дает мотивацию к саморазвитию, стремление к идеалу, познание чего-то нового.
Сейчас у меня две цели: закончить магистратуру и стать высококвалифицированным мастером своего дела.