Where do the bad parts come from? They have three main sources:
Good intentions. By design, Eich included a number of features that make it easier for beginners to use the language, but which work against professional programmers doing large programs. The global object is a notable example of this.
Haste. Eich literally had 10 days to create the LiveScript specification so that it could ship with what was then the next version of the Netscape Navigator browser. It didn’t have the years of refinement that most other languages have to smooth out the inconsistencies and poor design choices. Nevertheless, the language was a remarkable achievement from a brilliant computer scientist. The blame here lies more with Netscape than Eich for setting an unrealistic schedule.
For the most part, you can avoid the bad parts. The good parts define a remarkably useful and versatile language, a subset of the whole, and those are the parts that we’ll focus on in this course.
And with ECMAScript 6, it promises to become a worthy programming language. But will that instead lead to its demise? Stay tuned!