The movement to JavaScript is a product of web developers branching out into other areas (great!) without taking the time to learn another language (not so great :/). I don't think performance is an end in and of itself, and I don't turn my nose up at picking a technology because developers and expensive and processing power is cheap, but I still think writing everything in JavaScript is a step backward.
edit: Accidentally wrote developers are cheap and processing power is expensive :P
In my first programming job, there were a few senior programmers who were then in their 50s, meaning they started programming in the 70s (before microcomputers). In those days, the way you became a programmer was to major in electrical engineering. That's why even now, a number of top universities (MIT, Berkeley, Ann Arbor, Rice) have combined departments of "electrical engineering and computer science".
How many C++ and Java programmers these days know how to work their way around NAND gates, digital logic, and RCI circuits? How many know how a transistor works? How many know how to build a mux in hardware, or an adder, or what's in a RAM cell?
I'm sure there are some, but by and large, I think it's an improvement that we don't think about digital logic and binary representations when we write our program. The cycle of moving up the abstraction hierarchy has been going on since high-level languages were invented in the 50s. Today's tools and frameworks are the low-level building blocks of tomorrow.
Your concerns involve bundling whole web browsers with the desktop applications. We'll probably see a desktop version of react-native in the near future, making things much more lightweight.
[0] Without barely any GUI, it was mostly a canvas.
As compared to what? Compared to other interpreted languages, sure, but you're looking at least an order of magnitude compared to other VMs.
The performances of editors like Atom or Brackets tell us another story.
Web UIs might be fine for an LOB app but then, an LOB app doesn't need to be a desktop app. No, current JS engines (JS is a language, it doesn't have performances) are definitely not fast enough. Compared to the kind of performances that can be achieved with the JVM or QT.
This is not true. Unless you have a god-compiler that takes your JavaScript and spits out compiled code that doesn't use dynamic typing or a GC, the nature of the language has a significant influence on performance.
Well , my point is JS is a spec. You can argue that some language features will make the language slow(er than statically typed languages),and I'd agree.
Anyway, the discussion is the use of JS. The language is fine but the UI "library" is not (a whole web rendering engine).
Raising the barrier to entry doesn't "raise the bar" when it comes to software quality. It just adds artificial difficulty.
The hard part about writing software shouldn't be Hello World. It should be building a user experience people enjoy. The less steps to get to that point, the better.
Ditto PHP, Node.js, Rails, and any other technology aimed at opening up programming to a larger audience.
This trend has a while to go: while there are vastly more programmers out there than when I started programming, there are still vastly more non-programmers than programmers, and I believe that ultimately mastery of machines will become as important as literacy.