Honestly I don't hate the language itself that much (I'm just learning it though so who knows) but developing with it fucking sucks. First npm installs a thousand dependencies, then you have to use it to install an entirely different package manager (yarn) and hope it works.

If you're using npm, you install a package or two that you're working with and get 10+ vulnerabilities. It tells you to run "npm audit fix" so you do it, but it just lists the vulnerabilities again and tells you to run "npm audit fix", so apparently you're just stuck with those.

Then you try running your react app and it crashes with an error about failing to stat a random file in your home directory. It turns out that you mistyped an import, and instead of giving an error about that it recursively backs up and checks every single file to see if it's the one it's looking for. Cool.

  • PigPoopBallsDotJPG [none/use name]
    ·
    3 years ago

    Javascript, as a language, has a couple of problems, but I like working with it better than php or python, and it performs miles better than them too.

    What I hate is what you're really ranting about too, which is the proliferation of shit built on top of shit that is the npm eco-system, and the over-complicated mess that is front-end frameworks. The only weapon you really have there is keeping things as simple as possible through the choices you make.

    For me, on the npm side this boils down to minimizing the number of modules I want to depend on, and if something is simple enough to implement in like one or two functions, I'll roll my own rather than require('capitalize-first-letter-of-word'). On the frontend side, I started out with the previous release of Vue, but only really using its template engine. I since rolled my own drop-in replacement that uses the same tricks and templates, but tries hard not to be a Framework. I also refuse to use anything that has a complicated build process before I can test changes.