Web components do a lot to alleviate this problem. You get a basic reusable component model in the browser with no framework, and without requiring first jumping into the world of npm/bower.
The vanilla JS example is barely longer with web components, and will be much easier to understand once it gets even mildly interesting:
Besides overengineered apps, problem is that people start learning frameworks and libraries instead of learning how javascript itself works. They are so excited by the new tool/toy that they fail to realize that the same thing can be achieved in much simpler and more efficient way.
Serious question, do you write JS code professionally? I mean, the more you know about JS the better, I agree, but writing plain is a daunting task, and your bound to get a lot of things wrong.
It's not a well defined language with one authoritative guide like many others, the ecosystem is pretty crazy.
I agree that most devs should know more about JS than blindly rely on every tool, but still, right now, tools are driving web development speed to new standards.
I agree. I guess my point is, people should treat js with more respect, it is a powerful language after all.
The lack of standards for sure makes it difficult to learn for beginners like me.
The vanilla JS example is barely longer with web components, and will be much easier to understand once it gets even mildly interesting: