<?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: Popularity vs Performance vs Productivity</title>
	<atom:link href="/2011/03/14/popularity-vs-performance-vs-productivity/feed/" rel="self" type="application/rss+xml" />
	<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/</link>
	<description>database performance, SQL tuning and data visualizatoin</description>
	<lastBuildDate>Fri, 22 Jul 2011 04:02:26 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-217</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Sun, 17 Apr 2011 17:35:24 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-217</guid>
		<description>&lt;blockquote cite=&quot;#commentbody-152&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-152&quot; rel=&quot;nofollow&quot;&gt;Kyle Hailey&lt;/a&gt; :&lt;/strong&gt;I have no data on Java interpreted vs just in time.&lt;/blockquote&gt;
Yes you do! You show 2 charts from the benchmarks game - the first compares Ruby 1.8.7 with JIT&#039;d Java; the second compares Ruby 1.9 with interpreted Java not JIT&#039;d Java.



&lt;blockquote cite=&quot;#commentbody-152&quot;&gt;
&lt;strong&gt;&lt;a href=&quot;#comment-152&quot; rel=&quot;nofollow&quot;&gt;Kyle Hailey&lt;/a&gt; :&lt;/strong&gt;It makes me wonder about the Linux tests. I assume these tests are with a running JVM and already compiled into machine code. What about something that has to start up a JVM and has not yet compiled the machine code?&lt;/blockquote&gt;
Your assumption is not correct! &lt;a href=&quot;http://shootout.alioth.debian.org/help.php#measure&quot; rel=&quot;nofollow&quot;&gt;The Help page tells you how the programs were measured.&lt;/a&gt;
The Help page also provides &lt;a href=&quot;http://shootout.alioth.debian.org/help.php#java&quot; rel=&quot;nofollow&quot;&gt;a comparison between starting up JVM and a running JVM.&lt;/a&gt;</description>
		<content:encoded><![CDATA[<blockquote cite="#commentbody-152"><p>
<strong><a href="#comment-152" rel="nofollow">Kyle Hailey</a> :</strong>I have no data on Java interpreted vs just in time.</p></blockquote>
<p>Yes you do! You show 2 charts from the benchmarks game &#8211; the first compares Ruby 1.8.7 with JIT&#8217;d Java; the second compares Ruby 1.9 with interpreted Java not JIT&#8217;d Java.</p>
<blockquote cite="#commentbody-152"><p>
<strong><a href="#comment-152" rel="nofollow">Kyle Hailey</a> :</strong>It makes me wonder about the Linux tests. I assume these tests are with a running JVM and already compiled into machine code. What about something that has to start up a JVM and has not yet compiled the machine code?</p></blockquote>
<p>Your assumption is not correct! <a href="http://shootout.alioth.debian.org/help.php#measure" rel="nofollow">The Help page tells you how the programs were measured.</a><br />
The Help page also provides <a href="http://shootout.alioth.debian.org/help.php#java" rel="nofollow">a comparison between starting up JVM and a running JVM.</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle Hailey</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-152</link>
		<dc:creator>Kyle Hailey</dc:creator>
		<pubDate>Tue, 15 Mar 2011 17:19:53 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-152</guid>
		<description>I have no data on Java interpreted vs just in time usage in the field. Just in time I&#039;d expect would be about the only way people run Java in a server, which makes sense on server side code. I&#039;ve have never been closely involved on server side code, other than Oracle connection session pooling which I wrote in my own Python process that the server communicated with. For server side code, java has the pros of the ability to do most anything one can do these days as well as the speed of execution. On the down side the code bloat and over architecting and lower productivity might be enough to cancel out gains. Gains from algorithmic speeds are going to be easily lost in badly architected code. Code that is smaller, easier to read, easier to write, easier to change will lend itself to faster changes and corrections in architecture.
It comes down to how well the path to be implemented is known. If the path is well known the Java might just be the best choice - slower coding but a solid fast stable finished product, but how many projects know exactly what they are going to do? For projects that are going to change, which is especially true of any consumer space, the flexibility of the architecture and functionality or at least  the speed at which the team can re-implement code is going to be the ultimate criteria.
I agree that the data on coding productivity is weak, I wish there was more, but the simple code example of java vs python is powerful. If it takes me 5 days to write something in Java and 1 in Python, then hands down Python is the winner for me.
And as far as execution speed goes, java speed was my first and still biggest issue. Most of my experience is with client side Java, and maybe Java is just not meant for client side apps, but again I see things done in 10M memory spaces running 10x faster than their java equivalents.
It makes me wonder about the Linux tests. I assume these tests are with a running JVM and already compiled into machine code. What about something that has to start up a JVM and has not yet compiled the machine code? Isn&#039;t that the way most client side apps go?
Wondering if Ruby or Python will ever have machine code compiled versions. A quick google search and there seem to be a number of projects working on python compilation to machine code and/or a JVM with JIT.</description>
		<content:encoded><![CDATA[<p>I have no data on Java interpreted vs just in time usage in the field. Just in time I&#8217;d expect would be about the only way people run Java in a server, which makes sense on server side code. I&#8217;ve have never been closely involved on server side code, other than Oracle connection session pooling which I wrote in my own Python process that the server communicated with. For server side code, java has the pros of the ability to do most anything one can do these days as well as the speed of execution. On the down side the code bloat and over architecting and lower productivity might be enough to cancel out gains. Gains from algorithmic speeds are going to be easily lost in badly architected code. Code that is smaller, easier to read, easier to write, easier to change will lend itself to faster changes and corrections in architecture.<br />
It comes down to how well the path to be implemented is known. If the path is well known the Java might just be the best choice &#8211; slower coding but a solid fast stable finished product, but how many projects know exactly what they are going to do? For projects that are going to change, which is especially true of any consumer space, the flexibility of the architecture and functionality or at least  the speed at which the team can re-implement code is going to be the ultimate criteria.<br />
I agree that the data on coding productivity is weak, I wish there was more, but the simple code example of java vs python is powerful. If it takes me 5 days to write something in Java and 1 in Python, then hands down Python is the winner for me.<br />
And as far as execution speed goes, java speed was my first and still biggest issue. Most of my experience is with client side Java, and maybe Java is just not meant for client side apps, but again I see things done in 10M memory spaces running 10x faster than their java equivalents.<br />
It makes me wonder about the Linux tests. I assume these tests are with a running JVM and already compiled into machine code. What about something that has to start up a JVM and has not yet compiled the machine code? Isn&#8217;t that the way most client side apps go?<br />
Wondering if Ruby or Python will ever have machine code compiled versions. A quick google search and there seem to be a number of projects working on python compilation to machine code and/or a JVM with JIT.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-151</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Tue, 15 Mar 2011 15:52:15 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-151</guid>
		<description>&lt;a href=&quot;#comment-149&quot; rel=&quot;nofollow&quot;&gt;@Kyle Hailey&lt;/a&gt; 

When people talk about the execution time of Java programs do you think they are talking about JIT&#039;d Java or Java without JIT?

When you type java --version does that show mixed mode or interpreted mode?</description>
		<content:encoded><![CDATA[<p><a href="#comment-149" rel="nofollow">@Kyle Hailey</a> </p>
<p>When people talk about the execution time of Java programs do you think they are talking about JIT&#8217;d Java or Java without JIT?</p>
<p>When you type java &#8211;version does that show mixed mode or interpreted mode?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle Hailey</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-149</link>
		<dc:creator>Kyle Hailey</dc:creator>
		<pubDate>Mon, 14 Mar 2011 21:24:53 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-149</guid>
		<description>python 3 looks to be much less than 10x slower compared to Java 6 -Xint:
&lt;a href=&quot;http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_xint.png&quot; rel=&quot;nofollow&quot;&gt;http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_xint.png&lt;/a&gt;
&lt;img src=/wp-content/uploads/2011/03/python_vs_java_xint.png&gt;
but gets fairly trounced vs Java 6 -Server:
&lt;a href=&quot;http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_Xserver.png&quot; rel=&quot;nofollow&quot;&gt;http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_Xserver.png&lt;/a&gt;
&lt;img src=/wp-content/uploads/2011/03/python_vs_java_Xserver.png&gt;</description>
		<content:encoded><![CDATA[<p>python 3 looks to be much less than 10x slower compared to Java 6 -Xint:<br />
<a href="/wp-content/uploads/2011/03/python_vs_java_xint.png" rel="nofollow">http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_xint.png</a><br />
<img src=/wp-content/uploads/2011/03/python_vs_java_xint.png/><br />
but gets fairly trounced vs Java 6 -Server:<br />
<a href="/wp-content/uploads/2011/03/python_vs_java_Xserver.png" rel="nofollow">http://dboptimizer.com/wp-content/uploads/2011/03/python_vs_java_Xserver.png</a><br />
<img src=/wp-content/uploads/2011/03/python_vs_java_Xserver.png/></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-148</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Mon, 14 Mar 2011 19:44:49 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-148</guid>
		<description>And given that Dion Hinchcliffe was trying to make a point about &quot;Web development&quot; let&#039;s look at a recent published study of web development, and note the authors remark: 

- &quot;First, the most complete solution is a Java solution. Many people might find this surprising, because scripting languages (such as Perl or PHP) tend to have higher productivity at least for small tasks.&quot; page 3 

http://page.mi.fu-berlin.de/prechelt/Biblio/platforms07-cacm-2010.pdf</description>
		<content:encoded><![CDATA[<p>And given that Dion Hinchcliffe was trying to make a point about &#8220;Web development&#8221; let&#8217;s look at a recent published study of web development, and note the authors remark: </p>
<p>- &#8220;First, the most complete solution is a Java solution. Many people might find this surprising, because scripting languages (such as Perl or PHP) tend to have higher productivity at least for small tasks.&#8221; page 3 </p>
<p><a href="http://page.mi.fu-berlin.de/prechelt/Biblio/platforms07-cacm-2010.pdf" rel="nofollow">http://page.mi.fu-berlin.de/prechelt/Biblio/platforms07-cacm-2010.pdf</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-147</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Mon, 14 Mar 2011 19:13:25 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-147</guid>
		<description>Incidentally, the &quot;study of productivity in C, Java, Perl, Python&quot; only *measured* development time for the Java, C++ and C programs. Those programs were written under controlled conditions.

In constrast, the programs written in other languages were contributed by a self selected group of program authors who responded to an online request. The development time recorded for those programs was whatever the program authors claimed :-)</description>
		<content:encoded><![CDATA[<p>Incidentally, the &#8220;study of productivity in C, Java, Perl, Python&#8221; only *measured* development time for the Java, C++ and C programs. Those programs were written under controlled conditions.</p>
<p>In constrast, the programs written in other languages were contributed by a self selected group of program authors who responded to an online request. The development time recorded for those programs was whatever the program authors claimed :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-146</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Mon, 14 Mar 2011 19:08:00 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-146</guid>
		<description>The text still says &quot;Python is  roughly 10x times slower in execution time&quot; when from that graphic Python averages 20x slower, and the benchmarks game shows a bunch of measurements &gt;30x slower than Java http://shootout.alioth.debian.org/u32/python.php

Of course, the problem with Dion&#039;s graphic is that although it&#039;s titled &quot;Hard Metrics&quot; only the program times were measurements - the &quot;expected development efficiency gains&quot; is plucked out of thin air ;-)</description>
		<content:encoded><![CDATA[<p>The text still says &#8220;Python is  roughly 10x times slower in execution time&#8221; when from that graphic Python averages 20x slower, and the benchmarks game shows a bunch of measurements &gt;30x slower than Java <a href="http://shootout.alioth.debian.org/u32/python.php" rel="nofollow">http://shootout.alioth.debian.org/u32/python.php</a></p>
<p>Of course, the problem with Dion&#8217;s graphic is that although it&#8217;s titled &#8220;Hard Metrics&#8221; only the program times were measurements &#8211; the &#8220;expected development efficiency gains&#8221; is plucked out of thin air ;-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle Hailey</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-145</link>
		<dc:creator>Kyle Hailey</dc:creator>
		<pubDate>Mon, 14 Mar 2011 18:45:43 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-145</guid>
		<description>absolutely right. I changed the text to reflect this.
What I wanted to see in a single graphic is the performance verses productivity and had thought that Dion had pointed this out with the text on the graphic showing &quot;Range of expected development efficiency gains from productivity oriented approaches.&quot;
I will look into making a graphic showing productivity vs performance.</description>
		<content:encoded><![CDATA[<p>absolutely right. I changed the text to reflect this.<br />
What I wanted to see in a single graphic is the performance verses productivity and had thought that Dion had pointed this out with the text on the graphic showing &#8220;Range of expected development efficiency gains from productivity oriented approaches.&#8221;<br />
I will look into making a graphic showing productivity vs performance.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Isaac Gouy</title>
		<link>http://dboptimizer.com/2011/03/14/popularity-vs-performance-vs-productivity/#comment-144</link>
		<dc:creator>Isaac Gouy</dc:creator>
		<pubDate>Mon, 14 Mar 2011 14:19:47 +0000</pubDate>
		<guid isPermaLink="false">http://dboptimizer.com/?p=652#comment-144</guid>
		<description>&gt; &quot;Now the above graphic might be hard to read (wish it was larger) but what it is indicating is that Python is roughly 10x faster to program in than Java.&quot;

No, that is not what weblanguagecomparison2.png indicates.

The graphic indicates the run time performance of programs written in different programming languages.

The graphic indicates the Python programs ran on average 20x slower than the Java programs.

The graphic has no information about how it took the Python programmers to write the Python programs or how long it took the Java programmers to write the Java programmers.

The graphic is simply (an out of date) summary from the benchmarks game website, here it is - http://shootout.alioth.debian.org/gp4/which-language-is-best.php

Here&#039;s an up-to-date summary http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php</description>
		<content:encoded><![CDATA[<p>&gt; &#8220;Now the above graphic might be hard to read (wish it was larger) but what it is indicating is that Python is roughly 10x faster to program in than Java.&#8221;</p>
<p>No, that is not what weblanguagecomparison2.png indicates.</p>
<p>The graphic indicates the run time performance of programs written in different programming languages.</p>
<p>The graphic indicates the Python programs ran on average 20x slower than the Java programs.</p>
<p>The graphic has no information about how it took the Python programmers to write the Python programs or how long it took the Java programmers to write the Java programmers.</p>
<p>The graphic is simply (an out of date) summary from the benchmarks game website, here it is &#8211; <a href="http://shootout.alioth.debian.org/gp4/which-language-is-best.php" rel="nofollow">http://shootout.alioth.debian.org/gp4/which-language-is-best.php</a></p>
<p>Here&#8217;s an up-to-date summary <a href="http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php" rel="nofollow">http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php</a></p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk

Served from: dboptimizer.com @ 2011-07-24 09:09:34 -->