Can someone explain to a brainlet why JavaScript is considered a brainlet programming language? Same with Ruby
Can someone explain to a brainlet why JavaScript is considered a brainlet programming language? Same with Ruby
Other urls found in this thread:
Because people will argue and be elitist about literally anything
It's easy to do things in. Also, don't bother with plain JS, you'll hate how functions inside functions inside functions it gets. Look up ECMAScript 6 tutorials.
here's a hint: if someone says that a language is trash/useless and nothing else than they have failed to adapt. That's all it is
99% of JS, Rails users are brainlets, plus
Its typeless and doesnt compile
something tells me you've "failed to adapt" to real programming languages like C
i am fluent in all but 1 language
can you guess?
English.
ECMAScript is plain JS brainlet.
I think its beacause of all the stupid JS frameworks that have sprouted up over the last five years .
people are using it for shit that it shouldnt be used for.
see:
electronjs.org
Ever heard of TypeScript?
Transpiling is not the same as compiling
[1,2,3,4,5,6,7,8,9,10].sort();
> [1, 10, 2, 3, 4, 5, 6, 7, 8, 9]
It's not really "bad" per se, but there are a lot of aspects fo the language and the community around the language that make it unconventional (to put it nicely).
1) JS is not compiled, meaning that perf will, in theory, not be as good as a compiled language like C. In reality, it's about 1.8x slower than C when run with V8, and for web, that perf overhead is negligible.
2) You pretty much NEED frameworks to make use it efficiently. Node, React, Angular, etc... They all solve shortcomings of the language, but now you're relying on 3rd parties to make your language work for you.
3) No native typing. However, TypeScript and Flow pretty much fix this issue (again, another 3rd party).
4) Language CONSTANTLY changing. So much syntactic sugar that's always evolving, and to maintain browser compatibility, you often need something like Babble so you're guaranteed that a newer syntax won't break other browsers.
To be honest, I do React/Redux all day, every day, and I love it. I think the biggest issue people have is that the whole JS ecosystem is kind of fragmented and unstable, and every day a new framework is developed to overcome some issue that the language has.
It's because 90% of JS developers are webshits that primarily do HTML/CSS and struggle their way through JS. The result is messy unmaintainable code that is made worse by JS's weak typing and general structure. I have seen good, well designed JS in the wild but Sturgeon's Law applies to JS source more than any other language
what the fuck
what's wrong with function composition?
it's alphabetical
wtf, ECMAScript is the Javascript spec you dolt.
Natural sorting isn't standard brainlet
Tony, get off of 4channel
When you consider the historical context of how Javascript came to be I can't help but be amazed at the efforts of turning what is an abomination of a language into something that is pretty usable with modern tooling and libraries. React is a brilliant example of working with a piece of shit and providing a really solid framework and just doing the shit you care about. The reality is we're stuck with Javascript and the limitations of browsers for the foreseeable future. We now have some decent tools available to us to make developing web shit not so painful (yes, there are still painful and confusing things but it's just a byproduct of working with such a garbage foundation).
My 2 cents. I'm just not one to get too ideological about programming languages. They're just tools and these days Javascript isn't too bad to use for doing web shit.
well my C usually doesn't compile either
It is, but there's a difference between using regular old functions, vars, etc. and using the new arrow functions and cont and let, especially if we talk in performance.
It gets confusing for brainlets/noobs
JS is shit and therefore the people shilling it are brainlets.
>hurr durr callback hell is just how js was designed
>You wanna pause execution? go use async functions, that's a different kind of hell
> Angular 2+
Honestly, the problem here is weak dynamic typing. I'm not sure how you can look at this and say "yes, treating strings and numbers interchangeably is okay" when a strong static type system would have ensured that strings get sorted alphabetically and numbers get sorted by their natural order.
[1,2,3,4,5,6,7,8,9,10].sort((a,b)=>(a-b))
[1,2,3,4,5,6,7,8,9,10].sort((a,b) => a>b);