you forgot #3) If you want to learn how to sell you can get your own clients and make great money and not have to get caught up in the hype.
I make a very comfortable living, wife stays home, we have no debt and I work around 20 hours a week most weeks. Most of my clients are on retainer and I do good work for them. We rarely talk about what "stack" we're using but we always talk about the problems they're trying to solve.
Most of these arguments are about ego, someone being right and wrong and what tools are the best. From an old fart I can tell you this... tools are only as good as the person using them. If you are a shit developer, nothing is going to save you from yourself.
It really seems to me like a huge issue these days is that people can't even stick with a framework or language long enough to ever be decently good at it. This seems to be due in part to your #1 - learning what is needed to get a job and #2 - fear of building a product on the "wrong" stack when they scale to billions of users in 2 weeks (hint: this doesn't happen).
The biggest lesson I've learned from building a product is that no matter what tool you are using, you cannot engineer your way out of a marketing problem. No marketing = no success. There is a lot of horribly coded garbage out there making people tons of money because of marketing.