The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
They didn't teach JS when I was in college (Java instead ). Tbh I think a lot of JS confusion comes from attempting to apply how other languages work that you already know to how JS works - and it's almost always wrong. The topic that always comes to mind is this[^].
Personally I like that JS lets you have flexible control on context, use, and binding. I disliked the complexity at first but after spending some time with the language I see the usefulness on top of it being much less mysterious now. Some stuff is obsolete but some things can only be accomplished using a specific technique as the article points out.
I grad I'm NOT using C or C++. The day of manual memory management, its so flexible, so archaic, its such a dinosaur. I have to go back to it once in a while when developing IoT stuff, but other than that, I'm happy with C# and even JS.
They copy-paste random code until it magically starts working, then refactor everything into a gazillion functions and plaster unit-tests all over it. Once they realize they've written too much code and have too many dependencies, they call it a framework.