amarao: (Default)
amarao ([personal profile] amarao) wrote2024-11-18 04:11 pm

как создать сложность

Вот я только что придумал.

Предположим, у нас есть код, который по каким-то описаниям пользователя говорит "да" или "нет" (можно ему или нет).

MVP: fn allow_user(...) -> bool

Теперь мы начинаем его выносить в отдельный сервис. Но, вместо того, чтобы завернуть bool в HTTP, мы ... чуть-чуть увеличиваем вычурность.

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

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

И может быть, даже, через XML, с глобальным реестром определений для сущностей в запросах.

(И назад этот фарш не провернуть)

[personal profile] permeakra 2024-11-21 12:09 pm (UTC)(link)
>Когда ты априори плохо относишься к чужой работе, то за придирками ты упускаешь главное: он решил все проблемы, которые были.

Нет.
Он решил не ВСЕ проблемы. Он решил достаточно проблем достаточно хорошим образом, чтобы его можно было задеплоить и продать развертывание проджект-менджеру. Это совершенно не значит, что он решил все проблемы и даже не значит, что он решил их хорошо.

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

>Повторю: уважай чужой продакшен, и будут уважать тебя.

Продакшн - не человек, а вещь. Нечего там уважать.

[personal profile] permeakra 2024-11-21 06:22 pm (UTC)(link)
Я не понимаю, о чем ты говоришь. Уважение - штука ОЧЕНЬ субъективная и без четкого определения. Впрочем, как и понятие "индусский код". Это раз.

А два - по ссылке не было критики продакшна, если что. Там была критика некоторых подходов и одного случая, который до продакшна не дошел из-за врожденных косяков.
yurikhan: (Default)

[personal profile] yurikhan 2024-11-21 04:11 pm (UTC)(link)

Тут есть нюансы. Есть Чужой Наш продакшн, его — уважай и уважаем будешь. И есть Чужой Чужой продакшн. Это вот тот, который успел первым и занимает (наше) место в мире, и его не грех и попробовать подвинуть.

[personal profile] provokatorz 2024-11-24 01:29 pm (UTC)(link)
Там обычно не оцениваешь чужой продакшен по коду, только по выхлопам, но это другая история.

[personal profile] anonim_legion 2024-11-21 05:53 pm (UTC)(link)
Я не считаю, что переписать просто.

Начну с бездоказательных утверждений.

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

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

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

Что создал ты, помимо работы на работе? Как минимум один бывший известный сайт по аниме и не только, блоги, записи на Хабре и Лоре. Это соответствует образу жизни просвящённого европейца, человека науки, или хотя бы стоящего рядом. Что сделали эти?

Теперь, отвечу именно на сообщение.

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

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

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

Оставлю здесь набор ссылок по теме беседы. Из французского финтеха пишут:

https://t.me/mixail_kain/1832
https://t.me/mixail_kain/1930
https://t.me/mixail_kain/1931
https://t.me/mixail_kain/1932
https://t.me/mixail_kain/1936