by Guillaume Laforge, PMC Chair on the Apache Groovy project and Restlet product lead and developer advocate.
After Groovy joined the Apache Foundation, the monthly downloads doubled to 1.3 million per month. That’s a massive increase in less than six months. I’m trying to take lessons from the Groovy community and apply them to Restlet. Hopefully, you can apply these learnings to help your favorite open source community too.
The download numbers are an interesting indicator to see how much a project is used. The numbers are taken from the downloads from both Maven Central and Bintray.
Learning 1: Put the Community First
The Groovy community is strong and is a great fit with the Apache Foundation. We moved the Groovy project to the Apache Foundation as a message to the community to say that the community and ecosystem matter the most.
By putting the project at the Apache Foundation, it is a stamp saying that the project is here to stay for the long run. It makes the Groovy project independent from any outside company.
The Restlet Framework project, a great help for developers to start your API design and creation, is very different from Groovy. I thought about how I could apply lessons from Groovy to Restlet. One of the things that a community needs is a method of communication. In my first six months at Restlet, I moved the Restlet Framework discussions to a new Google Groups mailing list. I also started to write a free weekly newsletter about the API industry. This is information of general interest to the community and is not specific to Restlet. By helping the community in small ways, I hope to make it easier for members to help themselves, both with usage as well as general education.
Learning 2: Mobile Developers Are Important to Your Project
It seems every company talks about supporting mobile and every project is moving in that direction. With Groovy 2.4, we started to support Android. This quickly proved to be a popular addition and even large companies like the New York Times started to use Groovy to build their Android mobile apps.
Mobile is one of the main driving forces of the API economy. Restlet already works with mobile developers. The things I learned around Groovy have a more subtle influence on how I work with the Restlet community. I used to think of Groovy as a backend language. When it started to be used more widely on mobile devices, I realized that it could be much more. In a similar way, API design and development were primarily done by backend developers. After working with the Restlet community, I realize that more people care about API development, including some of the people focused on mobile development.
Learning 3: Your Project Exists in an Ecosystem
Groovy adoption these days is also positively influenced by the Gradle build automation solution. This system is also used by Google as the standard process for building Android applications. Gradle uses Groovy as its build language.
Although we didn’t initially design Groovy to be a build or configuration language, I’m happy to see the community find new ways to use it for the API design of their professional project.
This is a valuable lesson that I try to apply to the Restlet community. The people using an open source project are an incredible source of valuable creativity. In the same way that I learned from other open source projects using Groovy, I would love to learn more from other open source projects that use Restlet Framework.
In my work with both the Restlet and Groovy communities, I try to create an environment where the people can help each other to learn by exchanging information. Due to my long history with the Groovy community, we’re seeing the Groovy community subtly influence the Restlet community. I look forward to more cooperation in the future.