«Сейчас все старее года уже легаси».

@johan классическое определение Легаси - код, переданный от одного разработчика другому "по наследству".

Оно может быть и трехдневным.

@cauf А разве не смена архитектуры, языка и т.д.? Разработчик психанул, всё поменял, плагины остались?

@johan нет. Это ты про какую-то хероту написал. Смена архитектуры и языка - это фактически закрытие проекта и написание с нуля. Это никак не Легаси.

Сейчас под Легаси чаще называют проект с большим техдолгом.

@cauf @johan Чёто это "легаси" больше напоминает какое-то жужужу без определённого смысла

understandlegacycode.com/blog/

Follow

@cauf @akastargazer Не погромист, но вроде верно написано: тебе не особо хочется разбираться, кода дофига, он запускается... Пишем обертку?

@johan @cauf Так или иначе нужен специальный человек, который врос своими мозгами в предмет, выраженный в коде.

Пока не врос - этот код является "легаси".

@𝕵𝖔𝖍𝖆𝖓 ⛧ у любого сложного проекта наступает момент, когда он превращается в систему из подпорок и костылей.

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

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

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

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

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

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

Вариант быстро сделать старт и выбросить если не взлетит тоже часто адекватен для бизнеса.

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

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

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

@erua Я, конечно, плюсану, но... Инкапсуляцию, перерузку — отменили? Позвать, что тебе надо, из старой библиотеки?

@𝕵𝖔𝖍𝖆𝖓 ⛧ вскрой любой механизм с множеством шестерёнок и передач, ну типа обычных часов — ощутишь и поймёшь, что такое сложная система и какого в неё вносить изменения, с целью заставить работать слегка иначе — согласно изменившимся бизнес требованиям из которых появились новые функциональные требования.

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

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

@erua Ты сейчас описал все продукты Adobe, крому InDesign, который изначально сделан как фреймворк для плагинов. И весь DTP'шный софт туда же. А как они отрубили многопоточность в Premier и AfterEffects? Нахуй вам Rizen, многопоточность и вот это всио, будем считать на одном ядре.

@erua Т.е. как бы понятно, что для следующего кадра нужен предыдущий, но вот 17-я версия как-то может, а дальше хер...

@𝕵𝖔𝖍𝖆𝖓 ⛧ ну раз уж мы тут вещаем друг другу о своём личном наболевшем.
то примерно с 2014 года ожидаю большой войны, между РФ и «золотым миллиардом», потому тогда зарыл в землю набежавшие 15 лет опыта разработки софта под винды и перешёл года с 2015-го на разработку под линухи.
соответственно, вопросы того, что из себя нынче представляет софт Adobe меня не волнует ну вот вообще никак. ни в вопросах растровой графики, ни в вопросах типографики. поскольку и для того и для сего есть аналоги, вращающиеся и на линухах и на обеих бсдях.

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

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

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

так что забыть как страшный сон этот ваш Adobe, с его попытками уйти на подписки вместо лицензий и принудительным блокированием работы старых версий его же софта.
Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.