I have done JS for several years and TS more recently. I think TS really fixes a lot of the issues that arise while building large systems in NodejS. But I think people are right to hate on the dependency nightmare that is npm. I could complain about several other things but really they apply to most popular dynamic languages...