Hacker News new | ask | show | jobs
by kibwen 5140 days ago
I'll look into Groovy some more, as I don't know enough to dispute most of those points. The one sticking point that I can see right now is Wide Adoption, which primarily means, "If I go to my boss right now and recommend this language, how likely is he to have ever heard of it, or ever heard of any product that uses it, or ever heard of any company that uses it?" My boss has heard of Java. My boss has only tangentially heard of PHP, but surely he's heard of Facebook from his kids, and Facebook uses PHP (not that I necessarily want to encourage him to use PHP). My boss hasn't heard of Python, but he's heard of Google, which sponsors Python development and uses it internally. What companies use Groovy? What well-known software has it produced? These questions are essential barriers to adoption in a company such as mine.
3 comments

"Wide Adoption" - always hard to pin down, but as my ears are tuned to Groovy, I'm seeing it in more places. In some ways it's harder to pick out, because a company that's 'using python' will more likely have a larger stack of python (or jython) code. Groovy can (and does) fly under the radar more, precisely because it's so similar to Java syntactically, and fits in the toolchain (add a jar to the classpath and you're off).

You probably won't find many projects built "just" in Groovy - because of its JVM nature, you're more likely to find Java projects which are enhanced with Groovy (Groovy plugin for Hudson, for example, and the Play framework supporting Groovy in templates). Gradle as a build tool is starting to get some traction.

Groovy will probably be more behind the scenes than you'd like for a 'hey boss everyone is using this' sort of pitch, but it's not going away any time soon, and adoption is growing.

Biases on the table - I've done a number of mid-scale projects in Grails over the past several years, and I also run groovymag.com.

_Wide Adoption_ means many platforms, doesn't it? If you use Groovy, you're limiting yourself to the JVM. All the other languages mentioned, i.e. Scala, Clojure, Ruby, and Python, have both JVM and CLR versions. Since Oracle's aquisition of Java 2 yrs ago and its subsequent courtroom behavior, it's important to have a scripting language that runs on both the JVM and CLR, just in case. There's no move whatever to port Groovy to the CLR.

As for wide adoption, Groovy's used in Grails but not many people seem interested in it as a standalone language. See O'Reilly's book sales for the year to March 2012 (http://radar.oreilly.com/upload/2012/03/Lang_QTR_Units_PrevY...).

Cool. FWIW, here's a list of places using Grails:

http://grails.org/Success+Stories

and note that Groovy is commercially supported by SpringSource, a division of VMWare. I'm guessing your boss has heard of VMWare.

Thanks, this will definitely help. And if my boss hasn't heard of VMWare, I know that his boss has.