Откуда, на мой взгляд, возникает избыточная сложность.
Напомню давнюю статью Руслана Богатырева: RB24. Две культуры программирования.
Цитата оттуда:
Цитата:
Отличительные черты американской школы программирования:
тотальная коммерциализация;
инновации с целью максимального извлечения прибыли;
неизбежное снижение наукоёмкости ПО;
формирование искусственной сложности ПО;
экстенсивный рост (мощности оборудования, объемы систем, масштабы проектов).
Отличительные черты европейской школы программирования:
научные исследования — основа основ;
инженерные решения требуют продуманности и отказа от излишнего усложнения;
контролируемый рост сложности систем;
интенсивный рост (за счёт высокой культуры образования и разработки специального инструментария).
Первый и второй пункты первого списка - главная причина.
Бизнес не будет тратить время на не приносящие прибыли "телодвижения".
Главное - прибыль. И неважно, каким путем это достигнуто.
Это коснулось даже критических систем управления (Боинги тому примером).
Что тут можно сделать, кроме терпеливой рутинной работы по воспитанию молодого поколения - я не знаю.
Делаем помаленьку.