

Ruby on rails and groovy/grails comparison - mainguy
http://mikemainguy.blogspot.com/2010/10/ruby-on-rails-and-groovy-grails.html

======
michaelcampbell
> #2 Ruby forces you to learn "the ruby way". For folks who are only used to
> java, seeing ruby code is like...seeing another language.

This is hardly a point of difference between any 2 languages/frameworks.

------
techscruggs
These points seem trivial and obvious. I would be much more curious to see
performance comparisons, congruent external packages (what is the 'devise'
analog in groovy) and how might your solution to the same problem differ in
each framework.

~~~
mgkimsal
probably the closest analog would be the spring security plugin, but I'm not
well versed in devise enough to say for certain.

<http://www.grails.org/plugin/spring-security-core>
<http://burtbeckwith.github.com/grails-spring-security-core/>

------
mgkimsal
A few notes:

Grails db migrations will be bundled as standard in grails 1.4 (hopefully
released in next month or so). Currently it's a plugin - grails install-plugin
db-migrations.

Reloading - this is something that happens a lot to the Grails' domain
reliance on Hibernate. I was told some time ago that it was being worked on to
be more seamless, possibly requiring fewer/no restarts. FWIW, in dev mode,
controller and view files are automatically reloaded without requiring a
restart. Service files with static methods in them seem to require a restart,
and domain changes require a restart. If you change a domain, in dev mode, the
system will restart automatically, but it'll go through the init process, and
your state will be lost.

Testing - conceptually there's a lot of nice stuff in Grails, but Rails is
still further ahead here due to speed. Grails _unit_ tests are generally fast,
but _integration_ tests require the whole Grails stack to be started, and this
generally takes 35-45 seconds on my system (MBP 2.66ghz). You can rewrite a
lot of integration tests as unit tests with loads of mocks and such, but it's
not elegant. Grails 1.4 is supposed to bring 'improved testing', but I'm not
sure what that means.

If you're doing groovy or grails, you owe it to yourself to use
<http://kobo.github.com/groovyserv/> which starts a daemon. Running groovy
normally invokes a JVM on each command - groovyserv eliminates that entirely.

Finally - gentle plug - if you're in to groovy/grails tech and haven't checked
out groovymag.com PDFs, please check it out. Ping me for coupon codes if you
want. :)

