sab123: (Default)
[personal profile] sab123
Беседовал тут с человеком о софтодизайне, и оба из нас выступали за простоту, но оправдывали ей очень разные подходы. Я в конце концов догадался, что мы понимали разные вещи под простотой:

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

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

Вот, кстати, еще более интересная фигня происходит в человеческих интерфейсах: если интерфейс логичный, то он непременно неудобный, а если удобный - то непременно нелогичный.

Простота относительна

Date: 2018-10-12 12:14 am (UTC)
From: [personal profile] malobukov
Нам вот просто общаться на русском и сложно на вьетнамском, а вьетнамцам наоборот. При том что принципиальной разницы нет, любую информацию можно передать на любом языке.

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

Re: Простота относительна

Date: 2018-10-12 02:33 am (UTC)
From: [personal profile] malobukov
Это потому что будущее предсказывать сложно. По этой же причине быстро сделанные системы переписывать нормально некогда, да и обратную совместимость терять неохота. Так и живём со старыми костылями, добавляя ещё более кривые новые.

Универсальный фреймворк

Date: 2018-10-13 03:46 am (UTC)
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
> Это потому что будущее предсказывать сложно

Это лишь одна из причин.
Основная причина почему "универсальный фреймворк" создает проблемы - потому что у разных задач - нужна разная функциональность. Или разные настройки схожей функциональности.
Если же эту функциональность объединить в универсальный фреймворк - получается слишком уж сложно. Даже если точно знаешь что нужно.

Date: 2018-10-12 10:43 am (UTC)
From: [identity profile] amarao-san.livejournal.com
Классическая проблема математики: нельзя иметь полную и непротиворечивую систему аксиом. Либо полнота, либо непротиворечивость.

Date: 2018-10-13 03:50 am (UTC)
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
Какой продукт вы дизайнили?

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

Date: 2019-06-04 08:56 am (UTC)
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
Ты упрощал код, генерирующий сообщения, а твой оппонент - упрощал код, отвечающий за передачу и прием сообщений в API endpoints?

Date: 2019-06-04 06:26 pm (UTC)
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
Разве упрощение формата сообщений не ведет к упрощению кода, который эти сообщения генерирует?

Date: 2019-06-04 11:09 pm (UTC)
dennisgorelik: 2020-06-13 in my home office (Default)
From: [personal profile] dennisgorelik
Можешь привести пример такой вещи, которую клиент и сервер должны держать "в уме" ради упрощения формата сообщения API?
Edited Date: 2019-06-04 11:10 pm (UTC)

January 2026

S M T W T F S
     12 3
45 6 7 8 9 10
11 12 13 14 151617
1819202122 23 24
25 26 2728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 28th, 2026 06:57 am
Powered by Dreamwidth Studios