Learning Groovy and Self-publishing

What is Groovy and why should I care?

Hello again, it's me, Adam. Earlier this year, I finished my self-published book, Learning Groovy, which is about, well, learning Groovy. It also covers the top Groovy-based tools and frameworks, Gradle, Grails, Spock, and Ratpack.

I've enjoyed using Leanpub as a place to work on my books (What's new in Java 8 and others). It is really easy and developer friendly. It uses a Dropbox folder and you can write your book in Markdown (which I did). I've enjoyed a fairly constant trickle of purchases, but I was frustrated that I never had enough time to devote to the other huge part of self-publishing: marketing. To be really successful with a book, it needs to be marketed really well. You need to put in a lot of time and money. So, when it came to publishing "Learning Groovy," I approached several publishers to do the marketing for me.

Luckily, one of them accepted, and I'm currently in the process of final edits (publisher shall remain anonymous for now).

This means that you can only get the self-published version of "Learning Groovy" for a limited time. Once it goes to the publisher, I have to take down all my versions per the contract.

"What is Groovy and why should I care?" you ask? First of all, what rock have you been living under? Secondly, Groovy is a mature and flexible open-source language that runs on the JVM. Want to learn more about functional programming, want optional dynamic typing, easy restful services, easy reactive web applications (Ratpack)? Maybe you to learn about the most popular build framework and testing frameworks for Java (Gradle and Spock)? Groovy is where it's at.

Views: 169

Comment

You need to be a member of Codetown to add comments!

Join Codetown

Happy 10th year, JCertif!

Notes

Welcome to Codetown!

Codetown is a social network. It's got blogs, forums, groups, personal pages and more! You might think of Codetown as a funky camper van with lots of compartments for your stuff and a great multimedia system, too! Best of all, Codetown has room for all of your friends.

When you create a profile for yourself you get a personal page automatically. That's where you can be creative and do your own thing. People who want to get to know you will click on your name or picture and…
Continue

Created by Michael Levin Dec 18, 2008 at 6:56pm. Last updated by Michael Levin May 4, 2018.

Looking for Jobs or Staff?

Check out the Codetown Jobs group.

 

Enjoy the site? Support Codetown with your donation.



InfoQ Reading List

Airbnb Implements Context-Aware Identity Model to Support Privacy-First Social Features

Airbnb has redesigned its identity system to support privacy-first social features in Experiences. The platform introduces context-specific profiles that separate global user identity from externally visible profiles, preventing cross-context linkage. The migration leveraged automated auditing, manual validation, and AI-assisted refactoring to enforce correct identity usage across services.

By Leela Kumili

JEP 533 Tightens Exception Handling in Java's Structured Concurrency for JDK 27

JEP 533, Structured Concurrency, has reached integrated status for JDK 27. It refines exception handling and type safety in its API, particularly focusing on exception flow with a new ExecutionException type. Changes include an updated Joiner interface and a new open overload for easier configuration. The steady evolution signals ongoing development as feedback shapes the API.

By A N M Bazlur Rahman

Presentation: What I Learned Building Multi-Agent Systems From Scratch

Paulo Arruda discusses Shopify’s evolution in AI adoption, moving from simple chat tools to a sophisticated swarm of specialized agents. He explains the transition from massive "all-in-one" prompts to lean, narrow-focused agent microservices that slash task times from hours to minutes. He also shares a future-looking hypothesis on using filesystem-based adapters to solve context bloat.

By Paulo Arruda

Article: The Mathematics of Backlogs: Capacity Planning for Queue Recovery

Backlogs in distributed systems are arithmetic problems, not mysteries. This article provides practical formulas for calculating backlog drain time, sizing consumer headroom, and setting auto-scaling triggers. It covers key failure modes — retry amplification, metastable states, and cascading pipeline bottlenecks — plus when to shed load instead of draining.

By Rajesh Kumar Pandey

Grafana's Pyroscope 2.0 Makes Continuous Profiling Practical at Scale

Grafana Labs has launched Pyroscope 2.0, a rearchitected open-source continuous profiling database. This version improves storage costs, query performance, and operational complexity. Key changes include single write paths for profiles, stateless query processing, and enhanced capabilities for profiling data. It supports the OpenTelemetry Protocol, aligning with current trends in observability.

By Matt Saunders

© 2026   Created by Michael Levin.   Powered by

Badges  |  Report an Issue  |  Terms of Service