Откуда растут ноги ИТ-шной любви к модным технологиям?

 Публичный пост

Где, как не здесь можно обсудить этот вопрос...

К вопросу я пришел вот с какой стороны. У меня много разных клиентов, многие из них - это ИТ-компании разной степени известности. Так или иначе приходится касаться разных их болей и в частности - боли и недовольства разработчиков своей компанией.

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

И я начал думать, откуда идут корни этой страсти ко всему новому.

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

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

<флэшбек в прошлое>
Помню свою первую ИТшную работу... Мы делали софт для самолетов. Самолеты - пипец какая консервативная индустрия. В 2005-2007 на одном из довольно модных (по тем меркам) проектов у нас был Visual Studio 6.0!!!
А потом к нам попал на поддержку проект, написанный поверх БД ingres (не тот ингрес, который опенсорсный, а тот, который еще был проприетарным и умер) на экзотическом, древнем как говно мамонта языке OpenROAD 4GL 1.0. На момент создания в начале 90х он продавался как революционная технология быстрой разработки! Там можно было UI создавать мышкой!!! Ну тем счастливчикам, у кого был этот революционный инструмент взаимодействия с ПК.
Правда, добавляя на окно очередной контрол, все существующие разбегались по углам, заставляя играть в сраные пятнашки.
На каком-то паскалебейсике можно было писать код в этой системе, в которой в принципе не было никакой возможности версионирования.
За окном шел 2005й. Мы уже знали про всякие отжаилы, непрерывную интеграцию (правда, Jenkins тогда еще был Hudson), а тут приходилось заниматься этим палеопрограммированием. Но это же были самолеты!!!! А самолеты - это по определению круто!
</флэшбек в прошлое>

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

Василий из бизнеса вежливо, но матом попросил нас это разработать, менеджер Антон после нытья о нехватке людей и изобилии технологического долга согласился, Мария из аналитиков написала требования, я это все закодил, Григорий прочитал требования, протестировал и после того, как я все переделал как надо мы это отгрузили Ольге из сисадминов. Что произошло с этим дальше мы не знаем, так как надо другие парсеры выплагинивать.

Так вот, у меня есть гипотеза, что если бы мы понимали что же в итоге мы закодили и:

  • сколько людей этим воспользовалось И/ИЛИ
  • сколько денег мы этой шнягой заработали / спасли нашей компании И/ИЛИ
  • сколько мне дадут премии цепочкой чтобы что нам бы показали как то, что я делаю, связано с целью компании и счастьем человечества

То наше либидо к новомодным технологиям существенно бы снизилось.

Как вы думаете, на сколько это правда?

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

Будет здорово, если вы ответите цифров в этой анкете, а буквами ниже в комментариях. И если у меня получилось гуглодоковое чудо, то ниже будет живая (но с небольшим запозданием) гистограмма распределения ваших ответов:
https://docs.google.com/spreadsheets/d/e/2PACX-1vRO8gI3ZfxGdIuUDeulhatCyTAbK52siiGyoJVnCj7g2MktCxi71MSOMVmIIvc1LskGb9ETQ96Vlv3J/pubchart?oid=1280512598&format=image

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

Связанные посты
66 комментариев 👇
Вастрик Блогер, питонист, мизантроп 10 ноября 2021

Хмм, не нашел своего варианта, напишу его.

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

То есть это не инженеры любят новое, а люди, которые любят пробовать и создавать новое, с большей вероятностью становятся инженерами по жизни.

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

  Развернуть 1 комментарий

@vas3k, разумно! Очень хороший вариант. Думаю, весьма популярный (мы же понимаем, что нет правильного и не правильного, все дело в частоте проявления).

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

  Развернуть 1 комментарий

@cartmendum,

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

Очень. Примерно каждый второй человек, с которым я знакомлюсь рассказывает о себе что-то типа «вообще я учился на врача, но год назад перекатился в JavaScript, верстаю формочки, там больше платят»

Россия в этом смысле вообще страна победившего киберпанка, где скоро останутся только айтишники и курьеры-мигранты.

  Развернуть 1 комментарий

@vas3k, а откуда цифры по России?)

  Развернуть 1 комментарий

@cartmendum, плюс-плюс, для меня это во многом верно.
Кроме того, если я все правильно помню, то есть еще нейрофизиологический аспект — конкретно интровертов вставляет копаться и разбираться в новом.

  Развернуть 1 комментарий

@KiEwsD6gHcJanH5P, из тургеневского телескопа :)

  Развернуть 1 комментарий

Между прочим Тургенев говорил, что мы должны ползать перед немцами, что есть одна общая всем дорога и неминуемая – это цивилизация и что все попытки русизма и самостоятельности – свинство и глупость. Он говорил, что пишет большую статью на всех русофилов и славянофилов. [Достоевский] посоветовал ему, для удобства, выписать из Парижа телескоп. «– Для чего? – спросил [Тургенев]. – Отсюда далеко, – отвечал [Достоевский]. – Вы наведите на Россию телескоп и рассматривайте нас, а то, право, разглядеть трудно». От этих слов Тургенев краснеет и кусает губы, удерживаясь от резкого ответа. (c)

А ведь западники были правы.

  Развернуть 1 комментарий

ой я обожаю все самое свежее и новое, в пет проектах постоянно хожу и обновляю зависимости. Этакая форма аутизма.

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

Короче все что угодно кроме "желание делать мир лучше". Мир лучше делать можно и баш скриптом который экономит по часу в день тетенькам из бухгалтерии, для этого не надо быть высокооплачиваемым JSON-грузчиком.

  Развернуть 1 комментарий

@Kirk, о, а я - полная противоположность. Тоже, можно сказать, форма аутизма).

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

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

Что характерно, я тоже считаю айтишку своим хобби, но при этом склоняюсь к мнению, что ебанулась в край айтишечка, именно от страха остаться на обочине времени. Беспочвенного, на мой взгляд.

  Развернуть 1 комментарий

@Ib0FsxGq813itWk6, я тут недавно на два часа петпроджект уронил просто потому что переезжал с 12 постгреса на 14) спрашивается, зачем мне надо было переезжать? Хуй знает, по приколу

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

  Развернуть 1 комментарий

@Kirk, хех, а я сейчас в рамках одного учебного курса налабал пет на 50к строк кода, хотя мог бы уложиться в 5к на каком нибудь языке посовременнее. Что характерно, вообще не ощущаю на себе тяжести этой портянки)

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

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

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

  Развернуть 1 комментарий

@Ib0FsxGq813itWk6, возможно это лень (в самом хорошем смысле) и правильный на мой взгляд подход «не сломано — не чини». Джавист ещё долго будет с работой, зачем прыгать в другие технологии?

  Развернуть 1 комментарий

@Kirk, эмм но переезд в postgresql делается одной командой...

Хотя ладно ухожу ухожу.

  Развернуть 1 комментарий

@norguhtar, Когда у тебя он веритится в докере то не все так просто

  Развернуть 1 комментарий

@Kirk, еще одно подтверждение, что докер рак.

  Развернуть 1 комментарий

@Kirk,а можешь вкрадце рассказать, в чем был гемор?

  Развернуть 1 комментарий

@Ib0FsxGq813itWk6, в том что если обновить постгрес с 12 до 14, то он не сможет схавать данные и будет падать с ошибкой об этом. Очевидно внутри контейнера нельзя ничего изменять потому как это бед практис и может привести к очень грустным историям (то есть нельзя заходить в контейрнер который идетифицирует себя как 12-й постгрес и обновлять его до 14, это разъебется очень быстро). Поэтому либо рецепты какие-то в интернете брать (у меня не сработали), либо делать как я сделал — остановил сервис, сделал дамп базы, поднял новую на 14-м потсгресе и туда дамп накатил

  Развернуть 1 комментарий

@Kirk, хм. Видимо у меня болевой порог тоже не как у всех работает. Потому что для меня как то не звучит стратегия, описанная тобой, как "еще одно подтверждение тому, что докер - рак".

  Развернуть 1 комментарий

@Ib0FsxGq813itWk6, ну да, рака в этом нет. Окружение иммутабельно, за это расплачиваешься очевидными вещами. Докер это круто.

  Развернуть 1 комментарий

@Kirk, чёт совсем жесть.. А если у меня БД на миллиарды строк? Пару дней мигрировать данные просто ради апдейта? А разве нельзя хранить непосредственно стейт БД вне контейнера и чтобы потом новую версию пг примонтировать ту да же?

  Развернуть 1 комментарий

@MrModest, ну так новый контейнер отрыгнет твою базу сказав, что версия несовместима)
можно конечно мигрировать еще подняв вторую базу рядом и посвапав волюмы например, но это чревато легкой потерей данных пока оно туда-сюда колбасится будет.
Да даже без докера по-моему апдейт базы без простоя не бывает, я просто выбрал надежный способ с самым большим простоем. В чатах предлагали поднять вторую базу с точной репликой, которая будет крутиться уже на новом постгресе, потом просто переключить приложение. Короче способов много, чем больше база тем больнее. Проще уж не обновляться, и докер тут в целом не очень то и причем.

  Развернуть 1 комментарий

@MrModest, чтобы данные 12 PostgreSQL сожрал 14 PostgreSQL нужно провести процедуру миграции. В рамках идеологии docker надо сделать отдельный контейнер с PostgreSQL 14 на миграцию, провести миграцию на данных, потом подключить уже контейнер с PostgreSQL 14 который будет раздавать БД.

Но как мы видим все ратующие за иммутабельность делают совсем не то :)

  Развернуть 1 комментарий
Yury Katkov в шаббатикале 11 ноября 2021

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

В Blue Brain Project параллельная команда занималась обработкой нейроданных, например классифицировала клетки.

Термины, которыми описываются клетки, были объединены в древовидную структуру, а описывать их надо было используя айдишники. Вот я и сделал поиск по дереву с удобным копированием айдишников. Дал поиграться одной из тетенек, которая занималась разметкой данных, поглядел, как и что она делает. Прикинул, что вот так-то и так-то она могла бы делать это быстрее. Реализовал соответствующую фичу. Она обрадовалась, я сделал следующий шаг, потом следующий.

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

Три недели херачил эту поделку ночами и днями напролет, это было постоянное состояние потока и сжиженная благодать. Почти уверен, что если бы надо было делать на ангуляре, а на чистом js образца 2004 года с табличной версткой – это бы не очень-то много изменило.

  Развернуть 1 комментарий

@ganqqwerty, прекрасная история, иллюстрирующая, что видение смысла в конечном результате отодвигает тягу к модному на задний план.

Интересно, а если бы не было контакта с тетенькой, захотелось бы посублимировать отсутствующий смысл в поиске новомодного фреймворка?

  Развернуть 1 комментарий

@cartmendum, абсолютно точно да. Вообще, по-моему, очень много проблем проистекает от отсутствия ощутимого смысла в работе.

  Развернуть 1 комментарий

Не согласен со всеми комментаторами кроме парня который сказал что стремление к новому — общечеловеческое.

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

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

Вот твиттер тред в котором человек объясняет эту концепцию на пальцах:


https://twitter.com/awilkinson/status/1451256182329548802

You don’t know realize it, but you want these things because other people want them.

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

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

P.S.: вастрик клуб сделан на скучных старых технологиях—джанге и постгресе. Think about it.

  Развернуть 1 комментарий

@wCtlHRqamCtz2nJf, четко все расписал, так и есть. Я думаю, эта концепция куда шире вопроса технологий в программировании.

В целом, если ты смотришь на кого-то, кто что-то делает, а ты нет - появляется мысль - почему бы и мне не сделать так же?

Я, допустим, стал посматривать на возможность работы удаленно с более высокой зп именно после того, как посидел в разных чатах программистов)

  Развернуть 1 комментарий

@wCtlHRqamCtz2nJf, не хочется спорить с человеком, который первым делом заявил, что он со мной согласен, но что поделать:

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

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

Другое дело, что мы живём в "сейчас", поэтому видим всех, а не только победителей. Лет 10 спустя мы оглянёмся на 10 лет назад и скажем, что за 10 лет ничего не изменилось - потому что мы будет говорить про те технологии, которые к тому времени выживут и станут стандартом, и сравнивать их со всеми новыми технологиями, которые к тому времени будут только-только в процессе обкатки. Это такой замкнутый круг получается.

P.S.: вастрик клуб сделан на скучных старых технологиях—джанге и постгресе. Think about it.

Да не особо и скучные - Vue.js да Webpack, хоть уже и не вершина хайпа, но всё равно модно-молодёжные.

  Развернуть 1 комментарий

@Kroid, не согласен, осуждаю, но в дискуссию встревать не буду 🤝✌️

  Развернуть 1 комментарий
Михаил Гусаров Инженегр-погромист 10 ноября 2021

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

Есть еще важный момент с точки зрения найма. Сейчас компании конкурируют за хороших кандидатов, соответственно у кандидатов есть возможность выбрать из разных вариантов. При прочих равных возможность работать на новых технологиях это вроде как плюс, поэтому компаниям выгодно по возможности все-таки в каком-то количестве эти новые технологии использовать.
Даже если сейчас все работает на perl и все ок, то нанять новых людей на такой проект намного сложнее, чем если у вас модные python/go/etc.

  Развернуть 1 комментарий

@valentin-kh, Видел пару случаев, когда большие компании переезжали с перла на что угодно просто потому что нельзя найти хороших разработчиков в нужных количествах

  Развернуть 1 комментарий

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

  • Значительная часть софта склонна к увеличению сложности со временем. Бизнес хочет больше, новые требования противоречат старым и так далее.
  • Сделать систему, которая может оставаться простой и понятной при росте сложности задач, которые она решает тоже не очень-то легко. Значимая часть людей с этим в общем-то не справляется.

В итоге имеем следующее: если система живёт уже более N лет (N сильно зависит от стека), то есть довольно высокая вероятность, что там спагетти-код, костыли, хаки и все прочие радости, которые делают жизнь простого разработчика чуть менее радужной. Я допускаю, что в индустрии просто появилась такая вот эвристика - старый проект, плохой код, неприятно работать.

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

  Развернуть 1 комментарий
Alexey Buravov Backend-разработчик 10 ноября 2021

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

Так что я их на 70% учу и применяю именно из-за этого фактора.

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

  Развернуть 1 комментарий

Но если сидеть только на нем и не гнаться за модой - то в лучшем случае не будет повышения дохода

@nightlord189, тут дедушки умеющие в COBOL с тобой не согласятся )

  Развернуть 1 комментарий
Yury Katkov в шаббатикале 11 ноября 2021

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

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

@ganqqwerty, Часто, пользуясь передовой технологией, не замечаешь, насколько она классная, пока жизнь не подкидывает более классическую альтернативу. Как правило, в этот момент приходит понимание, что иногда новые технологии придумывают не только лишь от нечего делать, но и потому что круглое катать - проще.

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий

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

Сидеть с этой болью на старых технологиях и видеть, или предполагать, как легко и просто ее решают в большом мире - грустно.

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

P.S. Во всеобщую пользу, кстати, почти не верю. Т.е. неплохо иметь что-то затыкающее экзистенциальные вопросы. Но по большому счету, мне важнее процесс разработки, а не результат.

  Развернуть 1 комментарий

@smileijp, поддерживаю. И недоумеваю от этого снобского "фи" в сторону нового. За условные 10 лет люди поняли, что нельзя обойтись одним императивным кодом и нужны грамотные абстракции и архитектура, паттерны. Старые языки могут плохо учитывать и поддерживать новые подходы, т.к. не могли учесть то, чего не было при их создании, а сейчас у них на плечах висит обратная совместимость.

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

Ну и не обязательно ведь уходить в крайности и требовать тащить в прод, что ещё толком не обкатано. Но тому же Kotlin'у уже куча лет, даже переписывать с нуля не надо, просто пиши новое на нё, а старое пусть живёт себе. Но до сих пор встречается немало джавистов, которые им брезгуют 🤷🏻‍♂️

  Развернуть 1 комментарий
Андрей Русанов Грустный разработчик 10 ноября 2021

У меня нет тяги к новым технологиям, это гарантийный случай?)

Программировать на Фортране тоже не тянет, но на работе (если я принимаю решение) я всегда беру то, что решает проблему и с чем знакома команда разработки (в идеале).

  Развернуть 1 комментарий

@andrii_rusanov, читаю коммент... поднимаю глаза на ник - "грустный разработчик"... Совпадение? :)

Нет тяги к новым технологиям - вариант нормы ;)

  Развернуть 1 комментарий

Потому что айтишники тоже люди и страх быть немодным и остаться на обочине сильнее лени/рациональных причин/whatever.

По той же причине почему люди бегут использовать тикток/клабхауз/новый айфон когда они выходят

  Развернуть 1 комментарий

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

  Развернуть 1 комментарий

@Kroid, зато софт у любовников очень даже разный!

  Развернуть 1 комментарий

Вспомнил два примера освоения новых технологий:

  • Выучил Rust
  • Перевёл свой блог с Jekyll на новую Zola

В обоих случаях делал это потому что новая альтернатива показалась объективно лучше, логичней, проще и удобней.

Так что видимо я отношусь к третьему варианту, хотя бы не сказал что иррационально люблю всё новое. К Golang не хочу прикасаться, например.

  Развернуть 1 комментарий

Разработка — молодая отрасль, появление новых инструментов и абстракций, как правило, оправдано и не объясняется лишь модой.

Старые приложения дешевле выкинуть и написать заново. Весь софт рано или поздно будет переписан на новом стеке. Вдобавок, каждый день потребность в разработке нового софта растёт.

Комфортное положение для прикладного разработчика — это быть в той точке, где в настоящий момент накапливается свежий опыт. Это значит, что ты быстро найдёшь решение для любой актуальной проблемы. Долго в легаси-пузыре не пробудешь, большинство нюансов возникает на стыке технологий — не найдётся Stripe SDK для хромого паскаля.

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

  Развернуть 1 комментарий

@antgnc, банковский софт на Коболе смотрит на ваш коммент со снисхождением.
«Переписать на новый стек» зачастую настолько сложно, что проще заплатить страйпу за запил нужного SDK.
Ну и я бы сказал, что комфортней всего пребывать как раз там, где грабли уже обнесены ленточками и задокументированы, best practices наработаны и существует обширная база вопросов и ответов на StackOverflow. Быть первопроходцем и изобретать заново колёса занятие сильно не любителя.

  Развернуть 1 комментарий

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

Ох и не был бы я в этом уверен, конечно... Быстро найти решение можно там, где богаче всего развито коммьюнити и экосистема. Новизна и "свежесть" с развитостью вообще не коррелирует, и спасибо если вообще не имеет обратную зависимость.

  Развернуть 1 комментарий

@antgnc, гигантский пласт научного ПО на фортране смотрит на вас с презрением

  Развернуть 1 комментарий

@norguhtar, Да, кобол и фортран существуют. Не работал с фортраном, вряд ли физикам нужны все эти абстракции из прикладного ПО с кафками и кубернетесами. И не вижу противоречий в том, что какая-то база кода на коболе будет поддерживаться до конца времён.

Вопрос автора в том, почему разработчики выбирают новое. Я объясняю это тем, что условный дед, который сидит на корпоративной системе, где вся логика реализована на хранимках в PL/SQL, будет бухтеть, закатывать глаза, и на все изменения отвечать: «Не в мою смену». Несмотря на его невероятный опыт, и на то, что двадцать лет назад на форуме sql.ru он уже всё разжевал, не хочется иметь дело ни с ним, ни с его экосистемой, потому что есть альтернативы.

Новое — не априори всё выкинуть и изобретать заново. Был набор спецификаций Java EE, там как раз всё обнесено ленточками и задокументировано до запятой. Меня разве что под дулом автомата сейчас заставишь писать эти XML с EJB. Те части спецификаций, которые зарекомедовали как практичные и не имели избыточную сложность, существуют до сих пор, например: CDI в Quarkus. «Сосед по гаражу» будет хлопать по крылу своего IBM Websphere AS и заявлять: «Классика! Вот раньше умели делать! Весь энтерпрайс под капотом!». Ну, его право.

  Развернуть 1 комментарий

@antgnc, есть куча приложений которые просто дорого переписывать. Вот к примеру научный софт его настроили и он живет, никто переписывать его не будет. Более того вот этот постоянный бег приводит к тому что ПО начинает гнить быстрее чем ожидается.

Новое — не априори всё выкинуть и изобретать заново.

Угу прямо сейчас происходит переизобретение SOAP. Я про OpenAPI если что :)

  Развернуть 1 комментарий

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

  Развернуть 1 комментарий

@SyntaxWarrior, тоже любил такое! И потом уже став менеджером смотрел с недоумением на джавистов, которые отказывались буквально чуток поковырять похапэ с брезгливостью во взгляде...

Мы же не код пишем, мы решаем задачи, какая нах разница на каком языке?...

  Развернуть 1 комментарий

Чуть ли не везде всплывает боль: "В нашей компании сраный легаси, а я хочу все эти модные фреймворки и кубернетесы с микросервисами".
И я начал думать, откуда идут корни этой страсти ко всему новому.

Vue.js и Kubernetes достигли стабильной версии ещё в 2015 году. Это не новые технологии.

Одни проверенные временем инструмены заменяют на другие проверенные временем, потому что новые мощнее и экономят время и вычислительные ресурсы. Где конфликт?

  Развернуть 1 комментарий

@OlegShvann, наверное, я совсем отстал от ИТ... Но последние тренды, что я помню - вычислительных ресурсов надо все больше и больше (спасает только то, что производители железа поспевают с повышением производительности своих железяк), программисты отдалились от пользователя уже на несколько слоев абстракции и теперь без аналитика друг друга не понимают... Ну а в остальном все без изменений на протяжении полутора десятка лет - все долго, криво и с багами...

Надеюсь, что теперь все не так :)

  Развернуть 1 комментарий

😱 Комментарий удален его автором...

  Развернуть 1 комментарий
Женя Инди-разработчик средней руки 13 ноября 2021

Как вы думаете, насколько это правда?

Зависит от классовой осознанности работника и склонности к тщеславию. Количество юзеров, заработанные деньги компании, польза человечеству - это все абстрактные вещи, имеет смысл задавать себе вопрос "сколько я готов доплачивать из своей получки за это". Делать мир лучше софтом - сложно, гораздо эффективнее будет максимизировать свой доход и орудовать уже им

Вообще мне так видится стратегия человека-программиста

  1. Делает свой проект - разумно выбрать знакомые пхп и джаву, чтобы создать ценность для покупателя и максимально быстро вертеть гипотезами
  2. Делает свой проект в виде карьеры в компании - разумно выбрать кубернетес на AI-блокчейне чтобы создать ценность для себя - обставить конкурентов при поиске новой работы и затруднить выпиздывание себя на мороз

Ты в любом случае что-то продаёшь, надо осознавать что именно

  Развернуть 1 комментарий

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

  Развернуть 1 комментарий

@rutelun, это типа вариант три? :)

  Развернуть 1 комментарий

@cartmendum, ну близко. Новое решает какие-то боли старого(и добавляет кучу других, но ты о них еще не знаешь)
Т.е. изучение нового это избавление от боли старого

  Развернуть 1 комментарий

@rutelun, обмен известной боли на неизвестную :)

  Развернуть 1 комментарий

@cartmendum, ну для меня это было основной мотивацией изучать typescript, после js он казался прям раем. Свои минусы тоже обнаружились и теперь потихоньку посматриваю на kotlin :D

  Развернуть 1 комментарий
Maxim Dorofeev Прокрастинатолог автор 10 ноября 2021

😱 Комментарий удален его автором...

  Развернуть 1 комментарий
Anatoly Shipitsin Специалист по НЕХ 11 ноября 2021

Две основные причины

  • Это что еще поддерживать надо? Никто не любит легаси. Более того поддержка в крат сложнее просто написать заново.
  • Написать новое проще. За редкими исключениями, написать новый софт или сделать новый фреймворк, всегда проще. Ведь в старом есть фатальный недостаток.

Эти обе причины еще долго будут давать мне на хлеб с маслом. А чем дальше тем чаще на этом бутере будет икра.

  Развернуть 1 комментарий

Я бы добавил вариант переоценки пользы от нового, мол, как только перейдем на XXX - жить станет лучше, жить станет веселее.

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

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

  Развернуть 1 комментарий

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

Сидеть на легаси это как питаться фаст-фудом -- опасно.

Перекроет ли для меня понимание конечной пользы стремление к новомодным технологиях? Абсолютно нет, для меня эти вещи вообще никак не связаны.
На самом деле неприятный опыт работы в маленьком местном сервисе научил меня не забывать что я просто помогаю решать бизнес задачи при помощи кода и не имею никакого другого отношения к продукту и бизнесу.

А вот что может перекрыть, так это высокая зарплата и много свободного времени, которое я могу тратить на изучение нового :D

  Развернуть 1 комментарий

@iAOSq1xzbKCgKMif, когда же наступит это прекрасное время, когда подобная строчка в резюме:
"не забывать что я просто помогаю решать бизнес задачи при помощи кода и не имею никакого другого отношения к продукту и бизнесу."

Будет цениться выше всяких базвордов :)

  Развернуть 1 комментарий

@cartmendum, кстати тут был очень крутой пост о том, как ковыряться в легаси тоже может быть очень увлекательно -- Spotify, backend на С++, memory leak и я.

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

  Развернуть 1 комментарий

Как по мне, причин несколько:

Профессиональный рост

Спорить об этом можно долго, но новые тулы/фреймворки/либы все-таки решают какие-то новые/появившиеся проблемы/вызовы или решают старые боли, но эффективнее. Конечно, можно в 2021 запиливать приложение на ASP.NET 2.0 потому что "я решаю бизнес-задачи, а не гонюсь за модой", но в сравнении с каким-нибудь реактом такое приложение будет выглядеть уныло. Со временем и заказчик об этом догадается! )))

Community

Поскольку мир не стоит на месте, то все профессиональное сообщество смещается на новые тренды и фреймворки. И если ты сидишь на легаси, то со временем становишься "один в поле воин".

IT-тусовки

Вытекает из предыдущего, но все же стоит отдельного упоминания. Так вот, если решая бизнес-задачи остаться в прошлом, то автоматически выпадаешь из контекста и с коллегами поговорить уже будет не о чем. А это замедляет и профессиональный рост, и дальнейшую карьеру, да и вообще жить станет скучно! ))

  Развернуть 1 комментарий

😎

Автор поста открыл его для большого интернета, но комментирование и движухи доступны только участникам Клуба

Что вообще здесь происходит?


Войти  или  Вступить в Клуб