[Перевод] У вас есть синдром ученика?

Ладно, не такая уж и большая проблема. Но я заметил, что появляется определённый тренд в поведении — особенно в мире технологий и разработки ПО. Не знаю, как его назвать, так что назовём его пока «синдромом ученика». Он описывает поведение, когда человек непрерывно стремится учиться и никогда не применяет приобретённые знания.

Наиболее распространённая область, где я такое наблюдал — веб-разработка. За последние годы я заметил кардинальное увеличение количества фреймворков. Иллюстрация внизу показывает, насколько их много.

8e2bf4688afcc4d38ce642e2822d342a.png
Источник: https://github.com/mraible/history-of-web-frameworks-timeline

За последние пять лет стало реально много фреймворков. Я ещё заметил, что веб-разработчики считают необходимым владеть несколькими фреймворками. Зачем?

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

• Go
• TypeScript
• NodeJS
• React
• Angular
• Spring
• … ×100

Список можно продолжать. Я создал много приложений типа «список дел», больше чем готов признать. Я уже стал экспертом по спискам дел. Может, запишу это в своём резюме.

Интервьюер: Вы создали какое-нибудь рабочее приложение?

Я: Не совсем, но в соём портфолио в изобилии представлены MVC веб-приложения типа «список дел», которые я сделал на изоморфном сервере React, используя NodeJS.


При наличии такого большого количества веб-технологий самая большая проблема в том, что от «хорошего» веб-разработчика ожидают знания большинства из них, включая бэкенд. Думаю, это нечестно. Несколько лет назад была чёткая граница между фронтенд- и бэкенд-разработчиками. Сегодня уже нет реальной границы. Мы называем это full-stack. Звучит так, словно один человек должен делать двойную работу и в реальности не специализируется ни в одной из областей.

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

679e30828858a9d8f1cf33ddd8a11ff0.png
Изоморфный Javascript

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

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

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

© Habrahabr.ru