|9:15 am||GR8 intro - Groovy/Grails/Griffon - WTF?
What's so great? Well listen up, we gunna tell ya!
|9:45 am||Gradle. A more civilized tool..
First there was Ant. Then there was Maven. Now there is Gradle.
What makes Gradle stand out from this trio and why should you adopt it? This talk is one third sales pitch and two thirds demonstration of this exciting new build and project automation tool. We will look at how easy it is to build your Java and Groovy projects, and what your options are when it doesn't do what you need out of the box.
|11:00 am||Grails Hacker Triage: Remedies for Common Code Smells
Grails productivity can be a drug - and the productivity rush can lead to a whole lot of untested, unmaintainable code. If you're written one of these bad boys, or have just take over someone else's messy Grails app, you might not know where to get started in moving your codebase to something that you are actually happy to work with. We'll cover 10 painful but classic hacks/shortcuts in Controllers, Services, Views, Taglibs & Bootstraps and how to fix them!
This hands-on talk introduces you to all the built-in Grails Unit testing infrastructure using Spock - a great new framework for simple expressible tests while we refactor 10 common Grails hacks that need work. We will be covering off 10 classic Grails hacks that affect all the core artifacts in Grails applications. If you've been putting off testing your Grails app, or found it too onerous to make happen, this is the talk for you! It's a fully interactive session, so bring your experiences and your war stories.
|12:00 pm||One Ring - a Groovy scripting rules engine web service
One Ring isn't like other "Rules Engines", it's meant to be used as a web service (SOA) for multiple applications to gain access to scripted processing of arbitrary parameters. It centralises storage and processing of common rules (or business rules) for multiple applications that need access to the same rules. Rules are defined using a simple language understandable by domain experts.
One Ring is very light weight, Open Sourced, and aimed at continuous processing for multiple small applications, not batch processing of billions of entities.
With the release of version 1.0 of One Ring, Peter will take you through some of the interesting aspects of developing One Ring in Grails and how you can use One Ring to solve problems, centralise business rules or process scripts. Being developed for use at Legal Aid ACT during development of their Grails based eGrants system Peter will show real examples of integration between new and legacy systems. The Peter will cover off with some of the more interesting and esoteric uses of One Ring.
|2:00 pm||Groovy.DSLs(from: beginner, to: expert)
This talk examines how dynamic languages in general and Groovy in particular take us toward the goal of writing programs for a particular domain using phrases that look familiar to subject matter experts from that domain. Groovy, is a popular and successful dynamic language for the JVM. It offers many features that allow you to create embedded Domain Specific Languages(DSLs) including Closures, compile-time and run-time metaprogramming, command chain expressions, operator overloading, named arguments and other concise syntax conventions.
The talk highlights many of Groovy's DSL capabilities through numerous realistic examples. We'll give the example, explain the tricks used to implement the DSL, including any pros and cons as well as tackle the often forgotten but key aspects of readability vs complexity, testability, evolution, and the various considerations to keep in mind while designing DSLs.
|3:00 pm||Practical examples designing DSLs written in Groovy.
We all know and love the big DSLs, but how can we leverage the power of Groovy to create domain specific languages in our own projects? In this talk I will walk through some examples of how to harness groovy power for teams there to get a job done. In this talk I will create a flexible DSL solution to a data migration problem.
|4:30 pm||Lightning Talks
|6:00 pm||CJUG Birds of a Feather Drinks and Pizza - ANU Union Beer Deck |
Come and join the speakers and the Canberra Java Users Group community for drinks and pizza and a chat.