The thing I hate the most when writing complex things in JavaScript is the lack of typing and the... structure found in many languages. It simply becomes difficult to manage on things like web applications. I want strict types, private and protected properties/methods, traits/mixins, etc. TypeScript provides much of that, but when using it I find myself spending more time trying to work around its idiosyncrasies rather than actually coding.

Like how I must use these esoteric-looking generics to make it happy using mixins. At that point it becomes more a hinderance than a useful tool. It also has the effect of making the code more difficult to read which kind of defeats the purpose of wanting to use TypeScript in the first place.

Don't get me started on the time spent trying to guess what type names it expects from some built-in JavaScript things such as the DOM..

Sign in to participate in the conversation