Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?
GNOME Programming News

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."
This discussion has been archived. No new comments can be posted.

Gnome Goes JavaScript

Comments Filter:
  • by mbkennel ( 97636 ) on Monday February 04, 2013 @02:33PM (#42787367)

    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)

    by halfkoreanamerican ( 2566687 ) on Monday February 04, 2013 @02:34PM (#42787371) Homepage
    It's not another sign that javascript is taking over the world, but rather a sign that gnome is making bad decisions.
  • Re:Enough rope (Score:5, Insightful)

    by SQLGuru ( 980662 ) on Monday February 04, 2013 @02:34PM (#42787373) Journal

    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).

  • by bazmail ( 764941 ) on Monday February 04, 2013 @02:37PM (#42787399)
    Saying JS is an awesome language isn't a good enough reason to switch. Next year are they going to switch to Python coz like thats awesome too? Or Dart?
  • by elucido ( 870205 ) on Monday February 04, 2013 @02:44PM (#42787499)

    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)

    by Tridus ( 79566 ) on Monday February 04, 2013 @02:44PM (#42787505) Homepage

    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.

  • by elucido ( 870205 ) on Monday February 04, 2013 @02:48PM (#42787555)

    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)

    by RedHackTea ( 2779623 ) on Monday February 04, 2013 @02:49PM (#42787569)
    I know choosing a language is usually subjective, but most Linux fanboys like Python (or even Ruby or PHP). Why not these? IMO, these are better languages and more suited for Apps and scripting. JavaScript's either original intention or main intention from history has been for client-side Web Browser scripting. Most tutorials, questions, and hacks will be for the Web Browser when searching for JavaScript in a search engine. I really don't get why people are pushing JS. Spend a day each coding in Ruby, Python, and then JavaScript for non-web Apps. I bet most people won't pick JS.
  • Re:Enough rope (Score:5, Insightful)

    by gstoddart ( 321705 ) on Monday February 04, 2013 @02:54PM (#42787623) Homepage

    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 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)

    by Anonymous Coward on Monday February 04, 2013 @02:58PM (#42787675)

    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.

  • by squiggleslash ( 241428 ) on Monday February 04, 2013 @03:08PM (#42787763) Homepage Journal

    If only they'd picked ${my favorite language} instead of ${language I don't like} - all of Slashdot.

  • by DrXym ( 126579 ) on Monday February 04, 2013 @03:14PM (#42787843)
    I can't say I like Javascript as a language but at least its ubquitous and more modern, lightweight and flexible than some other candidates. It's also far better than something heavy like Java or god forbid Mono which bring a lot of baggage in terms of runtime size and potential lawsuits.
  • Re:Aprils Fools? (Score:3, Insightful)

    by marsu_k ( 701360 ) on Monday February 04, 2013 @03:36PM (#42788121)

    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)

    by TheRaven64 ( 641858 ) on Tuesday February 05, 2013 @05:15AM (#42794723) Journal
    JavaScript, as TFS said, has some nice features. It's a pure object-oriented language with first-class closures, prototype-based inheritance and introspection. It's very flexible and really great for rapid prototyping and scripting. The problem is not that JavaScript sucks, it's that JavaScript sucks as an application development language. It has no concept of modularity: everything lives in the global namespace and must be parsed and executed as a linear sequence (modulo web workers). It has no declarative structure: your program imperatively builds the run-time structures. It has weak support for arithmetic: double-precision floating point values are the only numeric type.

    Writing complex applications in JavaScript is possible, but so is writing complex applications in assembly. That doesn't make it a good idea.

I owe the public nothing. -- J.P. Morgan