Friday, July 2, 2010

Now that's Groovy ...

I've recently embarked on a new journey. One that has been a long time coming, but that was an inevitable consequence of my need to learn things new. The time and circumstances were right to take the first steps and so I've started.

You'd be wrong in thinking it involved travel. Nothing quite so exotic. Instead I've decided to take the plunge and finally learn a new programming language. One that I can use to build and develop wicked new applications for the company where I now work.

I made the decision some months ago to start this process, but with all the many and varied languages around these days I was utterly at a loss to decide which one to choose.

When I started out in the IT industry, there weren't that many choices. There was your basic BASIC, and those that have now more or less been relegated to the history books of computer technology: COBOL, Fortran, and the somewhat mysterious and arcane of languages, Assembler. I've dabbled with all of these over the years, but the one language that I fell in love with years ago and that has stayed with me through all my various jobs, is REXX.

I came across REXX in the early '80s when I worked for IBM. It had been developed by Mike Cowlishaw (IBM) in 1979 and was quite simply, perfect. In comparison to APL, which I was using at the time, it was a delight. A simple, elegant, interpretive language that used dynamic typing ... it just couldn't have been any better.

And so my love affair began. Many applications, administrative script, and years later it still comes in handy from time to time. Sadly, it is a language that has never quite made it to the mainstream, which I think is a shame.

So back to my original quest. I was still looking for a language to learn that would provide a platform on which to rebuild my skills in application development, particularly with Web 2.0 in mind. I took a look at C# and ASP.NET, but they didn't quite "smoke my tyres" for some reason, and then I remembered Groovy.

I'd come across Groovy on one of my many foraging sessions around the Internet looking for new and cool stuff to play with. Here was a language that had all the hallmarks of REXX. A style and syntax that was simple and elegant, with dynamic typing, and all the power of Java just under the covers. My decision was made.

Like those annoying ads on TV for useless gadgets, "... but wait, there's more!". In my research to learn Groovy, I also came across something just as exciting, Grails. Here was a framework for developing web applications that used Groovy as the underlying language.

And so my journey has begun ... with texts from my favourite publishers, I've embarked on a new challenge to build my first real application using Groovy and Grails ... but more on that next time. This blogs is already getting to be far too long.

Both Groovy and Grails have something significant to offer ... and judging by the increasing level of interest I'm certain we'll be seeing greater use of both in the next few years. Well at least I hope so ... they're the horses I'm backing.