8

Why are most people here opposed to JavaScript?

I use it daily and can’t understand why people dislike it so much.

Comments
  • 13
    Dynamic typing and general fuckery
  • 5
    It's not a bad language but it has several features that work in a counterintuitive way. Some would even say needlessly counterintuitive.
  • 3
    @dudeking truly the ultimate horror of js, string concatenation!!
  • 5
    @dudeking Even with the strongly typed Java, "ABC" + 5 gives a valid result.
  • 7
    It's slow and expensive, and the frameworks and package managers for its many modules and components use colossal amounts of storage.

    Also, I very strongly dislike the practice of placing the processing load for loading a page on the client's computer instead of the web server. It's far too common to find simple pages with minimal dynamic content, if any, that require the client to download and process megabytes of JavaScript, instead of just rendering the HTML on the server side.
  • 7
    There are plenty of reasons not to personally like any given language, but many of the real haters are so because they are incompetent with said language.

    No language is or ever will be perfect, just like the scumbag species that created them. Javascript has its flaws, but to deny its usefulness is only something a fool would do. Same for PHP, Java, even fucking Fortran
  • 7
    I'm a js dev so i guess my opinion counts more?

    Some of the criticisms don't target just js as a lang, but towards the ecosystem, idioms, community, etc.

    The cpu, ram and disk usage of js based software is huge. node_modules, popular electron apps, "native" js mobile frameworks, chromium, client side web frameworks are a few examples.

    Another important reason is js being a design mess, a lot of vulnerabilities will occur.

    There's also too much irrational or unintuitive behaviour https://github.com/denysdovhan/...

    Tools like eslint mitigate bad practices, but eslint is a linter, it can't prevent bad things at runtime.

    Some people are pointing out being dynamically typed, to which you could object that "js is not the only dyn. typed lang", but they say that because js is pretty much the ONLY mature native lang on browsers, and they would much rather use other langs, specifically statically typed langs.

    (continues)
  • 3
    Another reason is the decision so use it server side thanks to nodejs.

    Js has a lot of criticism that it is unsafe to be a server side lang.
    The creator of nodejs has even said this year that he regrets many of the design choices behind node (just if js didn't have enough problems already), so he's REWRITING it. https://youtu.be/M3BM9TB-8yA

    so that's a bit of a fuckfest

    Another thing i've noticed is that users of other langs (specially lower level ones) consider the average js developer an idiot, which isn't too hard to believe considering how low it's the entry barrier and how many poor ad based js tutorials you can find online.

    you saying "I use it daily" in a way is also testament to that. you don't use a lang "daily" to be considered valid standpoint, you say "I use it for production code"
  • 0
    Some examples of aforementioned "general fuckery" starts at 1:23 of this presentation: https://destroyallsoftware.com/talk...

    I don't hate JS, I just think it does some things wrong. And, like also already mentioned, I'd prefer to keep it away from anything non-web.
  • 4
    The ecosystem and polyfill/build/transpile/etc. pipeline is ridiculously complicated. NPM is hell and encourages being lazy; it also encourages broken code and outright malware.

    Those are my biggest complaints. I don't care about weak typing or string concatenation. Those are silly.
  • 1
    The most annoying thing I find about JS is the need to use a linter instead of compiler, to find out if your code will even compile....

    Other than that - maybe the weird weird way each engine implements its GC.
  • 2
    @jesustricks And then there's even people who find 2019 JS too difficult and use jQuery.

    One of the frequent examples of not giving a damn for low-level in terms of browsers is animating some shit using JS-driven timers and setting top/left of the object. And then wondering why their websites exhibit serious jank. :-/
  • 1
    @Fast-Nop I remember maintaining a medium sized jquery app was a bit of a pita, though.
    can't argue that second p, waiting on some webassembly framework to reach critical mass to use that...
  • 1
    @jesustricks The interesting thing with the second point is that we do already have a high performance solution - JS triggered CSS, which even enjoys GPU support on some (but not all) properties.
  • 1
    Javascript has many fundamental flaws... Frameworks / libraries and other stuff work around it....

    But the flaws remain.

    That's one side. The other is... Browser.

    Jesus. The "standards"... Or whatever you call that raped bullshit.... And their "implementations" are just beyond fucked up.
  • 1
    Enjoy
  • 1
    @jesustricks One thing that's quite fun with lists like the one that you posted is for each of the examples ask yourself, "why would I do that" or "when I need to do that" (a bunch of them are also fixed by using === like one should). There are also ones, like the Patching numbers which is something that C# also has https://repl.it/repls/...
  • 3
    This actually seems like a good interview question.

    "What do you not like about tech/stack/language x?"

    People intimately familiar with the thing should be accustomed to edge cases and know about certain pitfalls and warts.
  • 0
    It's a fantastic language, but It is bloated and inconsistent
  • 0
    @lxmcf man if js is bloated then can't imagine what languages like C# are :v
  • 0
    @inaba shhh we don't talk about C#, we just leave that in a corner and feed it once a week
  • 0
    @Wisecrack

    This has always been a question in any interviews for any jobs I've sought in the last fifteen years.
  • 0
    @bahua

    If they don't ask it then you probably don't want to allow them to hire you there.

    Doesn't apply to junior devs.

    We're all just cannon fodder anyway lol.
Add Comment