Re[72]: Годами не могу вырваться из некорректных вопросов на
От: Poopy Joe Бельгия  
Дата: 05.05.20 06:00
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Можно менять структуру кода, без изменения семантики.

И что такой рефакторинг даст? Результат басни "квартет"?

S>Каких например?

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

S>Возьмите любой браузер или веб-приложение. Вон, докерс при попытке заказать товар с доставкой на адрес почтового агрегатора выдаёт "card authorization failure", хотя деньги успешно встают на hold.

Ну т.е. фронтенд в вебе?! Надо натянуть сову на глобус по самые уши, чтобы назвать это все.

PJ>>А типа берем 100к умножаем на 30, потому что 30 можем, выглядит менее абсурдно что ли?

S>30 — это минимальное количество компаний, которые потребляют API, о котором я говорю.
Ага, у и каждой ущерб по 100к. Абсурд и есть.

S>А вам вообще рассказывают хоть что-то про деньги, или всё же есть изоляция между модулями инженеров и продавцов? Ну, вот сколько стоит разослать гонцов с обновлениями каждому клиенту?

Конечно. Что за изоляция и в чем ее смысл? Как инженеры могут помочь снизить стоимость, если они не знают о чем речь?

S>Сколько стоит установка обновления на каждом из них — уже не вам, а им?

Так про то и речь. И нам деньги и им деньги. И это не веб, а реальное производство, которое надо останавливать, если это не плановое, а реально проблема. И то никто не считает 100к помножим на 30.

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

Началось мерянее копеечкой. А как же ваша изоляция инженеров от денег?

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

Так я и говорю — куда нам пейзанам.

PJ>>Разумеется оно так и сделано. Даже странно тут предполагать обратное. Была команда File.Save возвращающая void, стала команда MyFile.Save, возвращающая версию и хеш. Нахрена бы это в модуле считать?!

S>Ну вы же сами написали, что модули теперь должны передавать куда-то хеш для снапшота.
Ну вернула MyFile.Save хеш и что с ним дальше должно случиться?

PJ>>Бесплатно? Нет. Да еще и хрен найдешь кого, заказывали как-то внешний аудит кода — туфта на выходе.

PJ>>На РСДН FP считается чем-то средним между лженаукой и черной магией, а DDD бесполезной штукой. Нахрен такие оценщики?
S> Вот видите, вам уже оценки не нравятся.
Не оценки, а оценщики. Вопреки распротраненному заблуждению, по крайней мере я его наблюдаю тут, авторитет это ни когда условный ты себя считаешь авторитетем, и не когда таким тебя считают твои друзья, а когда авторитетом тебя считаю условный я, потребитель.
И если оценщики никогда не пробовав или не осилив оценивают FP или DDD, то их оценка меня не интересует.
Так же как тебя, и вполне справедливо, не интересуют мои оценки веб апи, ты их все равно будешь делать по-своему.

S>ER — это не про базу данных. Это формализация описания модели; очень часто используется для моделирования благодаря своей простоте.

Модель, база данных, а причем тут API?

S>А, вы хотите прямо так? Не, из бизнеса выпадают требования вроде "обеспечить возможность выгрузки ордеров со всеми атрибутами для синхронизации во внешнюю систему". С учётом того, что никакой внешней системы ещё нет, более детальных требований вы не получите. Просто сейлзы говорят "мы обсуждали с проспектом нашу систему, они спросили 'а у вас есть возможность выгрузки ордеров со всеми атрибутами для синхронизации во внешнюю систему', и мы сказали 'да', потому что на кону сделка на 700k, и конец квартала".

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

PJ>>Ну если все доводить до идиотизма, то можно и так. А можно сделать один метод GetAvailableProperies где все вернуть в виде списка.

S>И получаем те же яйца, вид сбоку. Вы всего лишь отложили проблему до вызова GetAvailableProperties, и по-прежнему оставили N+1 вызов API вместо 1.
Нет, не те же. В первом случае подписка обещана, во втором нет. Возможно, конечно, что у вас совсем странные разработчки у клиентов (ну или ты их таковыми считаешь), но, обычно, есть большая разница между обещанными данными и возможными.

S>Мы — нет. Но нам не всегда доступна роскошь переписать огромную систему целиком только потому, что в 2005 году у архитекторов не было того опыта, который есть у нас в 2020.

Но сейчас-то вы рандомизируете? В новых API?

S>Конечно. И тогда мы перейдём к другим методикам. А пока мы извлекаем деньги из этой скважины — наиболее эффективным методом.

К каким, если все уже встало? Какие есть методики оживления трупов?

S>А откуда я знаю, что из совпадения этого числа с какой-то формулой от нескольких результатов GetOrdersBatch(x) что-то следует? Откуда я знаю эту формулу?

Из названия типа, разумеется. Не, ну api для прочитать придется конечно. Странно, что ты не ожидаешь этого, но ожидаешь завязывания на контент вывовов.

PJ>>Парой строчек выше. Это ты вот такое "инструкцией" называл? У вас в клиентах дурдом что ли? А как они поймут, что GetOrderTotal возвращает возвращает сумму всех ордеров? Для этого же нужна еще одна инструкция, надо же догадаться посмотреть в ответ...

S>Так я и думал. Сначала идёт бравада, а потом фейспалмы. Оказывается, никакая сигнатура не описывает соотношения между результатами разных вызовов — ну, кроме того, что результат одного можно подставить в другой.
Рояль из куста всегда вызывает фейспалм. Есть такой рефлекс. Но никакого описания не будет достаточно если разработчика выставлять идиотом. А у меня ощущение, что ты своих клиентов тамими и выставляешь. И поменять-то они ничего не могут, не раззорив компанию и закладываются на странные вещи, и говорить отказываются, и даже API посмотреть не могут, перед использованием.

S>Я думаю, на этом мы закончим беседу в связи с утратой конструктивности.

Ты обиделся что ли? Прости, не хотел.
Конструктивности тут не было изначально, никто никого не просил помочь и нет общей задачи.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.