Gnome Goes JavaScript 387
mikejuk writes "Much to most programmers' shock and dismay Gnome has made JavaScript its main language for apps. It will still support other languages and it still supports C for libraries, but for apps it is JavaScript that rules. JavaScript seems to be a good choice for Gnome 3, as the shell UI is written in the language. It is also consistent with the use of JavaScript in WinRT, Chrome Apps, and FirefoxOS apps, and generally the rise of web apps. As you might expect, the initial reactions are of horror at the idea that JavaScript has been selected rather than the favorite language of the commenter. There is a great deal of ignorance about (and prejudice against) JavaScript, which is often regarded as an incomplete toy language rather than the elegant and sparse language that it actually is."
Are apps in WinRT, ChromeOS, and "FirefoxOS" good? (Score:1, Insightful)
Are apps in WinRT, ChromeOS, and "FirefoxOS" good? Anything people want so far?
Generally the "apps" which seem to be good quality are written in Objective-C on Mac and iOS. Of course much of this relates to libraries, but are we entirely sure there's no relation?
Sign of the Times (Score:3, Insightful)
Re:Enough rope (Score:5, Insightful)
TypeScript (http://www.typescriptlang.org/) adds some rigor on top of JavaScript that helps keep you from shooting your foot as often. It "compiles" down to JavaScript, so it shouldn't limit what you can do, but it makes it feel a little more like a real language.
But I'm fine with JavaScript. I think that it's a decent first language since the bare minimum tools you need are on all of the devices you can buy today (you just need a text editor and a browser to get started).
Still doesn't answer "Why" (Score:2, Insightful)
Gnome is officially dead. KDE has won. (Score:3, Insightful)
I went from using KDE exclusively to using Gnome exclusively back to using KDE exclusively.
The latest Gnome 3x sucks and is worse than the 2x series. The KDE 4x series is far superior to the flawed 3x series. KDE is on the right track with 5x while Gnome continues to stay on the wrong track doing things it's userbase isn't wanting it to do, taking features away which users love, "improving" the interface by making it harder to use or reducing flexibility.
Whoever is designing the Gnome interface sucks and this decision to choose Javascript over a language like Python, Ruby, or C#? Wtf are they thinking?
Elegant? (Score:5, Insightful)
Javascript is about as elegant as an oil tanker. Considerable effort has gone into tools and libraries to make working in it suck less, but it's hard to wipe away the problems inherent in the design.
They should have gone with Python (Score:2, Insightful)
Python is a language which makes app writing very easy. It's very easy to write, read, debug. It's also very fast when used right or modified.
This decision in my opinion is one of the boneheaded decisions which will be Gnomes final nail on the coffin. They had a chance to rule the Linux desktop with Ubuntu and since Gnome 3.0 have threw it all away. Everything that made Gnome great with the 2x series seems to have been lost at 3x and their release schedule is so slow that we are probably going to be stuck on 3x for 10 years. Goodbye Gnome and welcome back KDE.
Python or Ruby? (Score:2, Insightful)
Re:Enough rope (Score:5, Insightful)
I always like to think of it as being more that C leaves ropes, cliffs, pointy objects, and a few angry bears wandering around -- and it's up to the user to to look out for themselves.
If you know how to navigate it, and keep your wits about you, you'll mostly be fine. But if you're running around with your eyes closed or don't have adult supervision, you could really get hurt.
It doesn't actively come after you, but there's no safety nets either.
Re:Enough rope (Score:4, Insightful)
C gives you all the rope you could ever want, wraps it wround your neck and encourages you to run very fast across a long, wobbly plank.
I'd rather take the OP's version.
You could argue C gives you all the rope you need as well.
with the qualifier that far too many people do not know how to handle that much rope, so in the process they get it knotted and accidentally wrapped around various things, neck included. But otherwise C does not actively wrap rope around necks, it just doesn't have anti-neck-wrapping safeties for ropes.
Comment removed (Score:5, Insightful)
Well it's better than mono (Score:4, Insightful)
Re:Aprils Fools? (Score:3, Insightful)
Uhh, what? You're not making any sense. It's debatable whether Javascript is an ideal language for this kind of usage (personally, I'm quite liking Qt Quick/QML), but if your browser has a hole that allows an attacker to run arbitrary commands on your desktop you're screwed, no matter what language your desktop is written with.
Re:Aprils Fools? (Score:4, Insightful)
Writing complex applications in JavaScript is possible, but so is writing complex applications in assembly. That doesn't make it a good idea.