Why does everyone hate js?

Hello newfag here
What's up with Sup Forums's hate of nodejs
I've been using it for a while and it's great! Much better than php. What is your constructive argument Aganist it?

Other urls found in this thread:

github.com/facebookincubator/create-react-app
hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
destroyallsoftware.com/talks/wat
youtube.com/watch?v=gzG6RdN7iGY
codeproject.com/Articles/182416/A-Collection-of-JavaScript-Gotchas
youtube.com/watch?v=EDUa_nkpOBk
aprilzero.com/
twitter.com/SFWRedditVideos

It's a meme.

it is riddled with problems, but quite frankly the biggest problem most people have with javascript is that they're unable to write robust code

if you're willing to go full autist with functional code in javascript, you might have a good time. that won't save you from a broken ecosystem with approximately six pentillion different sets of tooling and "recommended" "must use" libraries.

you probably want to pick something else up instead though, and save yourself the hassle.

literally everything about it is a mess

at the company i currently work at, we use nodejs in the backend. on its own its ~bareable. but we wrote our own shit around it (namespaces mostly) and strictly use functional programming. its actually quite comfy and we get things done rather quick.

also, pic related is literally every js/node thread on Sup Forums

lurk moarrr

Better than php LMAO

() + {} = [] + {}

Or something like that.

using javascript because of functional programming is like eating dogshit for the bits of corn in it. if that is the part you enjoy, every other way is better, no exceptions.

Because Node is for people who just don't want to learn another language. There's just much better languages to use. There's no reason to write your front-end and back-end in the same language "because you can", just learn another language best suited to the task you're trying to accomplish. JavaScript is becoming a bit infamous for being babby's first language and the unwillingness to just learn and use another language to do what people are doing with Node and the number of frameworks available for it just confirm that.

I like JavaScript, I just don't like Node, its ecosystem and its fanboys. The framework scene is ridiculous, there's either dozens of tools for ONE THING or dozens of tools for EVERYTHING and there's no proper "start here" roadmaps for you. It's almost pointlessly intimidating and documentation is not only non-existent, but the fact that there's so much shit for every shit means that if you do find documentation, you're lucky if the person is using the same thing someone else told you to use.

It's also a meme by definition. Something that shouldn't be popular or "happening" but it's only so because everyone else is doing it.

learning Node.js right now.
Enjoy being irrelevant to the job market nigger

>There's no reason to write your front-end and back-end in the same language "because you can"
the reasons are mainly server-side prerendering of the initial client-side page and the ability to share code between client and server

>there's either dozens of tools for ONE THING or dozens of tools for EVERYTHING and there's no proper "start here" roadmaps for you
you mean like this one? github.com/facebookincubator/create-react-app

>It's also a meme by definition. Something that shouldn't be popular or "happening" but it's only so because everyone else is doing it.
no, it should be popular because it works. and people using it means it does

Dynamic typing is a joke and loose typing makes it even worse.

No thank you.

Django is just an all-around much better experience without all the downright flabbergasting aspects of Node.

>javascript
Insecure garbage that results in countless exploits

I've seen more exploits happening on shit written in C than on shit written in javascript.

Not for drive-by downloads in webdev...

hey op

sure, there are even better options like spring and phoenix. I don't use node on the server myself.

that's a problem of engines that run external javascript code, or any external code for that matter, not the language

of course by "hey op" I meant that Typescript fixes this problem

JS hatred comes from what mentions.

If you have front-end web developers who want a relatable way to get into back-end development without having to cross another learning curve, Node is a way to do it. And too, if paired with data stores like Mongo, that's all the excuse they need: JS talks to JS and stores JS. All problems and solutions are through the lens of Javascript.

This creates the problem of expected behavior when they choose Node or Mongo, and then expect it to behave not like Node or Mongo, which quickly snowballs into a huge mess of spaghetti hacks. Node and Mongo are probably not the best solutions for a number of back-end tasks on the web.

Bad programmers will write bad code in any language.

And there is no perfect back-end language. You will always have to compromise.

Right, but if you jump onto using a language for bad reasons, you're not only going to make it harder for yourself to write good code, but for anyone else who has to contribute to it in the future too

this and
hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f

destroyallsoftware.com/talks/wat
>skip to 1:21

> Bad programmers will write bad code in any language.

This is such a terrible argument. I hope you realize how stupid you are.

Sup Forums hates every language, there's things to learn from the criticism but don't take it too seriously.

> Bad programmers will write bad code in any language.
What's wrong with this argument?

+ these fucking retards >> youtube.com/watch?v=gzG6RdN7iGY

Wanting consistency throughout an entire stack is not a bad reason at all to use a language for a project.

The only bad reason to use a language in an instance is for a completely unrelated reason. Like worrying about performance for a CMS system used by only a few dozen corporate managers, and then choosing to write your back-end in C.

Yeah but the are better and worse languages to use in the backend as well as front end applications faggot.

Javascript being pretty bad in the front end already and objectively worse on the backend.

This argument comes from managers who know nothing about programming and then wonder why the project is a total diseaster later on.

This shit are retarded. JSX not worse than any web template engine, every language has new versions with new features, often incompatible with older versions. JS have flaws, but this article is garbage.

Ignorance begets hate. Brainlets on Sup Forums are mad at technologies they don't understand.

Consistency is fine, but there is also the issue of context. How your back and front ends handle data, let alone their roles, are often going to be very different beasts

You sound like a bad programmer, desu.

This is why the best companies in the world hire based on technical skill and not on language knowledge. Writing C won't necessarily make you any better at understanding how to solve problems than writing Javascript.

Plenty of people get hired at Google who used Javascript for their entire technical interview.

Sup Forums hates everything that's mainstream. Sup Forums loves apple pre-ipod. Sup Forums loves thinkpads before they became more successful. Sup Forums likes obscure programming languages but hates anything with a substantive amount of attention on it.

whenever i talk to people who hate on javascript i can never get more out of them than that they hate how easy it makes things for novices. which i kind of get in the sense that frat boys don't like that pledges don't have to go through as much hazing these days

codeproject.com/Articles/182416/A-Collection-of-JavaScript-Gotchas

How that changes the fact that article is garbage?

explain this
>> 10000000000000000 == 10000000000000001
true

Sup Forums hates every programming language.

>Code with C
>Using an outdated programming language

>Code with C++
>Using a language that tries to be C but morphs into a confusing beast

>Code with Java
>Using a slow as shit language that has many vulnerabilities

>Code with C#
>Using a shitty Java knock off

>Code with Python
>You can't code in a real language

>Code in JavaScript
>Let me try Lua instead
>Who the fuck uses Lua

Just pick a language and roll with it.

>dancing around the problems of javascript
ok m8

Managers don't choose languages. Engineers tell them what to support and then they just evangelize, because it is all they know.

>hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f

Most of this is just complaints about how fast the language is developing and how large the community is. Nothing is worse than having a language with the exact opposite.

Having JSON consistency throughout an entire system from database to back-end to front-end is godsend. No unnecessary unmarshalling/remarshalling JSON performance hits, bugs, and developer overhead. If you use Mongo or a similar NoSQL DB then you can do your database scripting in javascript as well, while not having to require an ORM. Or if you need one, to have something very light if you need fully/semi structured schemas. Another nifty feature.

Sup Forums is not a hivemind you dumbass

>Managers don't choose languages. Engineers tell them what to support and then they just evangelize, because it is all they know.
managers take advice, then decide what to go ahead with. Good managers listen, bad managers dictate without giving a fuck.

>Most of this is just complaints about how fast the language is developing and how large the community is. Nothing is worse than having a language with the exact opposite.
kek

Go ahead and create a few threads that are language specific on Sup Forums then. See how much shitposting there will be because the language topic of said thread will be considered shit.

i mean assuming you're not claiming you just came up with that example from nothing, i would hazard a guess that the answer is in the talk you pulled the example from. youtube.com/watch?v=EDUa_nkpOBk

>kek

Javascript is easily the most dominant language today. Its rate of growth is Meteoric. Since Nodejs it is probably the fastest growing and adopted language in projects of all time. You will not see a language so swiftly adopted in corporate in quite some time.

The scoping rules border on being broken, OO is hacked in, yet used frequently, and callbacks are one of the worst ways you can achieve concurrency.
JS has no place on the backend, I'm yet to see node code that isn't a huge mess.

>dominant === good
It has the lowest barrier of entry for those wordpress "admins" looking for some new buzzwords to peddle to unsuspecting small business owners.

Orr hipster faggots looking to fund their retarded idea so that they can buy pot plants for their minimalistic offices and expensive beard trimming equipment. Which usually results in pointless websites like this: aprilzero.com/

While "cool" it's pointless.

I don't particularly hate it. That said, multiprocessing is not its strong suit. IPC is awful to try to deal with in it, particularly if you're spawning a child process not written in Node.

Also, the cluster module's behaviour is dependent on which OS you're running. Any code you write in it isn't guaranteed to run exactly the way you intend it to on Windows if you're testing it on Linux, say.

Those are not arguments. I have no idea what kind of pathetic life you must be living to waste your time writing that post.

Use Erlang/Elixir or Rust if concurrency is important to your application.

With Nodejs you are better off spinning as many instances of your application instead of trying to write a single, highly concurrent instance.

>what is let/const
>what are classes
>what are promises
It's like you're from 2008 or something.

hey what about JITs you fucking faggot? Ah, that's right, you have to search it first

People who hate on Javascript after ES2015 are people who have not used the new standard or are just bad programmers.

A legitimate criticism would have been the type system.

there is nothing wrong with nodejs in particular. many people use it and love it. Sup Forums is not represetantive, there are a lot of GNU/autism c programmers who rather write "minimalistic" code etc (and its endups blocking and unsafe).

tho to be fair, don't use for a > 100k SLOC project.

>what is typescript

...

Stop spouting buzzwords you don't understand. JITs have nothing to do with dynamic or loose typing.

Kek. I had an interviewer tell me that they were looking for someone with functional programming experience because they wrote JS+React in a "functional way".

i don't begrudge interviewers and whatnot for saying stuff like that. as an interviewer i want to know if someone is completely full of shit and as an interviewee i would like to know that too. it can be difficult to determine that kind of information about a company from the outside, especially if they're small and don't have a firmly established reputation (e.g. any startup)

well at least he isn't using jquery to manipulate the DOM!

>what is typescript

A superset of Javascript that can be transpiled into javascript. As in, not javascript anymore than Elm or Purescript is javascript.

It's the new PHP, in that it allows people to quickly put something together, which is good, but it also allows people who have no business putting things online to do so.

>I'm a c++ developer, my dicks so big
>let me just create a web app real quick it can't be that hard
>holy shit, why is this so hard? what the fuck is a reducer? what is this jsx shit? seriously how the fuck does webpack work? what's it even doing?
>I can't do this
>it's not because I'm a brainlet. I can't be. I"M A C++ DEVELEPRR
>it must be because this language sucks
>FUCK THIS LANGUAGE
>REEEEEEEEEEEEEEEEEEEEEEE

Sup Forums is not one person. Why do you care so much about the opinions? Most people are just trying to shit up threads, same thing happens to any other thread. If you make a thread like
>C IS GOAT FITE ME
or
>Why all the hate for Java?
Then you can expect nothing constructive to come of the thread because it is shitty OP

This is a sane and functional way of writing a front-end.

Enjoy your shitty direct DOM manipulation, unpredictable state changes, and maintainability nightmares for any reasonably complex application by going with vanilla javascript.

>Mongo
You've never used a database for anything other than an object store? And you think it's ok to tell people that they won't ever need to do anything else other than use it as an object store? Fucking disgusting. It's awful that you can't even think of any other uses for a database, or the data that your apps capture.

You need to be told right now: you're a shit programmer. You need to stop.

>If you use Mongodb
>if you use
>if
>use

English must not be your first language. My condolences.

lol he added the event listener outside of react and stores state on the global object. on every button click, he rerenders and then adds another event listener.

also
>throw new Error('wrong this')
lmfao

also this
>(e) => {return handleButtonClick.bind(window, e)(e);}

also 'use strict' on 2nd line

this is like a wheres waldo of mistakes lmfao

>dom manipulation with react

you on some shrooms my nigga?

>some retarded person uses language
>that must mean that the language is bad
I guess we should stop using C/C++ because people write code vulnerable to buffer overruns all the time.

nothing wrong with this code
and Im saying that as someone who has been a node.js and react software engineer for the past two years...

>the word "if" somehow overrides calling it a godsend

Yep, you're retarded. My condolences.

Nice false flag attempt.

Javascript is a great language as long as you remember it's a scripting language.

Not him but a a bad language will pronounce those problems

>nothing wrong with code written by a retard
>I would know - I am retarded myself

>a type system so bad that a triple-equals operator is needed

I like node.js without frameworks and when you're using multiple procs / clusters, its faster than python, ruby or PHP so it's the lesser of cancers

>*cough*php*cough*
its alright as long as node (and electron) is out of the picture

>inb4 wat?
kys

The longer you stare at it the more you see, it's fractal.

Sup Forums just wants assembly code

...

can yall fucks do this in your language?

#!/usr/bin/env node --stack-size=8192
with(JSON){f=a=>((a=((f,s=stringify)=>(g=>g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(s=>(a,b)=>(b)?s(a^b,(a&b)g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(d=>(a,b)=>(a==b)?0:(b(g=>g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(s=>(a,b)=>(b)?s(a^b,(a&b)g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(s=>(a,b)=>(b)?s(a^b,(a&b)g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(d=>(a,b)=>(a==b)?0:(b(g=>g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(s=>(a,b)=>(b)?s(a^b,(a&b)g(g))(x=>f((...v)=>(k=>k in x?x[k]:x[k]=x(x)(...v))(s(v)))))(s=>(a,b)=>(b)?s(a^b,(a&b)

JavaScript should only be use minimally on websites

Not fucking everywhere, even the desktop