<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Applet Languages</title>
	<atom:link href="http://natanyellin.com/2008/10/22/applet-languages/feed/" rel="self" type="application/rss+xml" />
	<link>http://natanyellin.com/2008/10/22/applet-languages/</link>
	<description>The Personal Weblog of Natan Yellin</description>
	<lastBuildDate>Thu, 08 Jul 2010 08:28:31 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Compizuser01</title>
		<link>http://natanyellin.com/2008/10/22/applet-languages/comment-page-1/#comment-13488</link>
		<dc:creator>Compizuser01</dc:creator>
		<pubDate>Thu, 23 Oct 2008 17:50:18 +0000</pubDate>
		<guid isPermaLink="false">http://natanyellin.com/?p=306#comment-13488</guid>
		<description>How is the development going?</description>
		<content:encoded><![CDATA[<p>How is the development going?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Natan Yellin</title>
		<link>http://natanyellin.com/2008/10/22/applet-languages/comment-page-1/#comment-13471</link>
		<dc:creator>Natan Yellin</dc:creator>
		<pubDate>Wed, 22 Oct 2008 16:57:25 +0000</pubDate>
		<guid isPermaLink="false">http://natanyellin.com/?p=306#comment-13471</guid>
		<description>Owen,
The main advantage of language flexibility is not that developers can harness existing language libraries- that&#039;s an argument that would be appropriate if I were to advocate for one specific language in place of Javascript. However, I don&#039;t believe that we should pick any specific language at all.

I do agree with you that it would be nice if more parts of the GNOME shell were written in (or used plugins written in) higher level languages. Such a move to higher level languages would allow hobbyist developers to get involved in the desktop shell itself, without needing to spend time learning C or any other new language- Javascript included. Hobbyist developers and other current &quot;outsiders&quot; can help bring a whole new level of innovation to the desktop interface if we simply lower the entry bar and open up new areas where they can get involved.

To rephrase your last statement, we don&#039;t want to tell developers &quot;Welcome to the GNOME Shell- you need to use Javascript even though there&#039;s a 70% chance that you wont like it.&quot; As you said, it easy to overestimate how attached people are to a given language, and that applies especially to existing developers. &lt;i&gt;They&lt;/i&gt; can learn to deal with a variety of applets being written in different languages, but &lt;i&gt;new developers&lt;/i&gt;- who may only know one language- can&#039;t deal with being forced to learn a totally new language like Javascript.

&quot;Anything goes&quot; does imply out of process applets and/or shell plugins, and that&#039;s both an advantage and a disadvantage. From my own experience with Universal Applets, I can list a few of the difficulties offhand, but I can also list the solutions.

On the flip side, out of process applets don&#039;t just allow flexibility, but they also give us an easy alternative to running everything in one huge and shaky monolithic process. I know I don&#039;t want my entire desktop shell freezing if one applet goes down, and out of process applets provides the easiest way of avoiding that.

If, as a solution to the above problem, you already intend to sandbox applets and/or run them in some form of a virtual machine then why not also add on support for other high level languages? Depending on the implementation details, a large amount of the necessary code will have already been written.

That said, specifically regarding HTML + CSS + JS applets (which is what &quot;Dashboard-like widgets&quot; implies), I can imagine small and specific parts of the desktop shell being plugged with webpage-like content, but wherever you need full power that&#039;s not the solution. If we want to create clutter like interfaces, clutter is the way to go- not DOM.</description>
		<content:encoded><![CDATA[<p>Owen,<br />
The main advantage of language flexibility is not that developers can harness existing language libraries- that&#8217;s an argument that would be appropriate if I were to advocate for one specific language in place of Javascript. However, I don&#8217;t believe that we should pick any specific language at all.</p>
<p>I do agree with you that it would be nice if more parts of the GNOME shell were written in (or used plugins written in) higher level languages. Such a move to higher level languages would allow hobbyist developers to get involved in the desktop shell itself, without needing to spend time learning C or any other new language- Javascript included. Hobbyist developers and other current &#8220;outsiders&#8221; can help bring a whole new level of innovation to the desktop interface if we simply lower the entry bar and open up new areas where they can get involved.</p>
<p>To rephrase your last statement, we don&#8217;t want to tell developers &#8220;Welcome to the GNOME Shell- you need to use Javascript even though there&#8217;s a 70% chance that you wont like it.&#8221; As you said, it easy to overestimate how attached people are to a given language, and that applies especially to existing developers. <i>They</i> can learn to deal with a variety of applets being written in different languages, but <i>new developers</i>- who may only know one language- can&#8217;t deal with being forced to learn a totally new language like Javascript.</p>
<p>&#8220;Anything goes&#8221; does imply out of process applets and/or shell plugins, and that&#8217;s both an advantage and a disadvantage. From my own experience with Universal Applets, I can list a few of the difficulties offhand, but I can also list the solutions.</p>
<p>On the flip side, out of process applets don&#8217;t just allow flexibility, but they also give us an easy alternative to running everything in one huge and shaky monolithic process. I know I don&#8217;t want my entire desktop shell freezing if one applet goes down, and out of process applets provides the easiest way of avoiding that.</p>
<p>If, as a solution to the above problem, you already intend to sandbox applets and/or run them in some form of a virtual machine then why not also add on support for other high level languages? Depending on the implementation details, a large amount of the necessary code will have already been written.</p>
<p>That said, specifically regarding HTML + CSS + JS applets (which is what &#8220;Dashboard-like widgets&#8221; implies), I can imagine small and specific parts of the desktop shell being plugged with webpage-like content, but wherever you need full power that&#8217;s not the solution. If we want to create clutter like interfaces, clutter is the way to go- not DOM.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Owen Taylor</title>
		<link>http://natanyellin.com/2008/10/22/applet-languages/comment-page-1/#comment-13469</link>
		<dc:creator>Owen Taylor</dc:creator>
		<pubDate>Wed, 22 Oct 2008 15:38:08 +0000</pubDate>
		<guid isPermaLink="false">http://natanyellin.com/?p=306#comment-13469</guid>
		<description>Hey Natan,

I don&#039;t entirely disagree with you. Having many language bindings for the GTK+ stack has been a traditional strength of GNOME over the years. But I think there&#039;s an inherent difference between an application - where most of the code is doing whatever the application does - and coding part of the GNOME core desktop. For the application, you really care about what code you have already, what libraries are available, and so forth. But for part of the GNOME core desktop, having a big language standard library is a disadvantage rather than an advantage. And there really has not been a lot of progress getting things written in non-C into the GNOME core over years, for reasons political and technical.

Specifically for applets and the more general concept of &quot;shell plugins&quot; - there are additional reasons to favor a standardization on a single language. First, an &quot;anything goes&quot; approach implies out-of-process. And out-of-process is inherently harder than in-process. Second, multiple languages really hurts forming a cohesive community where people are sharing code and copying what other people are doing. I think it&#039;s very easy to overestimate how attached people are to a particular language. A programming language is a programming language, and even more so if we can offer something familiar like Javascript as the standard choice and provide skeletons and code to copy. One of the biggest barriers to entry is if we say &quot;first, choose a programming language. Whatever you choose, 70% of the community will dislike your choice.&quot;</description>
		<content:encoded><![CDATA[<p>Hey Natan,</p>
<p>I don&#8217;t entirely disagree with you. Having many language bindings for the GTK+ stack has been a traditional strength of GNOME over the years. But I think there&#8217;s an inherent difference between an application &#8211; where most of the code is doing whatever the application does &#8211; and coding part of the GNOME core desktop. For the application, you really care about what code you have already, what libraries are available, and so forth. But for part of the GNOME core desktop, having a big language standard library is a disadvantage rather than an advantage. And there really has not been a lot of progress getting things written in non-C into the GNOME core over years, for reasons political and technical.</p>
<p>Specifically for applets and the more general concept of &#8220;shell plugins&#8221; &#8211; there are additional reasons to favor a standardization on a single language. First, an &#8220;anything goes&#8221; approach implies out-of-process. And out-of-process is inherently harder than in-process. Second, multiple languages really hurts forming a cohesive community where people are sharing code and copying what other people are doing. I think it&#8217;s very easy to overestimate how attached people are to a particular language. A programming language is a programming language, and even more so if we can offer something familiar like Javascript as the standard choice and provide skeletons and code to copy. One of the biggest barriers to entry is if we say &#8220;first, choose a programming language. Whatever you choose, 70% of the community will dislike your choice.&#8221;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Irakli Gozalishvili</title>
		<link>http://natanyellin.com/2008/10/22/applet-languages/comment-page-1/#comment-13467</link>
		<dc:creator>Irakli Gozalishvili</dc:creator>
		<pubDate>Wed, 22 Oct 2008 14:48:21 +0000</pubDate>
		<guid isPermaLink="false">http://natanyellin.com/?p=306#comment-13467</guid>
		<description>Sound great for me !!!
I&#039;m working with Mozilla platform for some years already and I would say it&#039;s wrong to say that Javascript is nobody&#039;s favorite language. It&#039;s really powerful and very dynamic language but there&#039;s really few people know it. Actually it&#039;s more and more projects are coming who chooses js as a language</description>
		<content:encoded><![CDATA[<p>Sound great for me !!!<br />
I&#8217;m working with Mozilla platform for some years already and I would say it&#8217;s wrong to say that Javascript is nobody&#8217;s favorite language. It&#8217;s really powerful and very dynamic language but there&#8217;s really few people know it. Actually it&#8217;s more and more projects are coming who chooses js as a language</p>
]]></content:encoded>
	</item>
</channel>
</rss>
