Some software needs alot of ram because of the functionality it offers. The only compromise you can make here is to remove functionality, but then there would be no innovation.
Sometimes this is true, yes - but
very rarely compared to the number of applications that just plain take way more than they need.
Some uses more than it should because writing perfectly efficient software is alot more expensive & ram is cheap. The only compromise you can make here is delay the software and charge more for it, the odds are the developers would run out of money.
Writing
perfectly efficient software is one thing, but these days most developers don't even
try. There are
text editors now that take up 10-20MB just sitting idle with nothing open. That's
inexcusable. It's not even that nobody hand-optimizes software anymore, hardly anybody even
designs for efficiency on any level these days.
Also RAM is only cheap by comparison to how it used to be. Any money you have to spend upgrading a computer that would otherwise suit your needs perfectly well because bloaty software is thrashing the disk is not "cheap" by any measure.
Oh, don't go there..
The "swap or not swap" arguments in the Linux kernel threads are epic...
This absolutely baffles me...sometimes you do have no choice but to rely on disk swapping, but it is so
monumentally inefficient that I can't even begin to fathom why you would not avoid it whenever possible...