News for hackers. Stuff that matters.
Re:React Native: Initial Thoughts by lucian1900 on Monday March 30, 2015 @09:20AM (#9289254)
But JavaScript is a bad language, objectively. There's little debate on that subject.

Most of us use it because we have to, even though there are much better languages available.

Re:React Native: Initial Thoughts by ceejayoz on Monday March 30, 2015 @09:26AM (#9289284)
> Most of us use it because we have to, even though there are much better languages available.

Node's popularity is a pretty dramatic counterexample to that assertion.

Re:React Native: Initial Thoughts by smt88 on Monday March 30, 2015 @09:33AM (#9289346)
> Node's popularity is a pretty dramatic counterexample to that assertion.

Popularity has nothing to do with quality. Node is popular because so many people knew JavaScript anyway. JavaScript is popular because it was the only widely-supported programming language for the browser (other than ActionScript, which is itself an ECMAScript flavor).

Re:React Native: Initial Thoughts by retardedelk on Monday March 30, 2015 @10:54AM (#9289896)
More important that "so many people knew JavaScript anyway", is the fact that using the same code in the browser as on the server means that they can share code, data-models, tests, and it makes it trivial to develop isomorphic web applications.
Re:React Native: Initial Thoughts by shiggerino on Monday March 30, 2015 @11:01AM (#9289940)
> Node is popular because so many people knew JavaScript anyway.

Is that true, though? I see very few JavaScript developers with a solid background in computer science or software engineering on the job market, compared to the demand these days, as more and more stuff goes to the browser or native HTML applications. Taking kids out of web design schools is too much of a gamble unless you already have a senior JS dev on the team to keep an eye on them.

But then again it might be different in places like Silicon Valley.

Re:React Native: Initial Thoughts by smt88 on Monday March 30, 2015 @11:27AM (#9290134)
> Is that true, though? I see very few JavaScript developers with a solid background in computer science or software engineering on the job market

That's exactly my point. A huge amount of labor for developing web apps are people who have not come from CS/engineering backgrounds. They're self-taught, and a lot of them started with web technologies.

So it was really easy for those people to transition into backend development because they already knew JavaScript.

Re:React Native: Initial Thoughts by ceejayoz on Monday March 30, 2015 @10:47AM (#9289844)
> Popularity has nothing to do with quality

And that has nothing to do with the discussion at hand.

The statement "Most of us use it because we have to" is pretty clearly refuted by the fact that no one had to use JS on the server-side, yet plenty still pick Node over other alternatives (even ones they know well).

Re:React Native: Initial Thoughts by smt88 on Monday March 30, 2015 @11:08AM (#9289999)
No one "has to" use anything, even if they only know that one thing. It doesn't take that long to learn a new language.

I wasn't saying that people use it because they have to. There are a lot of reasons to use Node on the server side that are still unrelated to the quality of JavaScript as a language.

1) Easy asynchronous execution (something that is also making Go very popular)

2) Easy to get started

3) Lots of existing libraries

4) Everyone, including frontend devs, knows it already

If you're starting a Python project, you're probably going to prefer hiring Python devs. If you're starting a Node project, you can hire anyone who has done full-stack or frontend work, including Ruby and PHP devs.

Again, all of those are really compelling reasons to use Node, but they have nothing to do with the way JavaScript is designed. The seminal JavaScript book ("The Good Parts") even alludes to the fact that it's not a thoroughly good language.

Further evidence that it's not a good language are the huge number of compile-to-JavaScript projects popping up (TypeScript and Go come to mind).

I also went to a JavaScript conference, and not a single company was using Node through their whole stack, even for new projects. They were typically using Ruby, Python, or PHP for the bulk of their backend, and JavaScript was a thin API layer. I know this is also the case at Yahoo and probably some other companies.

I could write a lot about why I (and lots of others in the dev community) find JavaScript to be Blub-y and fragile, but this is long enough already. The dynamic typing and many ways it behaves unexpectedly are among the major problems.

Re:React Native: Initial Thoughts by wolfwyrd on Monday March 30, 2015 @10:16AM (#9289627)
By that reasoning PHP must be amazing
Re:React Native: Initial Thoughts by ceejayoz on Monday March 30, 2015 @10:46AM (#9289834)
With things like Symfony/Laravel and HHVM/PHP7, it can be.
Re:React Native: Initial Thoughts by WorldWideWayne on Monday March 30, 2015 @11:49AM (#9290282)
Windows too.

(Disclaimer: I actually think that many facets of Windows are better than anything else, but I know many here do not.)

Re:React Native: Initial Thoughts by EugeneOZ on Monday March 30, 2015 @09:37AM (#9289371)
I think you overestimate Node's popularity, compared to other languages on the server side.
Re:React Native: Initial Thoughts by xasos on Monday March 30, 2015 @09:56AM (#9289492)
It's getting more significant. Keep in mind it's only been around for five years, and still has a very good adoption rate for a new technology.
Re:React Native: Initial Thoughts by Touche on Monday March 30, 2015 @10:10AM (#9289570)
How would you measure such a thing? NPM has more modules than any other language package manager, isn't that evidence that Node is at least somewhat popular?
Re:React Native: Initial Thoughts by EugeneOZ on Monday March 30, 2015 @10:31AM (#9289730)
I didn't say it's not popular. I'm just saying Node's popularity is not even near to Java or PHP. But I agree that Node's/io.js hype is much louder nowadays :)
Re:React Native: Initial Thoughts by Touche on Monday March 30, 2015 @10:40AM (#9289794)
Does it have to be the most popular runtime to counter the "no one really likes JavaScript, we just use it because we have to" claim? As the grandparent said, no one has to use Node, but people do; a lot of them.

I find this topic to be intellectually insulting. You know that JavaScript has its (tens of thousands of) fans. Why tell yourself otherwise? Is your hatred of it so overwhelming that you're not even ready to admit to yourself that others disagree with you?

Re:React Native: Initial Thoughts by EugeneOZ on Monday March 30, 2015 @11:02AM (#9289951)
"we have to" was not my phrase and it was about client side, not server side. And it's true. Somebody love JS, somebody not so much - nothing wrong with it. People are different and it's the key of evolution.
Re:React Native: Initial Thoughts by Touche on Monday March 30, 2015 @11:28AM (#9290136)
We're all responding to this statement.

> But JavaScript is a bad language, objectively. There's little debate on that subject.

Which is obviously false, there is lots of debate on the subject. So can we grow up and get past these blanket statements?

Re:React Native: Initial Thoughts by StavrosK on Monday March 30, 2015 @11:14AM (#9290042)
Node is definitely popular, but the fact that there are more modules than any other language is a bit misleading. Python, specifically, tends to only have one main/popular package that does something, whereas in other languages' cultures I've noticed that there are a few alternatives to choose from.
Re:React Native: Initial Thoughts by hokkos on Monday March 30, 2015 @11:59AM (#9290369)
Node modules are really, really bad compared to maven or NuGet. Most of them comprise of less than 100 lines of codes.
Re:React Native: Initial Thoughts by 15155 on Monday March 30, 2015 @12:17PM (#9290517)
This is NOT a bad thing, and it's one of the things I personally love most about NPM and the node community in general.
Re:React Native: Initial Thoughts by empthought on Monday March 30, 2015 @02:19PM (#9291441)
Yes, it is a bad thing. It means your upstream dependencies are snippets instead of products.
Re:React Native: Initial Thoughts by bonif on Monday March 30, 2015 @12:44PM (#9290724)
Sure, McDonalds is in fact the best food available. Come on
Re:React Native: Initial Thoughts by emodendroket on Monday March 30, 2015 @09:45AM (#9289424)
Have you just recently stepped out of a time machine? There is quite a bit of debate on that subject.
Re:React Native: Initial Thoughts by PSeitz on Monday March 30, 2015 @09:39AM (#9289377)
Every language hat it pros and cons. Overall we could do much worse than JavaScript.
Re:React Native: Initial Thoughts by EugeneOZ on Monday March 30, 2015 @09:41AM (#9289393)
It's strange to expect something else from the JS framework, so it's a really moot point in the list.
Re:React Native: Initial Thoughts by mrcwinn on Monday March 30, 2015 @09:26AM (#9289286)
There's nothing objective about that statement, since it depends on what you value. If you value having a language that is supported natively by every browser, I would argue JavaScript is - subjectively - quite fantastic!
Re:React Native: Initial Thoughts by EugeneOZ on Monday March 30, 2015 @09:36AM (#9289363)
It's like use iron for any work just because it's most widely available element on the Earth.
Re:React Native: Initial Thoughts by lucian1900 on Monday March 30, 2015 @10:00AM (#9289511)
In isolation of its ubiquity, JS is not a good language.
Re:React Native: Initial Thoughts by grandalf on Monday March 30, 2015 @10:44AM (#9289822)
Of which is that true: ES5, ES6, ES7, etc.? Clojurescript, typescript, etc.?