Чем меньше узлов в системе, чем меньше в ней сочленений, тем более надёжная конструкция получается.
К сожалению, современная инженерия работает по аддитивному принципу. Фичи (элементы систем) только добавляются и крайне редко выпиливаются. Когда сложность начинает зашкаливать, вместо того, чтобы упростить и убрать лишнее, создают новую систему поверх. Ценой скорости, качества и надёжности — ровно как бюрократия.
Причин много. Когнитивные: ошибка невозвратных затрат, неприятие потерь, синдром Плюшкина. Мотивационные: создавать новое, решающее старые проблемы, всегда приятно и одобряемо. Организационные: бизнес не готов тратить деньги на удаление того, на что уже были потрачены деньги пару лет назад — это выглядит как бесполезная трата, а кто это предлагает — неэффективный менеджер.
В силу того, что я программирую сильно дольше, чем управляю и инвестирую, я очень хорошо понимаю долгосрочные эффекты такой политики и придерживаюсь ровно обратного.
Количество сущностей в системе нужно держать минимальным, делать новые только когда уже невозможно по-другому, поощрять и радоваться каждой возможности что-нибудь убрать или упростить.
Делать просто — непросто!
Post #161
10.4K