- Right now, 24MB seems wasteful for a single web page.
- A few years ago, 2MB would have seemed wasteful.
- Before that, hundreds of KB would have been wasteful.
- And in the pre-web days applications would be wasteful if they used tens of KB.
- Or single-digit numbers of KB.
- In even earlier days, using extra individual bytes was wasteful.
- People have been known to optimize code just to find individual *bits* of unused space.
The point is, the problem of creeping bloat has existed ever since the world's second program was written, and people have been complaining about it for just as long.
A wise person once said, "Software expands to fill all available memory." The same can be said for filling bandwidth. As long as an excess resource exists there's no incentive to optimize its use. Where we once scraped to find unused bits we now casually toss around megabytes and gigabytes. At 300 bps there might have been room for a few ASCII art flourishes on the BBS. Now that a typical home connection is literally hundreds of thousands of times faster there's room video sidebars and frameworks that save the programmer a little effort.
It all boils down to time. In general people are willing to wait a few seconds for a response. Anything slower than that and we start looking for ways to speed it up. Anything faster than that isn't noticed, so isn't worth optimizing away. Page load times stay roughly constant even as bandwidth increases because that's what's fast enough on the human scale. Any extra bandwidth gets consumed by higher bandwidth art, or supplemental data, or just wasteful programmers importing a whole framework for that very special .toUpperCase() method that's so much better than the built-in one. There's no need to optimize. It's fast enough.
And yeah, it sucks for the people on the trailing edge of the technology where it's not fast enough. Conscientious developers will at least try to stay within the last generation's resource limits, but I doubt you're going to see anyone trying to optimize out single bytes or even single kilobytes at this point.