Groovy
Groovy and Swift Similarities
Check out the linked deck by @ciklum. Specially starting at slide number 11 to see the similarities between Groovy and Swift.
As I mentioned yesterday in my talk at GR8Day Warsaw, I think we should strive to push Groovy's presence on Android. If we achieve that it will mean a healthy groovy growth and survival in the future.
That the most hyped language in the past years has so many similarities with Groovy should encourage us to go further.
Grails
Unit Testing URI-Based Grails Filters
If you are using Grails 2 filters this post, by @IgorShults, may be of interest to you since. It shows a simple solution to unit test URI-Based filters.
Gradle
Basic Gradle Plugin Writing
ysb33r offered a great introduction to Gradle plugin creation at GR8Day. Specially interesting his suggestion of using methods instead of properties and how to test compatibility.
And please, honour offline. :-)
Tools
Jenkins + Groovy with the Job DSL Plugin
I watched @sheehan00's talk at GR8ConfUS long time ago. Saved it in the pipeline but I had not included in the newsletter yet because I wanted to test it out first. Yesterday, at GR8Day Warsaw I attended the talk about the Jenkins DSL Plugin by @wybczu and @SolidSoftBlog and I realised that I should have spread the love about this Job DSL plugin earlier.
The basic mechanics of the Plugin are:
- Developer updates DSL scripts locally
- Developer pushes changes
- SCM change triggers seed job
- Seed job runs DSL
- Seed job updates/creates/deletes
Check out the slides
Libraries
Accurate REST - Consumer Driven Contracts verifier
Lets say you have two apps which communicate between each other. App A exposes a JSON-API, App B consumes the exposed API. @olga_maciaszek's talk at GR8Day showed how to use Accurate REST to ensure the communication remains unbroken. It allows to generate a contract which describes the API using a Groovy DSL. Once you have defined the contract, the tool generates a JSON payload so that you can mock the endpoint response in App B and it generates a test to ensure App A does not break the contract.
Checkout the the video of Olga talking about Accurate REST in DevConf.cz.
Sshoogr for your infrastructure
I linked to sshoogr back in Issue 9. I have recently used it at work to transfer files to EC2 instances and execute remote commands. It is awesome. In @codingandrey's talk at GR8Day Warsaw I discovered a couple of nice things which I was not aware of. There is an IntelliJ IDEA DSL, you can mock an ssh server and Sshoogr has a brother called Groowin to allow you to connect to WinRM Servers.
And it is pronounced sugar!
Comment
I am writing this issue from the airport on my way back from GR8Day Warsaw. The one day conference was a blast with great content and a new format which I liked. Consecutive 30m/30m talk blocks followed by a long break. I think it gave the conference pace and encourage discussion. Venue, organization, party afterwards, everything organised perfectly. Well done guys.
Attendance was fine around 70 persons. The vibe which I perceived around the language is a mixed feeling. On the one hand the community is positive about how rich the ecosystem is, on the other hand the community size is small and it is easy to perceive scepticism even among the most groovy seasoned about the future.
My opinion: Although I share some of the somber thoughts, I am all-in with the language and the ecosystem. We are developing with Grails 3 and many other pieces of the ecosystem (Spock, Geb, Gradle, Sshoogr ..) and I think it gives us a faster development pace. I think we need to evangelise the ecosystem and here are a couple of links to do just that.
Groovy Calamari