I guess it depends on one's view of what "powerful software" is. To me - what you describe - features that allow me to get work done faster or at least make it less tedious makes them powerful.
I remember back in the mid 90s I was editing a book, slogging though a huge "pile" of pictures requiring the background knocked out. I told one of my partners that one day the software will be able to do this with one click. He told me that would be impossible. Of course PS now does that and more. That's powerful to me -- it does a lot of work with very few steps.
Does the convenience really require all the added abstraction layers software is going through these days ? GIMP was fully scriptable at version 1.0, running with GTK 1.3, on Enlightenment DR16 full of eye candy (Virtual desktops, areas, system widgets, etc..)... on computers with 128 MB of RAM :
But really, the problem isn't the automation we're adding, it's the abstraction layers (frameworks upon frameworks upon libraries... dependency hell) to get that automation in place, rather than going with the old solutions that were much simpler, as powerful and elegant.
Software is bloating. The hardware is permitting it. Is the bloat in the software really justified for the functionality that was added ? I'm betting that functionality could have been added in half the hardware.
Then there's the other factor : the "I need more hardware!" crowd that doesn't quite understand how idle their system really is running. "Sandy Bridge plz take my money!" when the CPU is running at 95% in its idle loop on their Core 2 Duo and the true bottleneck of what they are doing is their ISP, or their disk I/O, or simply
that other low bandwidth high latency factor : Waiting for human input.
Same for RAM. A lot of people think they need more RAM because it's "being used up!", ignoring the fact that when they run the OS X purge command, suddenly they've freed up 65% of their RAM. The file cache is a great way to boost performance, but it hides the true details of how much RAM your applications are actually using. Running purge before evaluating RAM needs is great for people who don't want to bother with learning the intricates of BSD memory management :
Code:
purge(8) BSD System Manager's Manual purge(8)
NAME
purge -- force disk cache to be purged (flushed and emptied)
In the end, people are shocked when "Photoshop!" comes to iOS and Android, but really, is it that surprising considering Alias/Wavefront ran on IRIX 6.5, on SGI Octanes with barely as much ram as the iPhone and a processor just as fast ?