
The last time I got any Yahoo! sprinkled on me I wound up with a social disease.
Its business future might be uncertain, but Yahoo! has committed (technologically at least) to a project pushing server-side JavaScript. Yahoo!, along with API management vendor Apigee and JavaScript startup consultant RisingStack, has joined the Linux Foundation’s Node.js Foundation. The web-portal-email-search-forums …
No, it's the top of the bubble economy.
There is the "pointless skyscraper correlation" whereby it is stated that the highest and most economically senseless skyscrapers are built just before the economy fueled by freshly printed money inevitably implodes (look up the one someone now wants to build in Basra. Yes, Basra!)
There must be a "pointless IT tech correlation" whereby square wheels are pushed out as new and refreshing stuff that one absolutely has to know about, so buy the book -- while perfectly elegant, good, optimized and tested solutions exist by the shedload.
The idea of using Node.js is it's event driven so (theoretically) it scales a lot better and a single instance could be serving hundreds of requests while a solution in PHP (for example) might be limited to the same number of concurrent connections as there are threads. Node.js also has a pretty impressive developer community with hundreds of modules. You could literally have a web server up and running with a couple of modules and a few lines of code.
That said, Javascript is a horrible language. It's verbose and it's full of idiosyncrasies which can be quite subtle and dangerous e.g. the difference between undefined and null, or the difference between == (equality) and === (identity) and so on. Even Typescript is just a veneer over this but it's better than nothing.
I guess it depends on what you want to do with the site.
Is this the same Yahoo web company with its finger so nailed on the pulse of the online zeitgeist that its consistently making a loss and is slowly going down the toilet thanks to its airhead - albeit photogenic - CEO?
In which case I won't be betting on node.js long term then. Besides, anyone who uses javascript as a backend language should be fired. The backend is where serious work needs to be done and data integrity is the number 1 priority followed by speed. Its not the browser side playpen that web devs inhabit where you can get anyway with second rate inefficient and bug ridden cut-n-paste garbage code.
There seem to be a number of uninformed commenters out there today.
Javascript as a language is perfectly fine. The idiosyncracies (eg == vs === or null vs undefined) are simple things that are picked up in no time and can actually be useful.
It is expressive, fast (yes, really), powerful, scaleable and easy/pleasant to code. Provided you are prepared to think how it does and not try to shoehorn things like classical inheritance in. It's biggest issue was the organisation of large scale project code, but Node's use of require and NPM packages handles that very nicely.
And speaking of NPM, I presume the reference to 'hundreds of modules' was a slip of the keyboard? NPM alone lists fractionally short of a quarter of a million.
> It is expressive, fast (yes, really), powerful, scaleable and easy/pleasant to code. ... It's biggest issue was the organisation of large scale project code
With respect; if speed is a priority, JavaScript is the wrong choice. You should shouldn't be using a dynamic language, you should be using Java, Go, Scala or maybe even C/C++.
If "expressiveness" is a priority, JavaScript is the wrong choice. It's really not that "expressive", when compared to PHP or Ruby.
It's powerful? What does that even mean? Any language that's Turing complete is "powerful".
Yes, it's scalable, and yes it's easy to get started in because it's so basic, but pleasant to program in? If you want a language that's pleasant to program, you'll find Ruby, Python or Perl a lot more fun.
The fact that you need Lodash (or one of the clones) to get basic tasks done, or the fact that coffeescript even exists, belies the fact that JavaScript is not a great language. It's not bad; there are just much better options for back-end available. In my opinion.