It seems that in GNOME Developer Experience Hackfest Gnomers made one of the most -if not the most- important decisions in the last 3 years and since the beginning of GNOME 3. They decided to promote Javascript as the primary language to create a new GNOME App.
+1
Why Javascript
Because there isn’t one single developer worldwide that doesn’t know Javascript or can’t learn Javascript in 1-2 days. The other huge advantage of Javascript is that doesn’t ship its own set of libraries and that makes it a perfect solution to be used in systems as scripting high level language. Also since JS doesn’t need compiling, JS Apps can run as bundles in every GNOME system, no matter the distro.
Travis Reitter (developer of Empathy, Telepathy, Folks) points out some of the advantages of JS.
- Our language of choice needs to be dynamic and high level.
- There is already momentum in the GNOME Project for JavaScript — it’s used in GNOME Shell and GNOME Documents.
- There’s a lot of work going into the language to make it especially fast, embeddable, and framework-agnostic.
- JavaScript is increasingly being seen as a first class desktop programming language — it us being used in Windows 8, mobile platforms, and for local web applications.
- JavaScript is self-contained — it doesn’t come with its own set of core libraries, which makes it more convenient for us when integrating it into the platform.
C will remain the recommended language for system libraries and obviously Javascript is not the perfect solution for every situation.
What Changes
In theory nothing changes. GNOME will support all languages as normal, but it will prioritize JS. However never under-estimate the power of the default. Actually Javascript is already the first class citizen in GNOME, since GNOME Shell UI plus all extensions are written in JS.
The most significant thing that changed is that GNOME finally choose -out of loud- a main technology for its platform.
Travis says:
- We will continue to write documentation for other languages, but we will also prioritize JavaScript when deciding what to work on.
- We will encourage new applications be written in JavaScript.
- We will be working to optimize the developer workflow around JavaScript.
Gnomers also work towards to provide a GNOME SDK, and that pretty much means that documentation will be written primary for JavaScript. Do not miss to check out Travis post Answering the question: “How do I develop an app for GNOME?”
Developer Hackfest Status
More cool things happened there like various improvements in GNOME Toolkits and further discussions for Applications bundles and Application Sandboxing. Although there are some working demos (like gclick2), these plans are at their first stage and we won’t see something soon.
If you want to learn more just follow developers posts!
- http://blogs.gnome.org/cosimoc/2013/01/31/dx-hackfest/
- http://blogs.gnome.org/cosimoc/2013/02/07/dx-hackfest-part-2/
- http://blogs.gnome.org/alexl/2013/02/01/developer-hackfest-status/
- https://live.gnome.org/DeveloperExperience/Hackfest2013/Toolkit
- https://live.gnome.org/DeveloperExperience/Hackfest2013
2013 will be definitely a good year for GNOME ;)
