Всё немножко хуже. С приходом ООП и параллельным ростом доступности ресурсов стало возможным забить по самую шляпку на оптимизацию ПО. И тем самым начать снижать издержки (косты) за счёт уменьшения продолжительности разработки ПО.
Ну да, все так, это уже если раскладывать по полкам.
- в высокоуровневые вещи порог вхождения ниже (это и хорошо и плохо).
- большие серьезные вещи писать на низком уровне неоправданно сложно чаще всего (разумеется, это общий ответ. Т.к. есть например ассемблер, а есть надмножество coffeeScript, к примеру. И тут разный "низкий" уровень будет). Это если в двух словах и с допущениями.
- код вылизывать можно бесконечно. Заказчик на это не всегда готов.

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

Впрочем делать хорошо - также можно

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

так и живем
