Например, firefox, на первый взгляд "лёкгий" браузер, а в результате оказывается неповоротливым глючным монстром.
Графическим интерфейсам уже лет под 30, и до сих пор пишутся кривулины с заторможенной реакцией а ля "подождите немного, я торможу". Почему нет общепринятой парадигмы с разделением интерфейса и приложения на уровне процессов/потоков, или это как с монолитным ядром, сделаем тяп-ляп-всё-в-одну-кучу, работает - прекрасно, и так сойдёт?
Почему я должен обновлять дрова к видеокарте после смены ядра?
Почему нет общепринятых стандартов качества для ПО? Почему испорченный кефир не годен к употреблению, а криво написанная программа - это норма. Если у вас течёт кран, вы вызовете сантехника, чтобы он починил кран, жить с протекающим краном для нормального человека не мыслимо. Так почему же в случае с ПО единственное, что остаётся пользователю - писать багрепорты или в лучшем случае самому править исходник (и это если есть исходники). А если вся архитектура программы крива с самого начала? Отравление после употребления испорченного/низкокачественного продукта питания считается опасным и нежелательным последствием, а напрасная трата времени и нервов на использование кривого софта - повседневной рутиной, реальностью жизни?
Только не надо мне говорить об экономической эффективности - проблема лежит гораздо глубже.