Java vs Ruby on Rails vs PHP

0 Flares Twitter 0 Facebook 0 LinkedIn 0 Google+ 0 0 Flares ×

I’ve been reading a bit lately about how developers feel about Ruby on Rails compared to Java and PHP.  I found a couple of interesting posts and wanted to share. One clever article I came across was at PardonTheInformation, where the author compared his experience with Java and Ruby on Rails (ROR) and tried to determine which is a better choice for entrepreneurial projects.  He ultimately concluded they were an overall dead-heat and the decision depends upon what you want to use it for.  The second was an article from CMSWire in which they compare the three on a little different metrics.

I am fairly biased against using Java for entrepreneurial projects.  I feel it is way too heavy and all of the structured code and factored frameworks are great for having flexibility in an enterprise, but it is overhead that you pay for in terms of complexity and time-to-code, and is completely useless for developing a minimally viable product (MVP).  You’re much better off focusing on hacking together those early iterations in an easier language and then moving to a more structured language and framework when you are past all the ‘pivoting’.   Now, whether that means you hack together the first iterations in PHP and then move to Java later when you’re ready to scale, or just take a more middle-of-the-road approach such as RoR or .net from the beginning, is a judgement call, for each organization.    I must admit however that I do like a lot of things about Ruby on Rails and that it has become the lingua franca of the startup world.   Anyway, here is what a few others had to say about them:

I. Entrepreneurial Report Card

From PardonTheInformation

Ruby vs Java Scorecard


II. Comparing Intrisics

From CMSWire

PHP Vs Ruby Vs Java

Indecently, I was surprised to see CMSWire call out that PHP scales better than Java.  I must say though that I agree!  It is counter-intuitive at first, but if you’re scaling by adding autonomous new server instances to your cluster in which each is a mirror of the first, rather than a structured pyramid cluster as is often used with Java apps, it can actually scale quite nicely.