
One of the key members of the community, whose very name was associated with this language, has ceased to participate in the Apache Groovy project.
Cedric Champo , known primarily as the author of the static Groovy compiler, is leaving.
If you look at the reasons for leaving, as Cedric himself formulates them, it turns out the story of how the Groovy community wanted better, but in the end unintentionally made itself worse. In the community itself, however, there are other interpretations of what happened. In any case, the story can be interesting and developers from the JVM-world, and not only.
To understand what happened, you must go from afar. The Groovy language, version 1.0 of which was released in 2007, became a contender for the role of the “best Java”: it was also designed for the JVM, and at the same time brought a number of new features that developers loved. For example,
Sadogursky , known to many javistam
Baruch ,
wrote on Habré about how wonderful AST transformations are and how they improve life when working with Java.
')
Groovy penetrated different areas. For example, they founded DSL for build scripts on Gradle on it, thereby dramatically increasing the visibility of the language: various javista began to regularly encounter it in the context of assembly, which provoked further interest in the language. Watching such events, it was easy to imagine a bright future, in which Groovy will take unshakable positions in the leaders of JVM-languages.
Years passed, and Groovy, on the one hand, was fully used, on the other - not to say that it conquered the world. And the prospects for this were uncertain: for example, with the advent of Java 8, the need for “better java” became less obvious.
And then he began to rapidly gain popularity Kotlin. Its creators
call Groovy among the languages they inspired, so in some respects Kotlin resembles Groovy. In principle, this confirms that the right decisions were made in Groovy: they proved themselves in practice, and others wanted to adopt them. But part of the Groovy community was not happy with such validation of ideas, but saw a threat.
Another JVM language (now not only JVM, but initially Kotlin fought for this market). Which is also called the "best Java". Which partly duplicates the capabilities of Groovy. And that is growing fast.
In 2016, Gradle
announced that it would be possible to write build scripts not only on Groovy, but also on Kotlin. And this in the Groovy community, many perceived as a stab in the back. At the time, Gradle helped the use of a language that many developers liked much more XML from Maven. And now, having become popular with the help of Groovy, Gradle supported the arrogant rival!
True, the work on Kotlin DSL stretched so much that only at the end of 2018 (more than two years after the announcement) he
received the status of “production ready”, so that at the moment the world still has not left Groovy in Gradle scripts .
Finally, back to the present. Cedric Shampo announces his departure from Apache Groovy, and in his
post explains the reasons.
He works at Gradle Inc, and writes that his life has become more complicated since the moment when Kotlin’s support for Gradle was announced. Every time he said anything good about Kotlin, people from the Groovy community wrote to him “you don’t need to, you harm Groovy”, “you are not in our Gradle on our side” ...
At the same time, Cedric does not consider Kotlin as a threat to Groovy, he likes both languages, he enjoys both, he sees in both his advantages. Recently, Kotlin is more interesting to him - but for him this does not mean some kind of “transition to the other side of the barricades”, he does not tie his personality to the choice of any particular technology. As a result, he was tired of the sensation of struggle and he was uncomfortable with the situation when he could not just mention the language without encountering objections and banter.
The last straw was the other day he
commited to the Apache Groovy build script written in Kotlin Gradle DSL (which caused objections). According to Cedric, people said that he made such a decision because of working at Gradle Inc, and this he is not ready to tolerate:
“I am Cédric. I am not Gradle Inc.
I am Cédric. I am not Kotlin.
I am Cédric. I am not groovy.
Technologies live and die, I'm not interested in being married with a technology. ”
In this one could see the story of the “terrible community that stumped a person” - but Cedric emphasizes that he himself does not at all consider the Groovy community to be toxic. He believes that there is just a lot of fear for the future (quite understandable), and explains the actions of people by this.
If we consider its interpretation to be correct, then the story emerges as follows: the community fears for the future of the language, but because of these fears itself created an atmosphere from which a bright and useful representative left. That is, wanting Groovy better, eventually made it worse.
In the community itself, however, there is another interpretation: in fact, adding a build script in another language did not cause religious horror, but quite reasonable objections like "this is an unnecessary complication of the project, not everyone knows this language." And with this interpretation, the story begins to look very different.
To form your own opinion, you can read, for example, a
discussion of this commit.
In any case, the story is sad. But, fortunately, Cedric ended up with at least not a scandal, but numerous
grateful replays for everything he did for Groovy.
Minute advertising. Since you are here, you are probably interested in developing in Java / JVM languages - in this case, the JPoint conference may also be interesting (Moscow, April 5-6). At this JPoint, there will be no reports specifically on Groovy, but among the speakers there is an Apache Groovy committer Sergey Egorov - so, if you are interested in this language, there will be someone to talk about at the conference.