Why not?
Many would dispute the weight of your criticisms.
we have full-fledged PCs with expensive, bloated, and insecure Microsoft or Linux software
Expensive? GNU/Linux is free of charge; Windows comes bundled with most PCs often contributing less than 10% to the price (sort of.) Web browsers are free. Some applications aren't free, but if you don't install them you aren't affected by their bloat.
Yes, workplaces install big office suites instead of using a simple plain-text mail client for staff to send information between each other. You have to weigh this up against the added features. And the amount of training (per workflow) needed for using simple software isn't much less than for complicated software.
Bloated? That's a subjective term. Are you talking about poor performance? Or a user experience which is overwhelming for users? OSes certainly do a lot of things they didn't use to, and it slows them down, but boot times have improved over the decades (with the help of faster hardware) and generally OSes don't chew up much CPU.
Application software is the real culprit of getting slower and more bloated, partly due to the transition to "slower" languages (I'm looking at you, Python). This is a simple business case of "spend less on development, plus get less buggy software." (Very roughly speaking.) In the Free Software world, your pool of volunteers is limited so there's pressure to use languages where you can get more done, faster.
Insecure? Well, yeah. (But do remember that the number 1 security problem with a computer software is the human.)
We spend enormous amounts of time, effort, and money to educate employees on how to use it, maintain it
Training? As I said, the amount of training per workflow is not that different. 81
But software that has more functionality allows more workflows.
deal with all the problems that inevitably arise
Yes. More can go wrong. There are so many more "broken" configurations. This is definitely expensive. Security problems are rife. This is something you really have to weight against the benefits.
To be clear, I'm unhappy with the sprawling resource usage of modern software, but I appreciate that due to practical concerns it's quite hard to fight it.
Some less obvious benefits to "massive software"
* Aesthetic user experience (this has substantial psychological effects)
* Interfaces that are more "real world" (e.g. touch and pinch)
* Economies of scale of software development (software developed for thousands of clients is so much cheaper than one client developing in-house, even though you get features you don't need)
* Tools that are thoroughly tested at scale, instead of home-grown software to meet the same needs which is flaky
* Keeping pace with the growing complexity and competitiveness of the business world (to stay afloat businesses have to watch several social networks, review sites, who is viewing their website and why, lead-conversion funnels; this is all growing)
And IMO,
* actualising the tremendous potential of technology. 81