<?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"
	>
<channel>
	<title>Comments on: Is Ruby Replacing Java? &#8212; Not So Fast</title>
	<atom:link href="http://www.michaelyuan.com/blog/2005/11/09/is-ruby-replacing-java-not-so-fast/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.michaelyuan.com/blog/2005/11/09/is-ruby-replacing-java-not-so-fast/</link>
	<description>"Science is a wonderful thing if one does not have to earn one's living at it" -- Albert Einstein</description>
	<pubDate>Sun, 14 Mar 2010 06:04:37 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6</generator>
		<item>
		<title>By: Rushabh</title>
		<link>http://www.michaelyuan.com/blog/2005/11/09/is-ruby-replacing-java-not-so-fast/#comment-1972</link>
		<dc:creator>Rushabh</dc:creator>
		<pubDate>Tue, 12 Dec 2006 07:24:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.michaelyuan.com/blog/?p=14#comment-1972</guid>
		<description>Michael,

I'm not sure where your numbers are coming from, but several claims that you make have dubious value - the latest one being "if that were true, asp.net would have beaten java EE a long time ago". Do you have numbers that show that Java webserver penetration is actually higher than asp? I know of studies showing more apache servers than IIS, but I was unaware of java EE vs asp.net. Anyhow, I digress.

First, stuff that I agree with: 
1. Actual implementation and implementation language has a lower cost (and associated risk) than things like gathering requirements. I completely agree.
2. There is nothing that JavaEE cannot do that RoR can. Of course. In fact its the other way around. RoR doesn't do a bunch of stuff that JavaEE can. Important to me are aspects of scale out and clustering that go with the much more established J2EE servlet containers and servers (tomcat / BEA) that RoR does not have (or to the best of my rather patchy knowledge). 

Second, stuff that I do not agree with:
I think you're missing the point here. The idea with RoR is to solve one problem and solve it well (database backed sites). Extending it to do other stuff is fine, but its outside its core competency. RoR optimizes on one thing and one thing alone - developer productivity writing and maintaining the code. This is what is terribly important and something that java gets 100% wrong. The sheer amount of *stuff* that I need to get a simple jsf website up is mind-boggling. There is eclipse and a myriad of eclipse plugins, not all of which work well with each other. Then there is tomcat and getting tomcat to play well with eclipse on windows (my dev platform of choice). Then the database and appropriate drivers for those. And this is before I've started writing a _single_ line of app code.
Presumably this is one time cost that you have to pay to get started and it gets made up in productivity later on. I don't know. I have played with RoR and python and love them but I haven't done any serious development with those. I just feel that your arguments and your case for J2EE misses the point - the problem is not that it is any less powerful, the problem is that its too powerful, too complicated with too many options, most of which are completely useless until i have a few million people hitting up the webpage per day. Getting those options right is really hard to the point where you have hundreds of untyped xml files controlling configuration all of which need to be changed in sync. Ugh ugh ugh.
Someone please write yet-another-layer on top of the 100 layers that J2EE has already to make it easy for me to go from nothing to website, just like in ruby / python.</description>
		<content:encoded><![CDATA[<p>Michael,</p>
<p>I&#8217;m not sure where your numbers are coming from, but several claims that you make have dubious value - the latest one being &#8220;if that were true, asp.net would have beaten java EE a long time ago&#8221;. Do you have numbers that show that Java webserver penetration is actually higher than asp? I know of studies showing more apache servers than IIS, but I was unaware of java EE vs asp.net. Anyhow, I digress.</p>
<p>First, stuff that I agree with:<br />
1. Actual implementation and implementation language has a lower cost (and associated risk) than things like gathering requirements. I completely agree.<br />
2. There is nothing that JavaEE cannot do that RoR can. Of course. In fact its the other way around. RoR doesn&#8217;t do a bunch of stuff that JavaEE can. Important to me are aspects of scale out and clustering that go with the much more established J2EE servlet containers and servers (tomcat / BEA) that RoR does not have (or to the best of my rather patchy knowledge). </p>
<p>Second, stuff that I do not agree with:<br />
I think you&#8217;re missing the point here. The idea with RoR is to solve one problem and solve it well (database backed sites). Extending it to do other stuff is fine, but its outside its core competency. RoR optimizes on one thing and one thing alone - developer productivity writing and maintaining the code. This is what is terribly important and something that java gets 100% wrong. The sheer amount of *stuff* that I need to get a simple jsf website up is mind-boggling. There is eclipse and a myriad of eclipse plugins, not all of which work well with each other. Then there is tomcat and getting tomcat to play well with eclipse on windows (my dev platform of choice). Then the database and appropriate drivers for those. And this is before I&#8217;ve started writing a _single_ line of app code.<br />
Presumably this is one time cost that you have to pay to get started and it gets made up in productivity later on. I don&#8217;t know. I have played with RoR and python and love them but I haven&#8217;t done any serious development with those. I just feel that your arguments and your case for J2EE misses the point - the problem is not that it is any less powerful, the problem is that its too powerful, too complicated with too many options, most of which are completely useless until i have a few million people hitting up the webpage per day. Getting those options right is really hard to the point where you have hundreds of untyped xml files controlling configuration all of which need to be changed in sync. Ugh ugh ugh.<br />
Someone please write yet-another-layer on top of the 100 layers that J2EE has already to make it easy for me to go from nothing to website, just like in ruby / python.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Michael Yuan</title>
		<link>http://www.michaelyuan.com/blog/2005/11/09/is-ruby-replacing-java-not-so-fast/#comment-7</link>
		<dc:creator>Michael Yuan</dc:creator>
		<pubDate>Sun, 01 Oct 2006 18:12:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.michaelyuan.com/blog/?p=14#comment-7</guid>
		<description>Thanks Mark for the thoughtful comment. Yes, I do agree that RoR is a stuning success and it really exposes the unsatisfactory current state of Java web frameworks. But I am not sure if I argee with the "less choice" == "less confusion" == "better platform" logic ... If that were true, ASP.Net would have beaten Java EE a long time ago. ;)</description>
		<content:encoded><![CDATA[<p>Thanks Mark for the thoughtful comment. Yes, I do agree that RoR is a stuning success and it really exposes the unsatisfactory current state of Java web frameworks. But I am not sure if I argee with the &#8220;less choice&#8221; == &#8220;less confusion&#8221; == &#8220;better platform&#8221; logic &#8230; If that were true, ASP.Net would have beaten Java EE a long time ago. <img src='http://www.michaelyuan.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mark Murphy</title>
		<link>http://www.michaelyuan.com/blog/2005/11/09/is-ruby-replacing-java-not-so-fast/#comment-6</link>
		<dc:creator>Mark Murphy</dc:creator>
		<pubDate>Sun, 01 Oct 2006 11:27:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.michaelyuan.com/blog/?p=14#comment-6</guid>
		<description>There's one thing RoR has going for it that might propel it past Java for Web applications: focus. Java has more Web frameworks than you can shake a stick at, and none appear to be head-and-shoulders more popular than the rest. It wouldn't surprise me if there's 4 or 5 with 10%+ mindshare, and another 4 or 5 with 5%+ mindshare.

RoR is pretty much it in the Ruby space. In fact, RoR seems to have gone out of its way to make it easy to extend with things that Java frameworks have provided (e.g., authentication/authorization) and things that Java frameworks haven't (e.g., acts_as_taggable, which in one statement transforms a model class into one that has an associated "tag soup" or "folksonomy").

If RoR attracts enough bright developers, it could blow past the Java frameworks in terms of breadth/depth of features and capabilities. The Java frameworks could match, but there might not be enough critical mass around any one of them to keep up the pace. It's not there today (for example, Java frameworks tend to have broader database support), but it's downright astounding what that community has achieved in a short period of time.

As a result, even if one or more Java frameworks emerge (or are rewritten) with RoR's ease-of-use, RoR might still wind up more widely used, because they garnered "escape velocity" at a time when the Java frameworks were so fragmented.</description>
		<content:encoded><![CDATA[<p>There&#8217;s one thing RoR has going for it that might propel it past Java for Web applications: focus. Java has more Web frameworks than you can shake a stick at, and none appear to be head-and-shoulders more popular than the rest. It wouldn&#8217;t surprise me if there&#8217;s 4 or 5 with 10%+ mindshare, and another 4 or 5 with 5%+ mindshare.</p>
<p>RoR is pretty much it in the Ruby space. In fact, RoR seems to have gone out of its way to make it easy to extend with things that Java frameworks have provided (e.g., authentication/authorization) and things that Java frameworks haven&#8217;t (e.g., acts_as_taggable, which in one statement transforms a model class into one that has an associated &#8220;tag soup&#8221; or &#8220;folksonomy&#8221;).</p>
<p>If RoR attracts enough bright developers, it could blow past the Java frameworks in terms of breadth/depth of features and capabilities. The Java frameworks could match, but there might not be enough critical mass around any one of them to keep up the pace. It&#8217;s not there today (for example, Java frameworks tend to have broader database support), but it&#8217;s downright astounding what that community has achieved in a short period of time.</p>
<p>As a result, even if one or more Java frameworks emerge (or are rewritten) with RoR&#8217;s ease-of-use, RoR might still wind up more widely used, because they garnered &#8220;escape velocity&#8221; at a time when the Java frameworks were so fragmented.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
