I've dabbled in Grails and actually got a small web app up and running in a few hours. Needless to say I was pretty impressed. What do you think would be the best way of introducing Grails into a Java shop? Maintenance screens for larger Java projects? Complete smaller projects? Something else? Looking forward to checking out your book.
Just as "sneaking" Groovy into the enterprise by doing Unit Testing and proving how powerful, easy to use and flexible Groovy is to management, the same
model can be used for Grails. Find something small that could help your management do their job better (or developers do their job better), build that in Grails and
just watch management come on board
Using Grails to quickly prototype new apps also comes to mind. Especially potent if the people you are showing it to reprimand you for using so much time to do the prototype and you reply "Oh, I just thew this together this morning..."
Great question! I was just talking about this in another thread.
For me, the best way to gain traction is to kick some goals! I picked a few small projects off the client's "we need this now, but we don't have budget to spend a month building it" category. If you deliver on one of those in an afternoon, you'll start to get people's attention!
The most useful thing is that it starts dialog around Grails too. People asked me "But we will need to deploy it on Websphere one day". I could then explain that a Grails app is just a standard war file, standard bytecode, etc. Helps calm people down and gets them talking about Grails for bigger jobs.
There is certainly a trade off between the benefits of Groovy and resource usage. I also believe that Groovy 1.6 uses more memory than the previous version, but that is the result of changes to make it execute faster. On the other hand, the memory usage may not be as bad as you fear. Are you using something like the JMX console to see the Java heap usage?
Grails has a lot of dependencies, and many of the plugins add even more. That's why the WAR file is so large. You might be interested in Glassfish v3, which I believe has a shared library mode. This shares the Grails dependencies between all deployed Grails applications, so the application WAR file is significantly smaller (of the order of a few megabytes).