The problem is that developers no longer answer to their bosses. They answer to web forums. They are so afraid of doing things other programmers wouldn't find acceptable that they'll code to please web forums rather than doing their job. That means using the heaviest frameworks available and writing the deepest, most complex code they can manage to understand themselves.
Actually the problem is that the idea of doing stuff on a web page, then clicking a submit button and reloading an entire page just for a few pixels to change is a clunky old way of doing things that deserved to die.
The possibilities we get from intelligent use of JS open up so many things we simply couldn't do otherwise without native apps. Most users embrace this in one way or another, even if they choose to restrict it to sites they trust.