ShadowOfCasper
@ShadowOfCasper
Middle User Interface Web Developer

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

Всех приветствую.
Сложилась у меня на новой работе непростая ситуация. Устроился в компанию на должность фронта - заманили обещаниями о новом проекте на angular 7 в недалёком будущем. Я прошёл собес, принял предложение. Пока старт нового проекта не дали, меня привязали к другому проекту. Названий приводить не буду дабы без огласки (соответствуя соглашению о неразглашении). Его фронт написан примерно на 70%. Когда я увидел что там творится, я был в ужасе.
1) Используется только jquery + bootstrap. Все модули слайдеров, галерей, поповеров написаны вручную.
2) Проект разделён на 2 репозитория. Первый - голая статика, второй - полноценный рабочий репозиторий с backend на java. У обоих устоявшиеся различия в скриптах, часть когда статики просто неактуальна.
3) SCSS применяется а-ля 2012. Модули разбиты на секции с медиазапросами, селекторы тупо копипастятся из секции в секцию вместо описания всей стилизации, включая медиазапросы в одном селекторе.
4) Вся разметка просто кишит bootstrap хелперами, порой в одном блоке может быть до 15ти классов-хелперов. Нечитаемая жесть.

Я уже закрыл глаза на секционные разделения селекторов по медиазапросам - сносно, хоть и неприятно.
Реализовал пару модулей на typeScript с применением зависимостей в первых же задачах. Swiper - для просмотра галереи страниц каталогов с возможностью зума страницы и popper.js (который и без установки лежит в bootstrap) для дебага их кривого самописного поповера.
При первом же code review автор этого шлака запретил мне наследовать bootstrap хелперы через scss директиву extend, попросил заместить swiper его самописным слайдером - хоть меня это и выбесило я стерпел, разобрался в его коде, дописал его, руками написал свой зум слайдов.
Когда он дизапрувнул изменения в поповере я уже просто не выдержал. Он попросил меня вернуть и применить его кривой код, вёрстка котогоро ехала по любому чиху. Я пошёл к руководителю проекта и высказал всё, что я думаю о фронте проекта, о недопустимости подобного подхода в проде, сказал что хочу уволиться - я действительно хотел уйти. Пришёл получить опыт с последним ангуляром, а получил по голове самописной статикой и кучей чужого кода.
Он убедил меня не делать поспешных решений и пообещал созвать собрание front-end разработчиков с других проектов, что даст мне шанс высказаться о всех косяках и граблях, на которые я наступил. Пообещал что меня выслушают и примут общее решение о необходимости изменений.

Я хочу поинтересоваться у сообщества, как бы поступили вы? Я до этого полтора года плотно сидел на vuejs - меня не по-детски радовал этот фрейм. Надеялся на опыт с ангуляром - для общего познания (всё равно я рассчитывал убедить ребят использовать vue уже после страницы доки ангуляра про dependency injection). И тут меня скатывают в такое днище. Я понимаю что в любой момент могу уйти, найти компанию, которая хочет с vue не меньше меня. Но перфекционист/ленин во мне не хочет так просто сдаваться, и надеется на поддержку ребят из других проектов этой компании.
  • Вопрос задан
  • 166 просмотров
Пригласить эксперта
Ответы на вопрос 1
Xuxicheta
@Xuxicheta
инженер
Не стоит качать права и остаивать свою точку зрения только придя в компанию и повздорив с порога с местным лидом. Для начала надо поделать тасков. Так, как тут принято. Разобраться во всем и потихоньку двигать лодку в правильном направлении, приобретя уже какой-то вес в компании.

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

Ну а доводы, превозносящие Vue над Angular, только выдают твою зеленость. Преимущество Vue только в простоте обучения, а Angular это уже серьезный фреймворк, построенный по классическим принципам.

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

Войдите, чтобы написать ответ

Похожие вопросы