Archive for January 2009:
As I mentioned in an earlier blog post, the agenda of the conference is actually an integration of a list of events coming from a Google Calendar. So when you see the days, and the various time slots and their description, we simply harvest the public ICS (iCal format) link from Google Calendar, thanks to the iCal4J library, and just display that in a GSP.
I was wondering whether it could make sense to transform that into a Grails plugin, but it's so simple that I'm not sure what would the plugin would really contain and do!
And again, at the risk of repeating myself, what I particularly like about that solution is that we've got a very user-friendly editable calendar thanks to Google Calendar, instead of having created our own domain classes, controllers, views, etc. Usability rules!
But without further ado, here's the relevant snippet of my GSP showing how to parse the ICS feed, introspect the data model of those events, and how to render them nicely (with the right timezone, in chronological order, regrouped by day) in our Grails app.
This always amazes me how fast the Google bots are to catch up with new sites and index them. The GR8 Conference website has just been up for a few days, and Google already lists it in the first search results when you type "groovy grails conference" or "groovy grails griffon".
Thanks Google bot! Come back whenever you want, the door'll always be open!
Our conference agenda is currently in the works, but the underlying infrastructure is ready, as we've just deployed another version of our Grails application on Morph this morning.
We could have created our own calendaring system with a couple domain classes or so, but instead, to ease the maintenance and user experience, we decided to leverage Google Calendar calendar sharing mechanisms.
So the agenda you're seeing is actually a few lines of Groovy code that parses the public ICS (iCal file format) feed of our Google-hosted calendar thanks to the iCal4J library, and sorts and prints the various events to the GSP view.
Another option was to simply use Google Calendar embedded calendars, but they're not very customizable and wouldn't match the site look'n feel. And as a last option, it was also possible to use the GData API (instead of iCal4J) to access the calendar information, but one has to provide his user/password credentials, whereas our iCal4J solution simply access the public ICS feed.
That way, we have a very nice WYSIWYG interface to edit and update our conference agenda, with all the bells and whistles Google Calendar provides.
It's now official, the GR8 Conference website is now live!
The site is a Grails application (currently Grails 1.0.4) deployed on Morph AppSpace cloud computing platform.
A few Grails plugins were used to make this application possible:
- Feeds plugin: to provide an RSS feed for the blog
- JSecurity plugin: to secure certain restricted areas of the site
- FCKEditor plugin: to help author blog posts in WYSIWYG mode
- Mor.ph plugin: to simplify and automate the deployment of the application on Morph's AppSpace
- PayPal plugin: to provide secured payments
The registration section is not yet open, and the agenda of the conference hasn't been announced either — but we're currently working on both. Also, left to do is to add some website and feed tracking through Google Analytics and FeedBurner. Then we'll be really fully ready for prime time.
Beside the conference site by itself, there's also a sister site: the gr8onf twitter home page. So if you want stay up-to-date with what's going on around this conference, follow us on Twitter!
So stay tuned, there's more coming!
