Next Saturday, 3rd December, Canoo is sponsoring the Swiss installment of the Global Day of Code Retreat. It’s being held in Lugano, which is easily reachable from Switzerland or Northern Italy. The event is free, lunch is provided, and you’ll get a chance to practice your programming skills while taking part in a world-wide event that criss-crosses the globe. Sound fun? It will be. Here’s what you need to know:
A code retreat is a day long event where programmers get to practice and hone their craft. The format was created three years ago and has been used and improved regularly since then. During the day we’ll use Conway’s Game of Life to practice our design, testing, and pair programming skills. The event has a predefined format and will be facilitated by Canooie Hamlet D’Arcy. This is quite different from our Hackergartens, so you may want to read up on the format so you know what to expect. Michael Hunger has an excellent synopsis of Code Retreat up on the InfoQ website.
The originator of the idea is Corey Haines and he will be facilitating the first code retreat of the day in Australia and then flying to Hawaii to also facilitate the last retreat of the day. There is most likely a code retreat in your area, just in case you can’t make it to Lugano. Check out the map to see where you can go.
There are several sponsors for the Code Retreat in Lugano: Canoo, Ex Machina, and JetBrains to name a few. If you show up then expect to leave with some goodies as well as the free lunch. And please, if you plan on coming then be sure to register on the website so we can provide enough food and coffee.
Hackergarten is on tour again, and in the next few days we have an all day coding event at GeeCON in Krakow (Saturday 14th May) and all night event at GR8 in Copenhagen (Tuesday 17th May). So what is Hackergarten anyway?
Hackergarten is a group of people that come together to write open source code. If you come to Hackergarten, then expect to do some pair programming, learn better how to write code, and make a contribution to the open source world. The idea of the event is to create a hands-on user group, where you don’t sit an listen to a presentation, but instead you learn through doing and creating. Conferences give people tons of energy and excitement, and here’s a way to continue your conference experience and make a positive impact on the world while you’re still amped up from the conference.
Here’s a run-down of some important aspects of hackergarten:
there will be coding – most of your the time is spent pair programming on a small task for an existing project
you will submit a patch – your goal is to write a feature or fix for a project and then submit the patch (or make a commit)
there is no agenda – the session starts with chaos as people suggest coding ideas and naturally from into small teams and groups
you don’t need a laptop – If you have a computer then please bring it! If you don’t then come anyway and don’t worry about it
you don’t need specific skills – All skills and backgrounds are welcome: beginner to expert, assembler to Scala, and everything in between
you can recruit for your open source project – got an OS project of your own? Come to Hackergarten and convince other people to work on it with you
There will be some Hackergarten veterans to help out with the event. We have our own project ideas and can lead some teams if you want.
Andres Almiray – Andres is the lead on the Griffon Framework (among other things) and he’s always ready to lead people through contributing Rene Groeschke – Rene is a frequent plugin contributor to the Gradle build system and will to help people with working on Gradle Hamlet D’Arcy – I am a committer on CodeNarc (static analysis for Groovy) and the Groovy language. I have a ton of static analysis rules that are ready to be implemented for Groovy, and just need some help from you.
You – Got your own project? Please show up and help people contribute!
There is one last important thing: drinks and food are provided. Canoo sponsors Hackergarten (thanks Canoo!), so you’ll at least be fed and watered.
Good news for conference attendees in November… I (Hamlet) will be giving a 15-minute quickie at Devoxx on the topic of Groovy Code Generation. The talk is normally a little longer, but most talks can be improved by making them shorter. I’m sure the 15 minutes will be great fun. Check out the slides for the longer version here.
If you can’t make Devoxx, then be sure to catch fellow Canooie and Language Guru Dierk Koenig at W-JAX during the same time. His slots are all in German, but the code samples will surely be in Groovy.
For those interested here is the abstract for my talk. If you run or help organize a JUG and want a speaker then please contact me. I’m excited to travel around in 2011, see more of the world, and meet great people.
Code Generation on the JVM: Writing Code that Writes Code
“The Pragmatic Programmer” admonished us all to “write code that writes code”: use code generators to increase productivity and avoid duplication. Today’s language communities have clearly caught on, as more and more frameworks generate code at compile time: AST Transforms, Project Lombok, Spring Roo, and more. This session reviews these approaches including examples of how and why we’d want to do this. Come see the newest Groovy language tools, look in-depth at production deployed AST Transforms, and view libraries based on these techniques.
Another month has past and it is once again time for Hackergarten.
Last month we came together and managed to write 4 new static analysis rules for the CodeNarc project, a static analysis tool for Groovy similar to FindBugs for Java. We learned a lot about Groovy AST and had a great time. You should have come by!
This month there are two groups:
Gradle – At the very first Hackergarten we released the “Announce” Plugin for Gradle. Now that Twitter has updated their security layer, we need to rework the plugin to use OAUTH. If you want to learn about Gradle or OAUTH then come by and lend a hand. Show up with your laptop (or don’t)
Mockito and Spock – Mockito is a mock object framework for Java, and Spock is a testing framework for Groovy. We’re going to compare the two projects against each other and create some new “developer cheatsheets” for both projects. We aren’t fully decided, but it will probably be a quick reference that other developers can hang by their monitor as a guide to the projects.
Your Project – Got an idea? Bring it. We need project ideas: Java, Groovy, .NET, JVM, whatever.
Lastly:
Halloween – There is a bar in Heuwaage giving free drinks to those in costume celebrating Halloween. I am bringing my sumo wrestler outfit, and I encourage you to bring your costume. Surely we will break by 10 PM to go celebrate, possibly earlier.
Two weeks ago I spoke at the Chech Java User Group (CZJUG) on the topic of “Code Generation on the JVM”. Some of the technologies covered are Lombok, Groovy, GContracts, Spock, AST Transformations, Spring Roo, and other fun stuff.
As a fun aside: my Ubuntu laptop went crazy the night before and I spent all day before the JUG reloading Linux on my vacation. In the end, I had to switch to my wife’s Mac to do the presentation and live coding. I got the Macintosh fully configured and, during the 1st presenter, realized that I had no VGA output on the Macintosh. Oh geez. The final solution was to share my desktop, have an audience member VNC to my wife’s machine, and project the desktop from the audience. It worked and I’m glad I didn’t have to give the whole talk in chalk on the blackboard (although that would have been a fun challenge).