Groovy vs Kotlin

Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Groovy
Groovy

733
357
+ 1
176
Kotlin
Kotlin

1.8K
1.2K
+ 1
256
Add tool

Groovy vs Kotlin: What are the differences?

Groovy: A dynamic language for the Java platform. Groovy builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk. It makes modern programming features available to Java developers with almost-zero learning curve; Kotlin: Statically typed Programming Language targeting JVM and JavaScript. Kotlin is a statically typed programming language for the JVM, Android and the browser, 100% interoperable with Java.

Groovy and Kotlin can be categorized as "Languages" tools.

"Java platform" is the top reason why over 38 developers like Groovy, while over 28 developers mention "Interoperable with Java" as the leading cause for choosing Kotlin.

Groovy and Kotlin are both open source tools. Kotlin with 28.3K GitHub stars and 3.28K forks on GitHub appears to be more popular than Groovy with 1.49K GitHub stars and 414 GitHub forks.

According to the StackShare community, Kotlin has a broader approval, being mentioned in 268 company stacks & 208 developers stacks; compared to Groovy, which is listed in 79 company stacks and 73 developer stacks.

What is Groovy?

Groovy builds upon the strengths of Java but has additional power features inspired by languages like Python, Ruby and Smalltalk. It makes modern programming features available to Java developers with almost-zero learning curve.

What is Kotlin?

Kotlin is a statically typed programming language for the JVM, Android and the browser, 100% interoperable with Java
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Groovy?
Why do developers choose Kotlin?

Sign up to add, upvote and see more prosMake informed product decisions

What companies use Groovy?
What companies use Kotlin?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Groovy?
What tools integrate with Kotlin?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Groovy and Kotlin?
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
Scala
Scala is an acronym for “Scalable Language”. This means that Scala grows with you. You can play with it by typing one-line expressions and observing the results. But you can also rely on it for large mission critical systems, as many companies, including Twitter, LinkedIn, or Intel do. To some, Scala feels like a scripting language. Its syntax is concise and low ceremony; its types get out of the way because the compiler can infer them.
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
Gradle
Gradle is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing web sites.
Grails
Grails is a framework used to build web applications with the Groovy programming language. The core framework is very extensible and there are numerous plugins available that provide easy integration of add-on features.
See all alternatives
Decisions about Groovy and Kotlin
StackShare Editors
StackShare Editors
Kotlin
Kotlin
gRPC
gRPC
Go
Go
Ruby
Ruby

As the WeWork footprint continued to expand, in mid-2018 the team began to explore the next generation of identity management to handle the global scale of the business.

The team decided to vet three languages for building microservices: Go, Kotlin, and Ruby. They compared the three by building a component of an identity system in each, and assessing the performance apples-to-apples.

After building out the systems and load testing each one, the team decided to implement the new system in Go for a few reasons. In addition to better performance under heavy loads, Go, according to the team, is a simpler language that will constrain developers to simpler code. Additionally, the development lifecycle is simpler with Go, since “there is little difference between running a service directly on a dev machine, to running it in a container, to running clustered instances of the service.”

In the implementation, they the Go grpc framework to handle various common infrastructure patterns, resulting in “in a clean common server pattern that we can reuse across our microservices.”

See more
StackShare Editors
StackShare Editors
Apache Thrift
Apache Thrift
Kotlin
Kotlin
Presto
Presto
HHVM (HipHop Virtual Machine)
HHVM (HipHop Virtual Machine)
gRPC
gRPC
Kubernetes
Kubernetes
Apache Spark
Apache Spark
Airflow
Airflow
Terraform
Terraform
Hadoop
Hadoop
Swift
Swift
Hack
Hack
Memcached
Memcached
Consul
Consul
Chef
Chef
Prometheus
Prometheus

Since the beginning, Cal Henderson has been the CTO of Slack. Earlier this year, he commented on a Quora question summarizing their current stack.

Apps
  • Web: a mix of JavaScript/ES6 and React.
  • Desktop: And Electron to ship it as a desktop application.
  • Android: a mix of Java and Kotlin.
  • iOS: written in a mix of Objective C and Swift.
Backend
  • The core application and the API written in PHP/Hack that runs on HHVM.
  • The data is stored in MySQL using Vitess.
  • Caching is done using Memcached and MCRouter.
  • The search service takes help from SolrCloud, with various Java services.
  • The messaging system uses WebSockets with many services in Java and Go.
  • Load balancing is done using HAproxy with Consul for configuration.
  • Most services talk to each other over gRPC,
  • Some Thrift and JSON-over-HTTP
  • Voice and video calling service was built in Elixir.
Data warehouse
  • Built using open source tools including Presto, Spark, Airflow, Hadoop and Kafka.
Etc
See more
Alex A
Alex A
Founder at PRIZ Guru · | 3 upvotes · 47.6K views
atPRIZ GuruPRIZ Guru
Gradle
Gradle
Groovy
Groovy
Scala
Scala
Play
Play
Grails
Grails

Some may wonder why did we choose Grails ? Really good question :) We spent quite some time to evaluate what framework to go with and the battle was between Play Scala and Grails ( Groovy ). We have enough experience with both and, to be honest, I absolutely in love with Scala; however, the tipping point for us was the potential speed of development. Grails allows much faster development pace than Play , and as of right now this is the most important parameter. We might convert later though. Also, worth mentioning, by default Grails comes with Gradle as a build tool, so why change?

See more
Interest over time
Reviews of Groovy and Kotlin
No reviews found
How developers use Groovy and Kotlin
Avatar of Philtard
Philtard uses KotlinKotlin

Even though still a young language, it feels so at home sitting in the springboot frame and works with vaadin just great. And in itself it has like all the best parts of java, scala, python mixed into one.

Avatar of fileee GmbH
fileee GmbH uses KotlinKotlin

We use Kotlin both in our Android App and increasingly in our polyglot backend services.

Avatar of claudiofus
claudiofus uses KotlinKotlin

Statically typed programming language for modern multiplatform applications.

Avatar of Valdomiro Bilharvas
Valdomiro Bilharvas uses GroovyGroovy

Used as language to describe and interpret as tools with jenkinsfile

Avatar of Cirrus Labs
Cirrus Labs uses KotlinKotlin

All 20+ micro-services that power Cirrus CI are written in Kotlin.

Avatar of Sodep
Sodep uses GroovyGroovy

NPL solutions and statistical machine learning.

Avatar of Tongliang Liu
Tongliang Liu uses GroovyGroovy

As long as you don't abuse def and Closure

Avatar of movix
movix uses KotlinKotlin

Unit tests, backend with Spring Boot

How much does Groovy cost?
How much does Kotlin cost?
Pricing unavailable
Pricing unavailable