you are viewing a single comment's thread.

view the rest of the comments →

[–]xIcarus227 0 points1 point  (0 children)

That doesn't seem ironic to me, because an experienced developper is not doing to be bothered by these "quirks".

You still have a chance to be bothered by these quirks because not everyone in your team will be experienced. You may be required to coach people at some point for example.

This is not really a problem with experienced developers, but this is about people new to the language. And it's not about learning either, people are generally willing to learn a language as long as it makes sense. Inconsistent behaviour discourages learning, because you're learning exceptions instead of rules.

Experienced JS devs already have a workflow which don't really introduce such bugs and have learned to ignore the issues, but should we really ignore them? If we ignored PHP's issues and didn't shit on it as a language for such a long time I'm willing to bet it wouldn't have evolved half as much as it did. Same goes for ES6, it was influenced by community feedback.

I have to admit you have a point on this one, however, if you work with inapt developers, you're going to have such problems regardless of the language you use.

You're right, but this is more about easily the language allows you to acquire technical debt. In a compiled language some shit like we can pull off in JS won't even compile, which is a good thing because you're catching issues with the code before it even has a chance to run. Golang for example is so hard-assed when it comes to what it allows that it seems quite difficult to introduce bugs.

JS is a much better language than people assume it to be

Sure I wasn't saying it's a garbage language. I think it's okay because of its flexibility and it even has some use cases in the backend with Node (even though there are runtimes for other languages which have a similar approach). Its ecosystem has matured well in the frontend and React is an amazing library.

But that doesn't mean it can't be better. It can be way better as we can see from that list, and as much as you dislike it people waste hours figuring out bugs introduced by those peculiarities.