The Grails Painkiller

I've been developing web sites and web applications for the past 10 years.  In that time, I've had a chance to use many different tools and technologies.  The process was always painful... until I discovered Grails.

So, what are some of Grails' pain killers?

Page Lifecyle

Anyone that has worked with JSF or ASP.NET, knows the hell that is "the page life cycle".  Before Grails, I assumed there was a sound technical reason for the complexity behind these frameworks.  As it turns out, I was wrong.  Grails has the simplest and most straight forward page lifecycle I have come across.  Are you ready for it?  Here it is:

  1. User's browser makes a request to the server
  2. Controller handles the request and responds with a view and a model
  3. The view is rendered along with it's associated model

What?  Things happen in the order you'd expect?  You betcha!  Now click on the links above for JSF and ASP.NET and do a little comparison. 

Grails wins!

Groovy

Groovy is a powerful, dynamic language which integrates seemlessly with Java and all those third party libraries you've come to know and love.  Groovy is Java 2.0 (closures anyone?).  It's syntax is clean, elegant, and it makes coding fun again.  It's been invigorating to have those "wow" moments while developing applications.  I can't remember a framework or language this rewarding to work with.

GORM

GORM (Grails' Object Relational Mapping) is amazing.  I am no fan of SQL or writing schema, and GORM replaces those obstacles with simple domain objects.  No need to write scripts that generate the database tables.  Define your domain objects, their relationships to each other, their constraints and you're good to go.  GORM makes creating a web application which is portable across a plethora of databases painless.

Plugins

Plugins are the secret sauce which makes Grails even that much more special.  The plugin community is very active and growing.  It's got everything from charting to rich AJAX to performance.  If the plugin you need isn't there, you can write one.  It is open source afterall and the cool part, a plugin is just another grails app!

There's more to Grails than what I've mentioned here.  The best way to to judge it is to download it and play with it yourself.  Be careful though, because you might get hooked.  It's powerful stuff, and it sure blows away the alternatives.

Comments:

Subject*
Name*
Comment*