<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/'><id>tag:blogger.com,1999:blog-4080205386526887625.post1093490171719873868..comments</id><updated>2009-12-12T04:28:06.186-07:00</updated><category term='Innovation'/><category term='Product Management'/><category term='Twitter'/><category term='Complexity'/><category term='Computer Science'/><category term='Technical Debt'/><category term='Teams'/><category term='Management'/><category term='From the Intrawebs'/><category term='Future'/><category term='Programming'/><category term='Open Source'/><category term='Blogging'/><category term='Quality'/><category term='Sales'/><category term='Careers'/><category term='Productivity'/><category term='Development'/><category term='Customer Development'/><category term='Agile'/><category term='Personal Growth'/><category term='Pricing'/><category term='User Experience'/><category term='Tribes'/><category term='Software'/><category term='Marketing'/><category term='Process'/><category term='Web N.0'/><category term='Communication'/><category term='Miscellaneous'/><category term='Education'/><category term='Entrepreneurism'/><title type='text'>Comments on The Software Maven: Our Dynamic Language Shootout</title><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://softwaremaven.innerbrane.com/feeds/1093490171719873868/comments/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html'/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_6gN_RPB7qpM/S5m-tBpVfRI/AAAAAAAAAGo/LpyqPFUWZJE/S220/profile_pic.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-323146785780951070</id><published>2009-12-12T04:28:06.186-07:00</published><updated>2009-12-12T04:28:06.186-07:00</updated><title type='text'>As per the other commenter, it would be interestin...</title><content type='html'>As per the other commenter, it would be interesting what you think of the decision you made back then.&lt;br /&gt;Would you still make the same decision now?&lt;br /&gt;Now that django runs under jython 2.5?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/323146785780951070'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/323146785780951070'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1260617286186#c323146785780951070' title=''/><author><name>Chai</name><uri>http://www.blogger.com/profile/04637505159489093537</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='26' height='32' src='http://users.tpg.com.au/ccang/tron.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-768859955'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-4657010513269981199</id><published>2009-04-23T17:15:00.000-06:00</published><updated>2009-04-23T17:15:00.000-06:00</updated><title type='text'>So, it's been about a year... Looking back, did yo...</title><content type='html'>So, it's been about a year... Looking back, did you make the right decision?  Did you finish the project in Groovy or switch to Python/Jython?  &lt;br /&gt;&lt;br /&gt;I am at the point you were last year trying to decide between sticking with Groovy (after a 1 month pilot) or switching to some other language.  I will probably use the points you chose to highlight as a starting point for analysis.&lt;br /&gt;&lt;br /&gt;Thanks for the excellent insight.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4657010513269981199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4657010513269981199'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1240528500000#c4657010513269981199' title=''/><author><name>ZJ</name><uri>http://www.blogger.com/profile/09726780829119970109</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-566013463'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-3245362626527394410</id><published>2008-04-17T18:40:00.000-06:00</published><updated>2008-04-17T18:40:00.000-06:00</updated><title type='text'>I'm surprised you didn't include Mozilla's Rhino i...</title><content type='html'>I'm surprised you didn't include Mozilla's Rhino implementation of JavaScript. I've used it for a while and find it a painless way to add scripting capabilities for people without a programming background. JS has the advantage of the HTML scripting community behind it, so there are mountains of JS-capable script developers. Rhino also provides methods for invoking Java methods directly, implementing Java interfaces and compiling to class files.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/3245362626527394410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/3245362626527394410'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1208479200000#c3245362626527394410' title=''/><author><name>Clark</name><uri>http://www.breyman.com/clark/blog/</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1799521020'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-843145002570571515</id><published>2008-03-19T17:04:00.000-06:00</published><updated>2008-03-19T17:04:00.000-06:00</updated><title type='text'>"In the end, good engineers will recognize the pow...</title><content type='html'>"In the end, good engineers will recognize the power of the tools and take advantage of them. Bad engineers will continue to do what they've always done, regardless of the tools placed in front of them."&lt;BR/&gt;&lt;BR/&gt;I totally agree. The people are far more important than the tools. I wouldn't place the responsibility solely on your Engineers though.&lt;BR/&gt;&lt;BR/&gt;You obviously understand what can be achieved, so why not show them? Hands on coaching/mentoring is a great way to lead and empower others.&lt;BR/&gt;&lt;BR/&gt;Best wishes and I look forward to reading how you get on.&lt;BR/&gt;&lt;BR/&gt;Paul.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/843145002570571515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/843145002570571515'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1205967840000#c843145002570571515' title=''/><author><name>Paul</name><uri>http://www.blogger.com/profile/16046651614960778254</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-588899268'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-4968731184768691172</id><published>2008-03-19T11:30:00.000-06:00</published><updated>2008-03-19T11:30:00.000-06:00</updated><title type='text'>@Bediako George &lt;br&gt;&lt;br&gt;Mostly because of time.  W...</title><content type='html'>@Bediako George &lt;BR/&gt;&lt;BR/&gt;Mostly because of time.  We were looking at what we considered the most popular dynamic language and web framework combinations.  Fairly arbitrary, really.&lt;BR/&gt;&lt;BR/&gt;@paul&lt;BR/&gt;&lt;BR/&gt;Grails will auto-reload Groovy scripts without restarting the Grails container.&lt;BR/&gt;&lt;BR/&gt;I agree with you on the concern with people writing idiomatic Java in Groovy.  The same concern holds true for each of languages (it is, after all, possible to write idiomatic Java in Ruby, but very ugly).  Groovy makes it harder to break the mold because of its similarity to Java, but that is balanced by the ease of becoming productive using Groovy for existing Java programmers.&lt;BR/&gt;&lt;BR/&gt;In the end, good engineers will recognize the power of the tools and take advantage of them.  Bad engineers will continue to do what they've always done, regardless of the tools placed in front of them.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4968731184768691172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4968731184768691172'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1205947800000#c4968731184768691172' title=''/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-270978976'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-2765963390104446828</id><published>2008-03-19T00:55:00.000-06:00</published><updated>2008-03-19T00:55:00.000-06:00</updated><title type='text'>Hi Travis,&lt;br&gt;&lt;br&gt;Good review. I've heard good thi...</title><content type='html'>Hi Travis,&lt;BR/&gt;&lt;BR/&gt;Good review. I've heard good things about Groovy too. A couple of points:&lt;BR/&gt;&lt;BR/&gt;Productivity: I'm surprised that this wasn't one of you review criteria. Especially since you stated it as one of your reasons for moving to a DL. As I understand it Grails requires you to stop and start the server Java style to effect changes. During the programming day this can add up to a lot of time!&lt;BR/&gt;&lt;BR/&gt;Doing things differently: Part of the advantage of a DL is that it does things different from Java. A good example is using closures when iterating over collections. This approach rights off the whole of the Java collections API. Another example is using Metaprogramming to deliver DSLs.&lt;BR/&gt;&lt;BR/&gt;My concern with Groovy is that if it looks like Java people will use it like Java. I've seen the same happen with C to C++ to Java. There is plenty of procedural C style Java out there, whilst the folks that made the clean break and went with Smalltalk are now world renowned OO gurus writing books and the like (Martin Fowler, Kent Beck, Ward Cunningham, etc) :)&lt;BR/&gt;&lt;BR/&gt;Just my 2cts.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2765963390104446828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2765963390104446828'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1205909700000#c2765963390104446828' title=''/><author><name>Paul</name><uri>http://www.blogger.com/profile/16046651614960778254</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-588899268'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-4224336685000551433</id><published>2008-03-11T13:43:00.000-06:00</published><updated>2008-03-11T13:43:00.000-06:00</updated><title type='text'>Hello Travis,&lt;br&gt;&lt;br&gt;Very good article.  Tell me, ...</title><content type='html'>Hello Travis,&lt;BR/&gt;&lt;BR/&gt;Very good article.  Tell me, is there a reason you didn't consider JavaScript via Rhino?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4224336685000551433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4224336685000551433'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1205264580000#c4224336685000551433' title=''/><author><name>Bediako George</name><uri>http://www.blogger.com/profile/15630013328398404206</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1274743270'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-7013742477825346568</id><published>2008-02-20T18:36:00.000-07:00</published><updated>2008-02-20T18:36:00.000-07:00</updated><title type='text'>travis: check the benchmark i did. IMHO reading a ...</title><content type='html'>travis: check the benchmark i did. IMHO reading a file is not a correct benchmark because all platforms uses optimized IO operations. Real deal is manipulating the data, sorting, filtering, making calculations etc.&lt;BR/&gt;&lt;BR/&gt;http://www.jroller.com/ff/entry/groovy_good_bad_and_the</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/7013742477825346568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/7013742477825346568'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203557760000#c7013742477825346568' title=''/><author><name>ff</name><uri>http://www.jroller.com/ff</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-110493524'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-3540668115866302270</id><published>2008-02-20T07:37:00.000-07:00</published><updated>2008-02-20T07:37:00.000-07:00</updated><title type='text'>I really don't see the point in such subjective co...</title><content type='html'>I really don't see the point in such subjective comparisons.&lt;BR/&gt;&lt;BR/&gt;First of all, NetBeans as stellar support for JRuby. Although both Groovy and Ruby has good enough support in tools like Eclipse.&lt;BR/&gt;&lt;BR/&gt;Don't forget that Groovy, as a stand-alone language, is very very immature yet. Of course, it could leverage on years of expertise thanks to other dynamic languages, such as Python and Ruby (!)&lt;BR/&gt;&lt;BR/&gt;As Ola Bini already stated: if you're going to use Groovy the same way you use Java, there is absolutely no gain. Just a performance hit. You necessarily have to make the context switch to go from imperative programming to real dynamic programming. One could argue that the farther from the source language, the better so you don't get confused. Both Jython and JRuby fits the bill. You either understand why you have closures and metaprogramming or Groovy will be useless.&lt;BR/&gt;&lt;BR/&gt;Don't get me wrong, I think Groovy is a nice trial. But I think it will fail miserably as far as people keep marketing it as "the same as Java", because the next obvious inquire is "if it is like Java, why have it in the first place?"</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/3540668115866302270'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/3540668115866302270'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203518220000#c3540668115866302270' title=''/><author><name>AkitaOnRails</name><uri>http://www.blogger.com/profile/05539202931163964720</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='29' height='32' src='http://photos1.blogger.com/blogger/4643/1852/1600/akitaonrails.jpg'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1689326265'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-6675360252729247436</id><published>2008-02-20T07:29:00.000-07:00</published><updated>2008-02-20T07:29:00.000-07:00</updated><title type='text'>very good article. i too would come to the same co...</title><content type='html'>very good article. i too would come to the same conclusion. i think groovy has a very short learning curve for java developers. the only major difference between java(lanuguage) and groovy is that java is static while groovy is dynamic. Groovy is the DJ(Dynamic Java).</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/6675360252729247436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/6675360252729247436'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203517740000#c6675360252729247436' title=''/><author><name>suhail</name><uri>http://www.blogger.com/profile/01241299607164129088</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-379392712'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-5685723829221068201</id><published>2008-02-20T01:02:00.000-07:00</published><updated>2008-02-20T01:02:00.000-07:00</updated><title type='text'>Sammy, I posted a response to your second question...</title><content type='html'>Sammy, I posted a response to your second question about the learning curve aspect &lt;A HREF="http://softwaremaven.innerbrane.com/2008/02/language-shootout-followup.html" REL="nofollow"&gt;here&lt;/A&gt;.  Hopefully that clarifies it a bit.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/5685723829221068201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/5685723829221068201'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203494520000#c5685723829221068201' title=''/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-270978976'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-4962355185201532645</id><published>2008-02-20T00:34:00.000-07:00</published><updated>2008-02-20T00:34:00.000-07:00</updated><title type='text'>Regarding the Eclipse versus IDEA JRuby environmen...</title><content type='html'>Regarding the Eclipse versus IDEA JRuby environment comments above, I now must hang my head in shame.  One of the problems with these kinds of evaluations is you start seeing so many different "things" that they start to blur.&lt;BR/&gt;&lt;BR/&gt;Sammy is right, the IDEA plug-in is the superior one.  I'm updating the blog entry to reflect that.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4962355185201532645'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/4962355185201532645'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203492840000#c4962355185201532645' title=''/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-270978976'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-8886375948178995391</id><published>2008-02-20T00:23:00.000-07:00</published><updated>2008-02-20T00:23:00.000-07:00</updated><title type='text'>I would love to see numbers, too.  I purposefully ...</title><content type='html'>I would love to see numbers, too.  I purposefully left off performance because that was too nebulous to deal with.&lt;BR/&gt;&lt;BR/&gt;Just for fun, I did one micro-benchmark that read a file with a million lines, each line was a random number between one and one-hundred-thousand.  Here were the results:&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; java sumlines&lt;BR/&gt;Time per run: 0.4526 seconds&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; python sumlines.py&lt;BR/&gt;Time per run: 0.7755 seconds&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; ruby sumlines.rb&lt;BR/&gt;Time per run: 0.8691 seconds&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; jruby ~/scripts/sumlines.rb &lt;BR/&gt;Time per run: 1.4584 seconds&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; groovy ~/scripts/sumlines.groovy &lt;BR/&gt;Time per run: 1.8696 seconds&lt;BR/&gt;&lt;BR/&gt;&gt;&gt; jython sumlines.py&lt;BR/&gt;Time per run: 2.2070 seconds&lt;BR/&gt;&lt;BR/&gt;Again, these numbers are less than meaningless, in my opinion, but it was fun to see the difference in how the scripts were created.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/8886375948178995391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/8886375948178995391'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203492180000#c8886375948178995391' title=''/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-270978976'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-2807224878278281364</id><published>2008-02-19T23:12:00.000-07:00</published><updated>2008-02-19T23:12:00.000-07:00</updated><title type='text'>I would LOVE to see some performance comparisons b...</title><content type='html'>I would LOVE to see some performance comparisons between JRuby and Groovy and JRuby on Rails and Grails.  I'm not looking for a winner by a hair... I would like to see if there's a SERIOUS real-world performance difference, both at the language level and the primary web stack level.  Mostly for curiosity sake, though.  I still think they're both great.  I might do it myself, but I barely have time to post comments let alone this...  Anyone have some spare hobby cycles?</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2807224878278281364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2807224878278281364'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203487920000#c2807224878278281364' title=''/><author><name>Clinton Begin</name><uri>http://www.blogger.com/profile/00558779246463349899</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='32' src='http://bp0.blogger.com/_P6iqYNdS5DA/R7XCuhxL95I/AAAAAAAAAEA/0u1ZgNT56vA/S220/Untitled.png'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-542663362'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-7767086663179035643</id><published>2008-02-19T15:52:00.000-07:00</published><updated>2008-02-19T15:52:00.000-07:00</updated><title type='text'>I should also mention the support for IntelliJ's R...</title><content type='html'>I should also mention the support for IntelliJ's Ruby plugin is &lt;I&gt;incredible&lt;/I&gt;.  I posted a question on an unrelated mailing list that (I guess) one of the developers monitored, and he contacted me, and worked with me trying to resolve the issue I was having.  They released a patch within the week. &lt;BR/&gt;&lt;BR/&gt;I don't know if they're always that quick, but it was pretty sweet for me.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/7767086663179035643'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/7767086663179035643'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203461520000#c7767086663179035643' title=''/><author><name>Sammy Larbi</name><uri>http://www.blogger.com/profile/00528348159110680766</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1645477551'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-5528809284227602884</id><published>2008-02-19T15:48:00.000-07:00</published><updated>2008-02-19T15:48:00.000-07:00</updated><title type='text'>I really like the overview you gave here, but I ha...</title><content type='html'>I really like the overview you gave here, but I have a couple of comments where I don't agree:&lt;BR/&gt;&lt;BR/&gt;1) Regarding the IDEs, You mentioned "JRuby: There is an IntelliJ plug-in for JRuby, but it was pretty weak. The Eclipse plug-in seemed to be better."&lt;BR/&gt;&lt;BR/&gt;Has the Ruby Eclipse plug-in come that far since I last used it?  I ended up ditching Eclipse and buying IDEA for that Ruby plugin (and the Java development rocks too, but I was content to stay with Eclipse for that at the time)&lt;BR/&gt;&lt;BR/&gt;2) In discussing the learning curve, you said "Groovy: As a super-set of Java, it has a very straight-forward learning curve from Java. This is especially important around the APIs, since it uses the Java APIs directly..."&lt;BR/&gt;&lt;BR/&gt;What caused you to come to that conclusion?  I can certainly see it, but only if you continue to program Java but in Groovy instead.  If that's the case, why take the performance hit just to write the same (type of) code? (You could just as easily "not learn" the other languages and program Java in their syntax.) &lt;BR/&gt;&lt;BR/&gt;I guess you could, over time, become more accustomed to really programming Groovy, but I don't see why that would come before it does for either Ruby or Python.&lt;BR/&gt;&lt;BR/&gt;Given your outline of needs, I probably would have come to the same conclusion, but the two issues I talked about above would not have tipped me in favor of Groovy.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/5528809284227602884'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/5528809284227602884'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203461280000#c5528809284227602884' title=''/><author><name>Sammy Larbi</name><uri>http://www.codeodor.com</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1196290766'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-2476778292299280603</id><published>2008-02-19T12:24:00.000-07:00</published><updated>2008-02-19T12:24:00.000-07:00</updated><title type='text'>Ugh, somehow I always manage to fat-finger "Spring...</title><content type='html'>Ugh, somehow I always manage to fat-finger "Spring" as "Swing", probably because I used Swing so much when I first started using Java.  Thanks for pointing it out.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2476778292299280603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2476778292299280603'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203449040000#c2476778292299280603' title=''/><author><name>Travis Jensen</name><uri>http://www.blogger.com/profile/08454148260119349712</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-270978976'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-1148637817883979588</id><published>2008-02-19T11:14:00.000-07:00</published><updated>2008-02-19T11:14:00.000-07:00</updated><title type='text'>Great overview.&lt;br&gt;&lt;br&gt;One note though: JRuby supp...</title><content type='html'>Great overview.&lt;BR/&gt;&lt;BR/&gt;One note though: JRuby support in NetBeans IDE is much better than Groovy, for now.</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/1148637817883979588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/1148637817883979588'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203444840000#c1148637817883979588' title=''/><author><name>Steven Devijver</name><uri>http://groovy.dzone.com</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img1.blogblog.com/img/blank.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1564417123'/></entry><entry><id>tag:blogger.com,1999:blog-4080205386526887625.post-2569539401296406302</id><published>2008-02-19T10:40:00.000-07:00</published><updated>2008-02-19T10:40:00.000-07:00</updated><title type='text'>I *think* you mean that Grails uses Spring and Hib...</title><content type='html'>I *think* you mean that Grails uses Spring and Hibernate, not Swing and Hibernate :)</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2569539401296406302'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4080205386526887625/1093490171719873868/comments/default/2569539401296406302'/><link rel='alternate' type='text/html' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html?showComment=1203442800000#c2569539401296406302' title=''/><author><name>Bryant</name><uri>http://www.blogger.com/profile/11547252363699746865</uri><email>noreply@blogger.com</email><gd:image xmlns:gd='http://schemas.google.com/g/2005' rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:in-reply-to xmlns:thr='http://purl.org/syndication/thread/1.0' href='http://softwaremaven.innerbrane.com/2008/02/our-dynamic-language-shootout.html' ref='tag:blogger.com,1999:blog-4080205386526887625.post-1093490171719873868' source='http://www.blogger.com/feeds/4080205386526887625/posts/default/1093490171719873868' type='text/html'/><gd:extendedProperty xmlns:gd='http://schemas.google.com/g/2005' name='blogger.itemClass' value='pid-1812628235'/></entry></feed>
