Рубрики
Реалии

Дичайший зоопарк технологий

Попросили разместить

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

Приведу лишь слегка утрированный пример. Компания на 500+ человек. В конце 90х все делопроизводство ведется в экселевских таблицах + написаны на визуалбэйсике макросы которые данные из таблиц сливают в какие-то отчеты и т.п.

В нулевые годы компания покупает корпоративную АИС на жаве — с фронтендом на апплетах и БД Марина ДБ. И делают сайт компании на пхп. Но юзеры привыкли к экселю — поэтому программисты допиливают скрипты на бейсике которые позволяют выгружать данные в/из экселя в Марину ДБ.

Через несколько лет на сайте появляется раздел новости — на вордпрессе. Аплеты отказываются нормально работать в современном браузере — огромными усилиями удается подправить то что есть — но добавлять новую логику программисты не хотят — и пишут новый функционал на жиквери. Но тут компания сливается с другой — у которой АИС на шарпе. Их АИС решено оставить и поддерживать как есть — а интеграцию настроить через апач кэмел и раббит мку. И тут на сайте надо делать личный кабинет — который делает сторонняя фирма-подрядчик на ангуляре. И интегрирует его с АИС через спринг интегнрейшен вмонтировав в монолит спринг + добавив кафку.

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

В итоге я сейчас, придя весной на работу и проведя аудит, насчитал “в активе” (поддержке) используемые технологии — во фронте — аплеты, чистый жс, жиквери, бэкбон, оба ангуляра и реакт. Сайт на пхп. БД — Марина, Миска, ДБ2. Бэк — жава 4, 7, 8, 11. Спринг 2,3,5. При этом избавиться от старья виде виде “макросов” на бэйсике или апплетов не удается — банально не доходят руки, к тому же “работает — не трогай”.

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

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

А новые технологии сыпятся и сыпятся.

Автор: Шурик

52 ответа к “Дичайший зоопарк технологий”

Этот пост — всем свидетелям секты «непрерывно меняющихся технологий» на заметку.
У меня сложилось впечатление, что все жалующиеся на «непрерывно меняющиеся технологии» работают в каких-то мелких проектах или стартапах с кодовой базой трудоёмкостью несколько человеко-месяцев.
Это там можно каждый квартал всё выкидывать и переписывать на новых технологиях.
В энтерпрайз-монструозинах на несколько десятков человеко-лет после выхода нового фреймворка никто ничего переписывать не кинется.
В лучшем (худшем?) случае — сделают на новой технологии какой-то отдельный кусок, но полного перехода не будет, даже если разработчики настаивают.
Бизнес не оплатит ещё несколько десятков человеко-лет работы не за какие-то новые фичи, а просто за перенос старых, уже и так работающих фич на какую-то новую технологию, разница от перехода на которую будет заметна только разработчикам, никакого нового business value не появится.
Лично видел проект с админкой на сильверлайте и серверной частью на WCF и плюсах в 2020-м году. Причём это была не поддержка легаси, а новая поставка (да продажники продали проект, сделанный на «новейших технологиях» нулевых, в 2020-м).
На том же проекте сидел разраб-динозавр, шарящий в этих старинных вещах, и получал он более 200к на тогдашние деньги. И за него ещё была конкуренция внутри компании.
Прекрасно себя чувствовал «не развиваясь» уже лет 10.
Могу вспомнить ещё один работающий до сих пор проект с самописной CMS на ASP.NET WebForms, с админкой на делфях.
И ещё один работающий до сих пор проект на CMS Kentico (2006 года выхода).
Всё это крупные коммерческие конторы, которые не хотят уходить от древних технологий именно по вышеописанным причинам (огромная кодовая база большая трудоёмкость перехода).
Там же сидит куча знатоков этих древних технологий, никакие новые фреймворки каждый день они не учат.
Зачем это надо, если конкретно у них на проекте новые технологии появляются, дай бог, раз в пятилетку?

6
0

Если инструмент позволяет делать хороший продукт, зачем его менять?

3
0

Всё это до поры до времени пока под тобой не зашатался стул. И тут вдруг выясняется что рынку твои ASP.NET нахер не нужны, а там где вот так тащят легаси, там своих дедов хватает.

4
0

И часто под тобой шатается стул?
Ты там каждые полгода новую работу ищешь чтоли?
Тогда да, придётся каждый день учить какие там вопросы нынче в моде на собесах.
Если же ты работаешь на проекте, где лаг внедрения новых технологий — пятилетка минимум, и никто не собирается тебя уволить в ближайшей перспективе, то необходимости прям вот ежедневно заучивать от корки до корки все свежие технологии нет никакой.
Достаточно подписаться на какие-нибудь новости по твоей специализации и просматривать по диагонали время от времени.
Ну а если ты вот прям заснуть не можешь, осознавая, что где-то там новый фреймворк вышел, а ты до сих пор его на уровне уверенного синьора не знаешь, то, извини, тут айти не виновато.
Лечите тревожность, как говориться.

2
0

И часто под тобой шатается стул?

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

3
0

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

0
0

Автора можно понять, он просто «выговорился»
Но от новых технологий никуда не уйти, а вместе с ними от новых языков. Что-то может будет унифицироваться, но не всё и не всегда.

0
2

Да новые технологии появляться должны, но вот программистов понять можно.
Они упорно учили спринг, на собеседованиях с закрытыми глазами рассказывали про разницу между динамическим прокси CGLIB… и вот они приходят и видят монолитного копромонстра 2004 года выпуска на 6й жаве (передернуть который на современную не получается так как в его основе древнейщие фреймворки, плюс он работает только на ОС Solaris на которую современная жава не влезает… ), с апплетами, жисипи страничками и каким-то допотопным хибером. И они мне говорят что освоить-то это можно (хоть и противно) но вот если пойдут на собеседование и расскажут с чем работали — их же засмеют — мол динозавры, где тут жава 17, спринг 5, кафка и клауд. Поэтому давайте встраивать новое… К тому же — это на самом деле так — писать на новом легче и проще (при одном маленьком нюансе — новое пишется с нуля а не впихивается в старое дерьмо). И руководство тоже удивляется — «неужели так сложно вставить такую-то фичу…» — сложно, да. На реакте — это 5 минут. А на апплетах — пойди разберись как это сделать да чтоб и в хроме и в лисе нормально отобразилось. А на новое переписывать — в принципе руководство на словах даже за («у нас все должно быть новое») а с другой — не дай Б-г мы при рефакторнге что сломаем — сразу всех собак спустят. Ну и текущих задач столько что не до рефакторинга. И технический долг растет прям как на дрожжах. Сейчас вот не столько код. сколько накладываю бизнес-процесы на действующие информационнные системы и смотрю как зоопарк хотябы немного расчистить.

0
0

любимой здесь темой инфляции знаний

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

4
0

Милейший, так приятно видеть успешных людей на ебаном, да и просто тех кто в гармонии с этим немножко, скажем, ебанутым миром, но встает вопрос что Вы, да-да, именно, Вы забыли на этом проекте?
P.S. Напишите пару статеек на счет вашего дзена на ебаное.

1
0

да и просто тех кто в гармонии с этим немножко, скажем, ебанутым миром

Жизнь — беспросветное, бессмысленное говно, но я научился в нем жить, да.

но встает вопрос что Вы, да-да, именно, Вы забыли на этом проекте?

Я учился в универе на специальности, связанной с информационными технологиями, и работал программистом — правда, не столь долгое время, как многие обитатели данного ресурса. Специальность давно перестала мне нравиться, но я все время думал, что надо продолжать педалить, т.к. был очень зависим от чужого мнения. На ебаное айти я пришел через гугления, и этот сайт открыл мне глаза на многое — в частности, на таких вот нарциссичных программистов, как Шурик, считающих тупыми всех вокруг и возвышающимися за их счет, чтобы компенсировать собственную ущербность. Таких в этой сфере много, и они ее очень сильно отравляют, делая говном, непригодным для адекватных людей. Есть, правда, в этом сайте проблема — уйти из айти его основные посетители хотят, а расставаться с деньгами — нет. В таком случае, задам вопрос: что вы вообще на них покупаете? Вы правда не можете прожить без доставки пиццы или суши? Это же вредно для здоровья. Или вам так важно доказывать всем остальным, что вы богаты и добились больше, чем все остальные? В таком случае, странно, что в вашем возрасте вы еще не поняли, что всем вокруг насрать на вас и ваш успех. Мужчина должен идти своим путем и делать то, что считает нужным делать, но это тяжело донести людям, которых родители и учителя на протяжении 20 лет держали в ежовых рукавицах.

P.S. Напишите пару статеек на счет вашего дзена на ебаное.

Подумываю об этом.

4
0

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

0
0

Я, как автор проекта, уже исписался,

А у меня вот наоборот начало подгорать на нынешней работе, так что обещаю писать время от времени )

1
0

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

3
1

Применяя системный подход, я клею девочек в клубах и таскаю их в постель.

И что? Это какое-то мерило/критерий успеха?)

0
0

Старый софт он был, есть и будет. Все устаревает, особенно в ит. Делай быстро и удобно на фреймворке. Это отлично на короткой дистанции. Всех устраивает Но на долгую, начинаются проблемы. Зоопарк технологий тоже удобно и быстро, но потом будут проблемы. И потом ищут программистов для поддержки зоопарка (зачем оно кому надо, особенно старое не релевантное при след. поиске работы?).

В данной проблеме, своевременно, не переписали старую систему на более новую из-за страха (работает не трогай (наоборот можно легко проверить верность тестов) (единственный способ улучшить систему/программу/скрипт/… — переписать её)). В итоге все невероятно устарело.

Сгладить подобные проблемы можно если:
— не использовать фреймворки (и orm тоже, только библиотеки libs)
— делать более проще систему/архитектуру и не допускать зоопарка и только осознанно внедрять зависимости. (принципа проектирования KISS)
— писать понятный, читаем код (форматирование, название переменных, функций, комментарии).
— не использовать синтаксический сахар ЯП.
— не переносить бизнес логику в БД (хранимые процедуру, enum и т.д.)

> Нот что делать если это большой проект?
> Тут важно очень важно, правильно формировать структуру проекта и кода. Большая система — это всегда модульная система и важно все правильно организовать.

Есть и недостатки:
— долгая разработка (особенно для frontend, если делать на чистом js)

Выделять время на update.

Обычно работодателю все равно как и на чем пишут, а программист работает не долго (переходят с места на место), из-за этого всем всё равно что там и как (еби****ь оно все конем, особенно есть работодатель неадекватный). И вообще надо продать себя по дороже, а для этого надо вставить в проект побольше всего, чтобы резюме было более «крутое».

1
0

Тут важно очень важно, правильно формировать структуру проекта и кода. Большая система — это всегда модульная система и важно все правильно организовать.

Это в теории. На практике — менеджеры мечтают только о том как отчитаться что они внедрили все фичи с опережением графика (а на растущий технический долг вообще плевать), внешние подрядчики — впихнуть свои готовые решения — плевать что они на другом стеке, не подходят, их поддерживать потом будет нереально — лишь бы сдать проект, получить бабло и свалить в закат. Программисты — нацелены на карьеру и через год работы джунами — убегают работать сеньорами в криптовалютные стартапы — пилить монолиты (ну по крайней мере до недавего времени убегали, сейчас все же рынок устоканился). А аналитиков, не говоря уже про «продакт оунеров» в российских компаниях отрадясь небыло — ишь чего, есть вон три деда и три стажора — они нам все ща по быстрому и допилят.

0
0

В своих мемуарах я рассказывал о случае когда манагеры пытались внедрить реляционку туда где она нахер не нужна, я разосрался и уволился на яйцах. Учитесь молодые.

0
0

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

3
0

через какое-то время поумнеют и возьмут на 1,5 мрот начинающего сисадмина. При парке АРМ 12 штук, это будут норм условия для стажёра какого-нибудь.

0
0

Челябинские сисадмины настолько суровы?.. 🙂
Впрочем, я почему-то не удивлен.

0
0

Сейчас сижу на совещании. Тут дивная дискуссия по поводу импортозамещения. Хотят создать свой супер-пупер-крутой, Всероссийский репозитоий и пытаются друг друга убедить, что «LibreOffice» «лучше» и «актуальнее», чем «Microsoft Office». Также чуть ди не целуют новые ПК «Бобёр». Вот где шиза.

0
0

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

Привыкли все на основе open source, создавать «своё», создавая свою торговую марку, используя бесплатный труд.

0
0

Почему шиза? Бабки осваивают.

Да, сейчас импортозамещение софта = дичайшее освоение денег, наблюдаю сам и охреневаю от масштабов. И ладно бы они пиздили 50% но хоть делали хорошо — нет, пиздят и как будто специально не делают НИЧЕГО.

0
0

Ну правильно. Если СДЕЛАЕШЬ, то вопрос будет закрыт. Поэтому надо бесконечно ДЕЛАТЬ.

1
0

Если СДЕЛАЕШЬ, то вопрос будет закрыт.

Да я вот охреневаю — подрядчику «заказывают» провести аудит систем — а потом меня и моих парней «просят» помочь за премию. Мы с парнями сидим два выходных, втыкаем в зоопарк, составляем аналитику — и получаем премию по 50 -100к а подрядчик оборачивает записку в свой титульный лист (даже не поправив орфографию) и получает за нее… тадам, 5 лямов.
«На тебе пятак на водку и катесь отседа вон…»

0
0

BASIC рулит. JavaScript даунский язык для даунов. Изначально надо было думать во что всё вылезет. И надо было оставаться на виндовых технологиях (например сайтик делать на ASP) чтобы всё хотя бы легче взаимодйствовало друг с другом.

0
4

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

0
0

Народ, знающие, разбирающиеся, напишите про DevOps? Ведь это такой же зоопарк технологий. Это снежный ком, который задавит задротов, или это новая ветвь эволюции в разработке и эксплуатации? По-моему, это тот же эникей, многорукий шива, только на более высоком уровне. Разве не так?

0
0

это тот же эникей, многорукий шива, только на более высоком уровне. Разве не так?

Да, всё верно.

0
0
Что думаете по этому вопросу, господа айтишники?пишет:

СМИ: пользователи РФ смогут протестировать закрытую сеть из безопасных и проверенных сервисов — Рунет 2.0

https://habr.com/ru/news/741820/

0
0

Если эта сеть будет сосуществовать отдельно от свободного интернета и попадание в нее добровольно это хорошо. Если нет то плохо.

0
0

Начала перехода на рунет 2.0. Полный контроль и весь интернет в руках гос-ва.

1
0

Да всё практически можно написать на PHP, для WEB
От слова совсем.
Я повидал кучу крутых и высоко-нагруженных проектов на чистом HTML, JS, PHP, MySQL. И бл@ть без всяких крутых технологий!

Тут пришёл молодой специалист, и сразу заявил: Буду писать на NodeJS. — Зачем?
Ответ новичка:
— Ну мне так привычнее, да и быстрее получиться в реализации!

Ещё один пришёл новичок и говорит: Я буду писать на Python
— Зачем?
Ответ новичка:
— Ну он гибкий, модный, быстрее!
Конечно он чуть быстрее согласен, но НАХРЕНА! Выигрыш в 10 мс.

Потом ещё один пришёл, и тоже хотел какой-то (Кубер-Пупер) привнести.

Всем было отказано в пожелании Расширить проект до (ЗООПАРКА).И главное принесут что-то своё (Накалякаются) и сваливают через 2-3 года, супер!

7
0

И главное принесут что-то своё (Накалякаются) и сваливают через 2-3 года, супер!

Да, это проблема. Но, например, насколько быстрее и удобнее писать сервисы на спрингбуте чем на «просто жаве с сервлетами и томкатом». Просто раз в пять. И код короче. Или волей-неволей начнешь свой спринг изобретать. А как современные системы без ORM — это ж мука. Так что замыкаться в техгнологиях точно нельзя. Я уж не говорю про то что молодые просто не захотят идти на старый стек — после него их больше никуда не возьмут.

0
0

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

Вот надо как-то коллективно в масштабах индустрии решать проблему «никуда не возьмут», тогда может наконец начнём выбирать инструменты под задачу, а не под резюме.

1
0

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

1
0

Год назад делал выбор, на чем писать бэкэнд на php или на nodejs (без фрейворков конечно). Система — erp/crm система. В итоге был выбран nodejs. Основным критерием была — друга, модель работы сервера. Когда сервер работает все время и можно хранить в памяти кэш данных в любом виде. В php после выполнения запроса процесс заканчивается. До этого, для бекенда, всегда исправал php (без фрейворков в основном), и все работает отлично. Php без фрейворков + mysql, может годами вытянуть сложные проекты со средними нагрузками на самом дешевом тарифе (kvm, один процессор, ihc). Если проект ssr, и много шаблонов, то php предпочтительнее.

3
0

На PHP всё то-же самое можно сделать, абсолютно, и без канители.
Так-же хранить всё в кэше, и в любом виде. А ещё можно настроить Cron для вызовов внутри сервера.
Представьте что на PHP можно писать события, которые будут прослушивать всё то, что вы хотите. И это событие не будет умирать.

Я не против nodeJS прикольная тема, там можно крутой парсер сделал с помощью модуля (Кукловода) там браузер загружается и тп..

с NodeJS, если брать за основу сервера не самая хорошая затея )) честно. Есть множество подводных камней, о которых узнаёшь только потом.

3
0

На nodejs более удобно работать в процессе с режиме много поточности (async/await mutex) (не надо плодить зоопарк). ES9 на сервере ES9 на фронте, что сильно облегчает поддержку системы.

NodeJS websocket — необходимая часто связка. Работа с переменными в памяти и удобный к ним доступ (без доп зоопарка) дает много возможностей. Можно сделать лендинг который будет отдавать система за соты доли, что для поисковиков и пользователей «приятно».

0
0

На PHP конечно можно осуществить мульти-процессорность, но только в другом виде, хотя да на NodeJS многопоточность сделать гораздо легче с помощью модуля))).

Пожалуйста (PSR Стандарты) для PHP + Паттерны(организации кода).

WebSocket — Да, пожалуйста(php_sockets.dll), есть кучу готовых решений на все случаи жизни.

Работа с памятью)) да, пожалуйста (Hash-map), в инете всё есть.

Можно сделать лендинг который будет отдавать система за соты доли

Думаете PHP не сможет работать так-же быстро ? Уверяю, будет, если всё настроить.
————
Ну хорошо, nodeJS относительно молодая платформа, и я бы сказал продвинутая, даже удобная!
Но если в каком нибудь модуле на nodeJS происходит сбой: -А их там не мало, тогда одни мучения. Или когда в модуле не хватает функционала )))) Это наверное тоже знакомо, а самому залазить допиливать: (Так не делают).

2
0

Dll? Сервера обычно на Linux, да и я с 2009 года, только в линукс работаю. Поэтому это не вариант.

Hash-map? Когда я пишу «удобная работа с памятью», имею ввиду что можно запросто хранить в памяти что угодно и быстро достать откуда без доп зоопарка, ибо сервер все время работает в главном процессе.

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

2
0

В любом случаи, хорошо что выбрали nodeJS, я на нём сделал пару микро-сервисов, и да там очень всё удобно и быстро разворачивается.

PHP это как мамонт, который не вымер ))). На нём можно сделать всё, но некоторые вещи реально быстрее и легче на nodeJS

2
1

Если делать без фрейворков, то мало потребляет. И оперативка щас не проблема. Легко 1гб дают. Немного используется, остаётся легко для тенинга бд.

0
0

Добавить комментарий

ВНИМАНИЕ! Любые темы про политику или всё то, что НЕ относится к теме сайта (IT), будут УДАЛЯТЬСЯ. Мы стараемся сделать комментарии ценным информационным материалом, засорять сайт обсуждениями, никак не относящимися к теме сайта не нужно! Спасибо за понимание.