<?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/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-36880934</id><updated>2011-07-28T15:13:23.104-07:00</updated><title type='text'>The Ruby vs. Java Experiment</title><subtitle type='html'>I'm doing an experiment, developing an enterprise application in Java and Ruby in parallel, trying to evaluate whether Ruby is enterprise ready, or Java must still remain my weapon of choice.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>10</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-36880934.post-7649027008046539296</id><published>2007-01-09T05:54:00.000-08:00</published><updated>2007-01-09T05:56:49.335-08:00</updated><title type='text'>Elad’s Adventures in Java WebServiceLand</title><summary type='text'>As the title suggests, it turns out that using web services with Java is not as simple as you’d expect.      Executive Summary:  Axis 1.x is no good. I tested Axis2 and in many ways it’s worse. I tried XFire and it’s pretty good, but missing some functionality I needed. Finally, I moved to Sun’s JAX-WS RI (reference implementation), which turned out to be a good solution.  The process took way </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/7649027008046539296/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=7649027008046539296' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/7649027008046539296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/7649027008046539296'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2007/01/elads-adventures-in-java-webserviceland.html' title='Elad’s Adventures in Java WebServiceLand'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-3749172733817593424</id><published>2006-12-11T01:48:00.000-08:00</published><updated>2006-12-11T01:49:42.494-08:00</updated><title type='text'>Java &amp; Hibernate vs. Ruby &amp; ActiveRecord</title><summary type='text'>I did a lot of work on our data model the past two weeks, a little with Ruby, a little with Java, and back again. I thought I should share some insights regarding the different approaches they take towards modeling your data, and their pros and cons.  In general, with Java and Hibernate you’re supposed to start with the objects, then add the relational mappings. With Ruby on Rails you start with </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/3749172733817593424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=3749172733817593424' title='16 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/3749172733817593424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/3749172733817593424'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/12/java-hibernate-vs-ruby-activerecord.html' title='Java &amp; Hibernate vs. Ruby &amp; ActiveRecord'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>16</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-5442172266209244861</id><published>2006-11-30T07:46:00.000-08:00</published><updated>2006-11-30T07:51:51.553-08:00</updated><title type='text'>First Rails Drawback</title><summary type='text'>It had to come at some point, I just didn’t expect it so fast.I regret to report that I came across my first hurdle with Rails today.The idea was to quickly finish prototyping my web services (see previous post), so that I could give the client application team a WSDL they can already work with. However, when I took a good look at the WSDL file, I realized that it’s RPC/encoded, rather than the </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/5442172266209244861/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=5442172266209244861' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/5442172266209244861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/5442172266209244861'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/first-rails-drawback.html' title='First Rails Drawback'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-8361016748834584943</id><published>2006-11-29T05:50:00.000-08:00</published><updated>2006-11-30T06:58:58.525-08:00</updated><title type='text'>Rapid Prototyping</title><summary type='text'>This week we finally began to do some real work. I focused on designing the services I need to expose to the client application, and figured that it could be a great chance to try Rails out as a platform for rapid prototyping.   The original plan was to write Java code first, Ruby second, but since I’m pretty comfortable with Rails by now, I figured that I should experiment with the other way </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/8361016748834584943/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=8361016748834584943' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/8361016748834584943'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/8361016748834584943'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/rapid-prototyping.html' title='Rapid Prototyping'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-4842967091648553766</id><published>2006-11-20T08:05:00.000-08:00</published><updated>2006-11-20T08:10:01.951-08:00</updated><title type='text'>Motivation</title><summary type='text'>So, why am I doing this?     I’ve been using Java for nine years now. I never used it exclusively – I wrote lots of code with C, C++ and Delphi, but Java’s always been my bread and butter. Nevertheless, I’ve become more and more disenchanted with it lately. I’m going to skip the Java rants though – an entire book was written about Java’s problems, and Bruce Tate writes better than I do.     </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/4842967091648553766/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=4842967091648553766' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/4842967091648553766'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/4842967091648553766'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/motivation.html' title='Motivation'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-2688879459113220688</id><published>2006-11-16T06:30:00.000-08:00</published><updated>2006-11-16T06:31:44.415-08:00</updated><title type='text'>Progress Report #2 -  Ruby 1 : Java 0</title><summary type='text'>The first iteration in our project is over, and so is the first part of my experiment. The result: Ruby (Rails actually) wins by knockout!     I’ll start with the summary, in case you don’t want to read through the whole story:  It took me roughly 1 day to implement with Ruby on Rails what took me roughly a week of coding (net) in Java with Spring/Hibernate/Axis.  Actually, that’s not entirely </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/2688879459113220688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=2688879459113220688' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/2688879459113220688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/2688879459113220688'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/progress-report-2-ruby-1-java-0.html' title='Progress Report #2 -  Ruby 1 : Java 0'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-2242966815948909378</id><published>2006-11-08T11:15:00.000-08:00</published><updated>2006-11-08T11:18:04.018-08:00</updated><title type='text'>Progress Report #1</title><summary type='text'>It’s been roughly 2.5 weeks since the beginning of the project’s first iteration, and it’s time for a little progress report.  The objectives of this first iteration are rather simple: set up the entire stack and see it in action. On the server side that means a single database table, entity bean, DAO, business logic and a few web services. Those services provide basic RUD functionality for </summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/2242966815948909378/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=2242966815948909378' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/2242966815948909378'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/2242966815948909378'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/progress-report-1.html' title='Progress Report #1'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-436080885108495610</id><published>2006-11-05T07:42:00.000-08:00</published><updated>2006-11-08T07:58:03.915-08:00</updated><title type='text'>Success Criteria</title><summary type='text'>In order to determine in the future whether this experiment has been a success I should set success criteria up front. I gave it some thought, and here’s what I came up with:    1. Interchangeability:I should be able to use either the Java application or the Ruby one interchangeably, without any apparent impact. I could test this by setting up two servers, working with the same database and other</summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/436080885108495610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=436080885108495610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/436080885108495610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/436080885108495610'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/success-criteria.html' title='Success Criteria'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-116299072786782835</id><published>2006-11-02T04:56:00.000-08:00</published><updated>2006-11-08T05:04:13.880-08:00</updated><title type='text'>The Work Plan</title><summary type='text'>We work in four-week long iterations, each of which has some pre-defined deliverables.  In each iteration, I’m going to write the Java code first, then implement the same features with Ruby.  It may make better sense to code in Ruby first, since it’s supposedly better for rapid prototyping. However, my deliverable as far as my employer’s concerned is the Java app. In other words, I have deadlines</summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/116299072786782835/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=116299072786782835' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/116299072786782835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/116299072786782835'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/11/work-plan.html' title='The Work Plan'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-36880934.post-116228269818192633</id><published>2006-10-30T23:49:00.000-08:00</published><updated>2006-11-08T05:04:13.822-08:00</updated><title type='text'>String s = "Hello World!"; puts s</title><summary type='text'>My name is Elad Kehat, and I'm a developer for a large ISV.The name of this blog implies it's subject, so I'll go directly to trying to explain why this isn't YARJC:I recently started working on a completely new product, where I'm in charge of ther server side. I'm going to code it twice, in parallel - one time in Java and another in Ruby. So this isn't just a comparison based on the a posteriori</summary><link rel='replies' type='application/atom+xml' href='http://ruby-vs-java.blogspot.com/feeds/116228269818192633/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=36880934&amp;postID=116228269818192633' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/116228269818192633'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/36880934/posts/default/116228269818192633'/><link rel='alternate' type='text/html' href='http://ruby-vs-java.blogspot.com/2006/10/string-s-hello-world-puts-s.html' title='String s = &quot;Hello World!&quot;; puts s'/><author><name>Elad</name><uri>http://www.blogger.com/profile/12617633728938132957</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='21' src='http://aycu39.webshots.com/image/7358/2000779640736074240_rs.jpg'/></author><thr:total>3</thr:total></entry></feed>
