Same with PHP and JAVA. Dysfunctional languages, yes. But fun and easy to use.
In terms of (Power)/(Time to Learn) Javascript comes very high, if not top.
Which throws away the two biggest strengths of Javascript: it works everywhere, and is compatible with tons of existing code.
1: https://medium.com/javascript-non-grata/javascript-the-next-...
Google tried this with Dart and failed.
JS is both a compiler target and a language itself. WebAssembly enhances the runtime as a compiler target.
JS is also moving very fast, as evidenced by Babel. There are some big, bold ideas being explored in React, Angular, Om, elm, clojurescript, etc. I hesitate to take seriously anyone who thinks this is a bad thing, just as I hesitate to take seriously anyone who is a strong supporter of a major political party.
We simply don't need a single point of authority telling us the best way to do things, even if they are soon obsoleted, competition and sharing of ideas is good. I've learned a lot by exploring all of the frameworks he mentioned. Recently the Ember and React teams have been collaborating extensively, and I can't wait to see all that comes out of it (notably with respect to styling components).
The most embarrassing assertion the author makes is that CS curricula teach "programming languages". It teaches a way of thinking, and it really doesn't matter much which language is used as long as the basic principles are covered. JS might make a good language to look at when studying language design tradeoffs, since in some ways it falls short but has also become the dominant language when measured in terms of the number of runtimes in use in the world at any given moment.
So while the author does seem to wish to be constructive (he links to a vague proposal) the article is just clickbait and really shouldn't be taken seriously. If you are a new programmer reading the article and feeling discouraged, don't lose heart. Build stuff and you'll learn. Eventually try some other languages if all you've tried is JS, but don't listen to the nonsense in the article.
Nevertheless, schools do not want to teach an inferior language that encourages bad programming habits. They (now) tend to rely on languages with a vocational bent, such as Python and Java. I remember my days in university when odd languages like Scheme and Turing were taught. Now, it's sensible to at least try to prepare the student for the job market. I'm glad they didn't stoop to JavaScript.
> If you are a new programmer reading the article and feeling discouraged, don't lose heart. Build stuff and you'll learn.
Why should a new programmer feel discouraged? There are plenty of good languages to choose from (Java, C#, Python, C++, Ruby, etc.). They offer varying levels of ease, but Python and Ruby would be more than good enough. If you want to do web development, use a transpiled language (). That'll save you much of the grief of JavaScript. (My personal favourite is Amber Smalltalk.)
I agree, build stuff and learn.
I'm glad you mentioned ClojureScript. I didn't successfully add this link to my previous comment because ycombinator had a hiccup, but I recommend using transpiled languages instead of JS: https://medium.com/javascript-non-grata/the-super-surrogates...
Languages like Amber, Brython, ClojureScript, Dart, Haxe and Scala.js are great alternatives to using JS.
Sorry, but this author is just the equivalent of an old man yelling at kids to get off his lawn... but worse, it's not even his lawn, never was, and the "kids" are the ones who built his home over the last 15 years.
He looks out of date, out of touch, and unwilling to develop skills and knowledge.
Not a good look.
1. Javascript popularity is tied to web popularity
2. Web popularity is shrinking
But he makes it in such a histrionic way that it's hard to focus on that over his bombast.
You can sound the alarms over almost any language if you want too, it's fun but hardly informative.
Java - only for companies that don't want to be agile
Python - Great for hacking on the weekends, but no killer use case
Ruby - Only has Rails, and the web is shrinking
Haskell/Scala/Whatever - Never gonna break out of a university
These are well worn arguments that don't really capture that jobs and companies tech stacks are much more nuanced than these simple statements. If you care about code, you'll find work, no matter what language beguiled you first. If anything, Javascript hasn't beguiled a generation of developers, the web has. And if we move on from the web, we'll move on from JS, and as long as we care about what's next, we'll thrive.
Sure the syntax is pretty meh, the community is disorganized, performance is OK, and there are a lot of poorly written libraries out there... but it's downright amazing how much surface Javascript+Browser covers. WebGL, WebVR, WebCL, WebRTC, hell even just the out-of-the-box cross-platform UI. Install Node and you get access to all the systems stuff as well.
It's my job to write Ruby and I love the language. I also really enjoyed C++ and Python... but Javascript is now my go-to language outside of work. It's amazing, it's like it was made for hacking.
2. JavaScript does about everything
3. There are many JavaScript developers
1. and 2. are enough for me and 3. is enough for most companies.
JS is the next stage of the Web after PHP
(I think JS has a lot of flaws, but it's not as bad as its reputation suggests.)
However it's not a simple issue to change it at this point, but people ARE aware.
The only interesting bit is whether it will be webassembly or something else that actually drags us into a paradigm shift for the web.
It is rock solid, has a nice and friendly community, tons of resources, several high-quality open source implementations and the Java language itself has 2 or 3 IDEs in the top 10 IDEs list (ok, the last one is my subjective opinion.)
I'm interested in this as well. The near term plans, though, don't give wasm languages dom access, and limits wasm to statically typed languages. So, it's basically relegated to being an ffi layer for js for quite some time. I don't see that changing the world much.
After all, why have a simple left-pad function, when I have lots and lots of modules, just to achieve the same result?
Replace Javascript with PHP and you get the usual complaint people have about PHP (but there's still Facebook). Replace a few words and Javascript with Java and you get another common complaint, still, all these languages are in active use at various companies, so maybe they have their uses?
Dunning-Kruger in action.
Your comment ignores legacy code bases, which are common at large companies, in favor of an unrealistic yard stick.
So what industry-favourite, startup-embraced, wildly popular language does this author advocate?
Smalltalk.
Seriously?
As for games, what serious gaming platform relies on WebGL? Most games are written in C++ for a reason: maximum performance. When I was Project Team Leader of the Windows NT Driver Group at ATI Technologies (now AMD), all the OpenGL software I saw was written in C++. JavaScript could never have been usable, even with V8.
Smalltalk, seriously. It's still used today around the world by many businesses. Cincom and GemTalk are major Smalltalk vendors. I have friends working at Cherniak Software and Simberon, both important Smalltalk software houses. ESUG (European Smalltalk User Group) is a mammoth organization representing hundreds of companies using Smalltalk. What did you say about "a position of obvious ignorance?"
I've written serious things in JS (ok, ECMA Script) back before a lot of people around here started coding it seems. Back when IE ruled the web and SVG was an Adobe plugin to IE.
And I say this post isn't too bad.
Next time you make such a bold claim, maybe Google it for a few seconds ;-) Legacy SAP stuff predates Javascript. Modern SAP stuff is different, "HANA Extended Application Services" is actually a server-side Javascript runtime. What is HANA made for? Exactly, "critical Business Intelligence data" ;-)
http://scn.sap.com/community/developer-center/hana/blog/2015...
http://help.sap.com/hana/SAP_HANA_Developer_Guide_for_SAP_HA...
(I’m obviously joking here. I’m not 15 anymore. If you pay me to build your house with that particular hammer, fine.)
Proceed if you enjoy programming language screeds, this one makes few technical points and focused on the argument that learning JS is not a practical professional decision.
I'd probably also add that a lot of that is probably copies of popular libraries just getting checked into people's projects implemented primarily in other languages.
I'm more excited about SPAs and other stuff happening in the browser than this guy is but I don't really get the JS outside of the browser hype.
For one thing, it's an intellectually interesting space to be in and for another, there is so much of the open source community working in this space, it just simply allows me to stand on the shoulders of giants and deliver.
Checkout http://githut.info/ and, yes npm.
I recognise there are failings in JavaScript and that is why I've switched to TypeScript and now transpile to JavaScript.
Do I think there are problems with JavaScript? Of course there are, but does it make it a bad language? No.
I'm not sure what the author means by "basing their businesses on JavaScript" but lots of Fortune 500 companies are using the SPA frameworks he decried. Facebook (Fortune 500) - not only uses - but invented React, Google invented Angular, and the Fortune 500 company I work for has Angular applications in production.
Maybe the author meant "No Fortune 500 company is putting all their eggs in one basket," but that's just tech in general.
I do agree, at a high level, that the litany of frameworks, and which ones to use together...is a barrier right now.
It's somewhat amusing to compare the effort required to make a relatively simple "SPA", versus doing the same thing in a "fat client" via C#, Java/Swing, or similar.
But, it's a relatively new ecosystem. I'm sure the dust will settle sooner or later, and a reasonable end-to-end solution will emerge.
Ember is nearly 5 years old. I don't use it, but it's very much a mature project.
Stupid article.
But my confusion remains: how big are all these Node apps, what are they being used for, how robust have they proven to be, how happy are these companies with their Node server side code, how far will these Node apps be extended, how much more Node will these companies be implementing, etc.
My skepticism is fueled, in part, by numerous incidents like the one recently on the Atlanta JavaScript Slack channel, where a Node Evangelist was telling everyone how WordPress had rebuilt their infrastructure in Node. Problem is, WordPress has done nothing of the sort. They actually built a small downloadable app for WordPress admins to use in managing their WordPress sites, as far as I could figure out. Which is precisely what Node MIGHT be considered good for, no doubt about it.
But that's not what our Node Evangelist friend was preaching. And I just get the feeling that a lot of people who are spreading the Node Word are misunderstanding some of the facts on the ground. There might be some wishful thinking in Node Land. Because I wouldn't choose Node over any of 6 other server side languages right now, and I sure wouldn't attempt to build robust apps for our clients on such a fragmented and messy ecosystem of modules and shiny fads.
On that note,, where's the Django or Rails or .NET or Spring of Node Land? I can't seem to find it, and without it, Node is a non-starter for so many professionals. Just seems obvious, but maybe I'm wrong.
No worries. My main criticism is that the author's position (that big companies aren't relying on JS) was over-stated (or vacuously true, if we're being charitable).
> And I just get the feeling that a lot of people who are spreading the Node Word are misunderstanding some of the facts on the ground.
That wouldn't surprise me
> On that note,, where's the Django or Rails or .NET or Spring of Node Land?
I don't know much about ReactJS, but it's my understanding that you can switch between client-side and server-side templating in a way that's transparent to the developer. That's probably the closest thing you'll find to Spring.
There's also Jade (http://jade-lang.com/), but that's not a framework.
1.which app(s) did Walmart build with nothing but Node on the back end?
2.How has it worked out? Are they happy with that software?
3. Any internal plans to rebuild with something else, or are they going to use Node in even more places in the near future?
Honest questions.
[1]https://www.quora.com/What-are-the-biggest-websites-built-wi...
I'm really interested in what large-scale production apps, commercial or in-house enterprise, are currently using Node on the server? For sure, not just misinterpretation and wishful thinking?
"Node has been ... relegated to a web niche. ERP solutions ... aren’t using Node... don’t expect any serious shop to be washing their ... data through JS code...Fortune 500 shops aren’t basing their businesses on JavaScript ... JavaScript is intrinsically a dysfunctional language.... more flaws than any other programming language... JavaScript is wholly unsuitable for serious software... tens of thousands of lines of code ...difficult to ensure a specific level of quality..."
He's just ranting around. Even the "sources" are just scattered links to other rants of him...
There's no valid reason why most people should choose JS on the server instead of Ruby, Python, PHP, C# or Java, except that so many people know JS and so many people love shiny "cool" stuff. Node is a deeply flawed and very messy ecosystem.
Verdict: no, but thanks.
It's faster than the first 3 of those and easier to write than the last 2. It handles concurrency better than the first 3 as well.
I'll be sure to let Ebay, Paypal, Yahoo, Walmart, AirBnB, Netflix, Uber.. etc that they are clearly wrong: because you said so.
I've seen some links to a few articles that date back 3-5 years, but nothing more current, and nothing very detailed at all. That list of companies you typed out is the same list of companies everybody always types out. I'm wondering about some actual details. I don't think that's unfair.
In 2008 V8 was released and 2009 Node was released. But that is merely the newest epoch of the current wave.
JavaScript has been taken seriously by those paying attention for ~13 years. They've been building the web with it while others complain about it.
So sorry, I rounded up by 2 years. But hyperbolic? Not really.
You seriously mean something was brewing 4 years before that?
However they all are very active in the conference circuit (and on their engineering blogs) talking about their current work in Node.
Its not unfair to ask but not everyone can give you the kind of information you seek.
PayPal is frequently cited as one of the companies "using Node", for instance. But PayPal's Web site is running on Apache. Where's all that Node? Is it being used internally, for micro-services or something? For a mobile app? I can't find PayPal's Big Bundle o'Node.
The author's gist is that there IS NO HUGE WAVE of companies re-architecting their code bases in Node, and that, furthermore, the rampant proliferation of JS front-end frameworks looks crazy and frothy and misguided. And nobody ever produces any real, hard data to counter that general set of points. It's always the same stuff: "here's a list of companies that use Node", and "Node is the future and you're just old", "all the cool kids are using React even though it is wildly over-engineered for most use cases", etc. It's mind-numbing and repetitive and weird.