7 comments

[ 2.8 ms ] story [ 26.8 ms ] thread
I used to be excited by Kotlin.

After using it, and now having newer Java versions, I find it doesn't offer enough anymore. I'm thankful it might have helped Java get better though.

I'm highly waiting for project loom to be ready, and maybe someday to be able to define functions with no class in Java (pipe dream?).

I also feel like the hype has pretty much died off.

Am I the only one feeling this way?

Kotlin now seems to be the language of Android.
You’re not. Kotlin’s vision to be a high-level, developer friendly language across all platforms seems unfocused to me.
I thought project loom had no plans to be ready and it’s just an experiment
Been using Kotlin for ten'ish years. I feel the same, although I'm not part of the Java camp, coming more functional i.e. Scala. I was working on a number of open source libraries for a more functional reactive Kotlin, but have largely stopped.

They really painted them selves into a corner by doubling down on Spring, Micronaut etc. There is little benefit to those and Kotlin. From the back-end side, it's Java light, and Java has largely caught up.

If they kept to Ktor, Quarkus, vertx that could compete a bit with the Node/lighter crowd. Or people who limit class usage and focus on a more functional style. But that leads into that target audience...

Is not as apt to use Jetbrains projects, ancedotal observation. When I started Jetbrains was heavily used for python, ruby, etc. I converted several teams to Kotlin pre 1.0. But now with VS Code being the primary IDE/Editor, it's a much harder pitch.

The multi platform stuff feels half baked out side of UI. Having done several run time agnostic services, I hit so many road bumps. Jetpack compose is really cool though.

Where to go? This is an honest question. I just got done a project where we tried to go to Rust, and reverted due to wider difficulty with the borrower system across teams.

On another contract I spent several days tracking down node module resolution issues, and incompatibilities between peer dependencies. The script portion of package.json feels lacking compared to gradle and dependent task trees. NRWL/nx and Microsoft/Rush help a bit here.

I still feel Kotlin is a really good language, with graal if treated as Node with a better build system. But I rarely see that, mostly it's akin to J2EE or mobile.

Zig looks promising because it has an actual leader, putting their name and skin in the game. I think a single visionary must provide a personal commitment to their language and take risks on its behalf, at least during its infancy. Or else no one person wants to be responsible for the language, leaving it overwhelmed, trying to satisfy everyone at once. Zig vs Rust in a nutshell.

New languages that lose their founder tend to flounder.

If Google had standardized on the language, I'd be more likely to bother with it. But it's only for Android.

The situation is a PITA.