Craziness if you ask me. It isn't that developers don't need a good scripting type language, just that JavaScript is far from ideal. Personally Python would be a good solution for app development.
In any event this thread highlights a big issue with Linux, both KDE and Gnome are terrible development environments. People are starting to realize this and maybe that is why JavaScript is being promoted. However this more or less implies that Gnome needs to be rethought.
I really don't see a big difference from KDE. I get the impression kde propagate for java script/QML int the gui more and more and javascript or c++ in the other layer. To me it's look like the full c++ apps is destined to disappear also on kde. Plasma2 is supposed to be mostly in qml and javascript and also kwin use qml or javascript for animation and behavioral scripting.
The underlying code in the libs is c++ just as its c on gnome.
Maybe on the desktop, but in mobile/embedded at least Qt/QML etc. is doing quite well, looks like GNOME is finally getting on that train too* with JS, alongside FFOS & others.
Considering bindings do exist & are fairly well maintained, I would've preferred to have seen them come on-board w/Qt/QML, BUT given political clashes in the past I half-expected that to not happen, sadly.
That of course is only part of the equation, they are way more entrenched in the js side of things, so the upheaval isn't exactly easy...
*in a more coordinated/consolidated way then ever before
Last edited by jalyst; 02-05-2013 at 07:42 AM.
While I too prefer Python over JS (though I have honestly not used the latter for desktop applications) I see why they chose it. Gnome-Shell already allows (requires?) extensions to be written in javascript, so extending this to be the preferred language for other applications seems logical.
JavaScript is unsuitable for non-trivial applications because of
1. dynamic typing - performance will be (much) worse than with static typing in most cases
2. runtime compilation - compiler increases memory usage and slows down application especially start-up - code compiled during runtime can't be shared between processes/applications
Last edited by JS987; 02-05-2013 at 08:11 AM.
http://highscalability.com/youtube-architecture
Youtube is also using Apache written in C and MySQL written in C/C++.
Youtube can add more servers if performance isn't sufficient.
Youtube web application is trivial compared to MySQL.