GeeCON Prague 2014*
The moose likes Ruby and the fly likes Why the Rails for Java guys ? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Languages » Ruby
Bookmark "Why the Rails for Java guys ?" Watch "Why the Rails for Java guys ?" New topic
Author

Why the Rails for Java guys ?

Hussein Baghdadi
clojure forum advocate
Bartender

Joined: Nov 08, 2003
Posts: 3479

I mean, Rails use Ruby scripting language (AFAIK) which means, if you want to use Rails, you have to learn Ruby first.
So how could this book be useful for Java folks ?
In addition, Java web developers enjoy (or suffer !) a vast list of web frameworks varies from action-based frameworks (WebWork, Struts, Spring MVC) to component-based frameworks (JSF,
Tapestry, Wicket) to scripting-based frameworks (Grails, Phobos) or even Stripes (which called Rails for Java developers).
So, what makes Rails so attractive for Java guys ?
Lasse Koskela
author
Sheriff

Joined: Jan 23, 2002
Posts: 11962
    
    5
Originally posted by John Todd:
So, what makes Rails so attractive for Java guys ?

Ruby, mainly, I'd say.


Author of Test Driven (2007) and Effective Unit Testing (2013) [Blog] [HowToAskQuestionsOnJavaRanch]
Justin Gehtland
author
Ranch Hand

Joined: Jan 30, 2007
Posts: 31
Lasse is right, the language is the main thing. When Rails was first released, the integrated stack itself and the focus on "convention over configuration" were the major differentiators. Now, a bunch of Java frameworks have started to catch up in that area. I would argue that none have actually caught up yet, but some are close. Which really leaves Ruby as the major, unapproachable benefit.

I'm looking forward to the day very soon where there are lots of Rails applications running on the JVM via JRuby (and on the CLR via RubyCLR).
Ken Januski
Ranch Hand

Joined: Aug 08, 2002
Posts: 130
ok, well you know the next question the: why is ruby such a desirable language?

i have my own ideas, based on 2 months experience, but i'd like to hear your ideas.

i'd also like a greater elaboration on why rails might be appealing to java developers. i have my own ideas based on very little experience but i think many people would benefit from a more in-depth answer. of course that may be what the book is for..............
Justin Gehtland
author
Ranch Hand

Joined: Jan 30, 2007
Posts: 31
I like Ruby for a few reasons.

First, its openness. I like the fact that I can extend, modify or wholly replace pieces of the core language or the frameworks I use without modifying the original source code. This means I can have context-specific modifications to core components, which lets me easily target my domain problem with the sharpest tools I can.

Second, its conciseness. I can *often* express more complex behavior in fewer abstractions, which means that there is less code to maintain and fewer places where things can go wrong.

Third, the language itself is easily shaped into new languages. This is the DSL rage going on right now, and it is pretty powerful. You can do DSLs in other languages, but Ruby and its metaprogramming features seem to make it easier.

As far as Rails goes, well, first and foremost, its an integrated framework stack. From the database to the view layer, it has what I want. I don't have to worry too much about what library I'm going to use for what task. Its conventions mean I can spend more time writing code to do stuff rather than tie stuff together. The development story is great, with an integrated server and lack of compile-deploy-run cycle.

For more details, obviously I'd recommend the book, but the book isn't about convincing anybody to switch. There are lots of books about that. Our theory is that there is plenty of room for Ruby/Rails and Java/J2EE. So much room, in fact, that a lot of programmers are going to have to know both. If you already know Java/J2EE, this book helps you map what you know onto Ruby/Rails.
Ken Januski
Ranch Hand

Joined: Aug 08, 2002
Posts: 130
Thanks for this thoughtful reply. Given the hype surrounding RoR it's hard to tell how much anyone might like/dislike RoR based on their reaction to the hype and how much is based on an honest reaction to it. I've been very impressed with both Rs in RoR based on very limited experience.

But I wanted to know what someone who's used it quite a bit, and written a book on it, had to say about it. Hope others will find your response useful as well.
Bharat Ruparel
Ranch Hand

Joined: Jul 30, 2003
Posts: 493
Hello Justin,
You wrote:

I'm looking forward to the day very soon where there are lots of Rails applications running on the JVM via JRuby (and on the CLR via RubyCLR).

I have a few questions on your comment above:
1. When do you think that will be possible?
2. Will the apps run pretty much unchanged?
3. Why would you want to do that? a) Speed, b) integration with Java Libraries?
4, 5, 6 ... Any other benefits?
I have a number of books both on Ruby and Ruby on Rails. I am quite impressed with their quality.
what is it in your opinion that differentiates your book from the rest? A number of people looking into Ruby and RoR are Java Developers Architects anyway.
Also, I have questions around Security in Ruby. When will there be support for PKI, WS-Security etc? What is the RoR community position on that? What is your opinion?
Can someone experienced in J2EE and Web frameworks like Struts leverage his/her knowledge to fast track learning Ruby on Rails? Does your book help on that front? If yes, then please elaborate.
I am sorry if I am bombarding you with questions, but this thread seems to have very nicely tried to hit on all the saliant points. You must be familiar with David Blacks book on Ruby on Rails. How doe your book differ from that?
Thanks in advance for your answers.
Regards,
Bharat


SCJP,SCJD,SCWCD,SCBCD,SCDJWS,SCEA
Justin Gehtland
author
Ranch Hand

Joined: Jan 30, 2007
Posts: 31
1. When do you think that will be possible?


Its already possible, with JRuby at least. Our open source framework (Streamlined) is a plugin on top of Rails, and even it runs on JRuby now. So it is already possible.

2. Will the apps run pretty much unchanged?


Replace "pretty much" with "entirely" and there you go. ;-)

3. Why would you want to do that? a) Speed, b) integration with Java Libraries?
4, 5, 6 ... Any other benefits?


First and foremost, to leverage existing Java libraries and infrastructure. The two big ones are JMS and JTA, but there are other libraries you might want to tap into (somebody in another thread referenced JasperReports, for example). Secondly, to utilize the awesome management capabilities in Java5. The live monitoring of the JVM is great stuff.

what is it in your opinion that differentiates your book from the rest?


The book was written as a way to translate knowledge you already have into the new framework. So, instead of saying "Here's what an object-relational mapping framework is, and here is why it is useful, and here's how ActiveRecord works", we say "so, you already know how to map a one-to-many relationship in Hibernate, here's the ActiveRecord way". We skip a lot of the introductory materials in favor of helping the working Java professional get proficient right away.

Also, I have questions around Security in Ruby. When will there be support for PKI, WS-Security etc? What is the RoR community position on that? What is your opinion? [/QUOTE]

You can already take advantage of many pieces of PKI infrastructure through Ruby's excellent OpenSSL libraries, which gives you certificates, keystores, CA authorities, etc. With great integration to the CAS project through RubyCas you get Single Sign On, and the SOAP4R project is working toward WS-Security.
Can someone experienced in J2EE and Web frameworks like Struts leverage his/her knowledge to fast track learning Ruby on Rails? Does your book help on that front? If yes, then please elaborate.

Yes, and yes. We try to go through the core concepts of a Struts application and highlight what the equivalent ideas are in Rails.
Bharat Ruparel
Ranch Hand

Joined: Jul 30, 2003
Posts: 493
Thanks for your time.
You just got a new customer. When is the book scheduled to be released?
Regards,
Bharat
 
GeeCON Prague 2014
 
subject: Why the Rails for Java guys ?