In search of the Holy Grails of web development
Two things happened recently that have inspired me to step back from
CFML and take a look at a different web development environment. Paul Kukiel
post on how to install GlassFish and CF (with link to adding Railo) and Dan Vega's post about a free Grails book.
A lot of CFML projects have taken inspiration from the JAVA, PHP and
Rails world - ColdSpring, Transfer ORM (and more recently CF9 ORM),
CFWheels, SplashCMS ... As CFML engines are JAVA based and can utilise
JAVA classes easily, I have always thought if I was going to learn
something else, it would be from the JAVA side of the fence; but just
not JAVA. I have heard a few positive things from CF people about
Groovy, and the Rails thing is popular at the moment, so Grails seems
like it ticks all the right boxes.
So even if I don't be come a Grails developer, I still this there are 2
useful outcome; well maybe 3, but I am not entertaining that idea at
the moment
- An understanding of where the CFML projects are coming from and perhaps learn better modeling techniques
- More appreciation of what CFML is doing for the developer
- A new career choice
So far I have spent a few hours going there the guide and am impressed
by what Grails can do. And what is suprising me at the moment is that I
am not fussed by the fact I am using command line and a text editor. I
know there are IDE's out there, so if I do get serious I know there are
better options. But also, using a text editor is a great way to learn
new languages. It is too easy to look at code and think you understand
it. But it is not until you spend a few minutes tracking badly cased
class names or a missing curly bracket will you really learn the syntax.
I have taken a quick peak at the HTML Grails creates and it is not too
dissimilar from CFML; there is ${variableName} verses #variableName#
and <g:tag /> versed cfTag />.
I also created a war of my web app and dropped it into GlassFish - and what do you know, it run :-)
The other thing I am thinking about, but resisting the urge to get
distracted at this early stage, is to call the classes created by
Grails from CFML