10 years experience
JavaScript the language I use by far the most. There are just enough good parts in the language that can be a highly productive tool for ...
JavaScript the language I use by far the most. There are just enough good parts in the language that can be a highly productive tool for application development. Namely, it has first class functions closures. Once you learn to use a small subset of javascript you become a radically more productive javascript programmer, and create simpler code. For example, never use `.prototype`, `this`, or es6 classes. So yes, if you try to use classical object oriented programming in javascript, even with es6 and/or typescript you will still be in for a world of pain. Once you truly experience programming without classical inheritance, your mind opens and you begin to realize just how easy polymorphism, encapsulation, and code reuse actually is.