DEV Community

Discussion on: Scala, Kotlin, or Grovvy? Which Programming language Java Developers Should Learn?

Collapse
 
charliemason profile image
Charlie Mason

I have tried all 3 languages over the last 3 years. I settled on Kotlin in the end to port a key product codebase at work too. For such a new language the tooling is incredibly mature, if you use IntelliJ. It took Scala nearly a decade to get the same level of integration. It's turned out be a great choice. Productivity is definitely up since the switch away from Java.

Groovy is nice, but it feels like an evolution of Java rather than something really new.

Scala is full of neat ideas, but it's also overly complex. There's often several ways to achieve the same thing. So no two devs implement something the same way. It seems to attract the sort of developers that reval in complexity purely for complexities sake. Even the compile times are noticeibly longer.

Kotlin has clearly stolen a lot of Scala's best bits. But it's skipped a lot of the complexixty. Plus it's integration with Java is much tighter than Scala. Our app ships over 150 jars with it. The majority are java libs. Using Kotlin instead of Java has never been an issue with any of them.

I would definitely say look at Kotlin for backend work. It's far more than just what people write Android Apps in these days!

Collapse
 
voidjuneau profile image
Juneau Lim

"Scala is full of neat ideas, but it's also overly complex.": It makes me both excited and worried.
Hope the language would be refined a bit before I starting to get my feet wet.

Collapse
 
javinpaul profile image
javinpaul

I won't say complex but yes, the initial learning curve is a bit high.

Thread Thread
 
voidjuneau profile image
Juneau Lim

OK, Thanks for the warning. Good to be aware. Let me see what I can do.

Thread Thread
 
javinpaul profile image
javinpaul

haha ha, don't worry, I didn't intend to scare you. Scala is a great language to master but yes you need initial zeal or at least a project. I learned while I had to work on a Scala project and I learned in just less than 4 weeks but yes I haven't mastered it yet.

Thread Thread
 
voidjuneau profile image
Juneau Lim

Sure thing. haven't scared. Just good to know ahead, and I HAVE to learn it no matter what anyway. Thanks for kind words!

Collapse
 
javinpaul profile image
javinpaul

I agree with you Kotlin has great tooling in terms of IntelliJIDEA and having JetBrains invented Kotlin only helped it on that front while Scala had to go through the hard way.