Gr8Conf 2014 in Copenhagen has been great. Three days filled with very informative talks, learning the latest from the Groovy community and mostly meeting all the people involved with the Groovy community, both project leads, members and users.
As always the first day of the conference is a university day with workshops that take 3 hours.
This format is more of a hands-on experience.
The day started with a Getting Groovy workshop to learn Groovy and play around with the language given by myself (Hubert Klein Ikkink).
Notes and the presentation can be found at Github.
The following session we attended was Creating RESTful API's with Grails and Spring Security by Alvaro Sanchez-Mariscal.
After some startup problems, we were running out of time, so he did a live coding session.
Where a rest service was created and login functionality added.
I got some good ideas for our upcoming rest workshop.
The final session of the day was really about playing: Getting Groovy With Lego Mindstorms EV3 by Ryan Vanderwerf.
Ryan gave a small introduction about leJOS as an operating system for the Mindstorm computers, capable of running Java code.
But we can also use Groovy and run the compiled classes on a Mindstorm computer.
It is good to use the
@CompileStatic annotation, because otherwise the application will be to slow to run.
After the introduction Ryan had five Mindstorm sets we could play with.
It was fun to write little code snippets with actions for the Mindstorm 'robot' to execute and then upload them to the Mindstorm computer and see the results.
This was really fun and the Groovy support can be even extended by including builders for instruction.
The project is open source and we can all contribute.
Code from the talk is available at Github.
At the same time the workshop about Unleashing the power of AST transformations by Cédric Champeau started.
The great thing about AST transformations is that you can change the bytecode, so non-groovy languages can use it.
There are multiple phases where you can use your transformation, depending on what you want.
These were some hard exercises.
Homework! The workshop is also available online.
It is tradition that the university day ends with Hackergarten. The goal of Hackergarten is to work on open source projects in small groups and try to make a contribution in a 2-3 hour time span. Groups worked on Ratpack, Grails plugins, implementing a GUI for GVM and other projects while enjoying some drinks and pizza. The conference on the next two days is filled with talks of about 50 minutes.
The conference was opened by Søren Berg Glasius of the organizing team. Guillaume Laforge followed with a keynote about Groovy in 2014 and beyond. The day before Apple announced Swift as a new programming language and Guillaume could already show the resemblances between Swift and Groovy. Swift has "borrowed" some nice Groovy features.
The second day of the conference started with a keynote talk about Grails 3.0 and beyond by Graeme Rocher. The future of Grails is all about using Gradle as the build system, modular design, support for multiple types of applications (microservices, big single application). Grails 3 will be built on top of Spring boot and Graeme already showed a working Grails 3 application on stage! The future of Grails still looks bright and it is nice to see the platform really evolves and supports the latest trends in software design. After the keynote I (Hubert Klein Ikkink) did a session on Gradle: Gradle Goodness. As always I want my presentations to be full of code snippets, like my blog. Some known and maybe lesser known features were shown with live coding samples. Göran Ehrsson talked about how he makes use of grails plugins to quickly make applications. All the logic is in the different plugins and an application is just glueing the plugins together. He has made a lot of his plugins available at Github. Marco Vermeulen did a talk on Building micro services using Groovy, Spring Boot and friends. It turns out it is very simple to get started with writing Spring Boot applications and use Groovy as the language to develop your code. This really feels like a natural fit, where the underlying framework is all about developing fast and we can use the Groovy language to express ourselves in neat, readable, maintainable and concise code. At the same time Cédric Champeau did a presentation on how to write Android apps with Groovy. Unfortunately we couldn't attend the session, but the Groovy 2.4 beta already contains the code that makes it possible to use Groovy for Android! After lunch Ryan Vanderwerf talked about his experiences with cloud computing and which tools we can use to make life easier when working with cloud solutions. He has really some real-life tips and tricks and pointed out pitfalls to avoid. Colin Harrington talked about Functional testing your Grails app with GEB. He explained first the features of GEB and then showed how we can write our tests using GEB for a Grails application. GEB is very powerful, because of the page model, which allows for very solid tests, even though underlying content on pages can change (for example dynamic HTML id values). Finally Rob Fletcher talked about Idiomatic Spock. The presentation was filled with a lot of useful tips on how to write good specs and how to use the most of what Spock has to offer. He also showed some common pitfalls and ways to do it right. We could only cover the sessions and talks we attended.
Please visit the Gr8Conf website and learn more about the other talks. In the upcoming weeks the video's of the talks should be available on Youtube and check the presentation description pages, because they will contain links to slides. Gr8Conf 2014 was again very good organized. The talks have good debt and the nice part of this conference is that you can meet all the amazing people that develop the Groovy related projects and frameworks, but also those that use the frameworks in their daily life and just enjoy programming. Written by: Tammo Sminia and Hubert Klein Ikkink