4 ms·
The features you describe in a way is what I see the biggest downfall. The idea of Kotlin multiplatform itself is good, but I don't think Jetbrains as a compan
by re-thc 3y ago
The features you describe in a way is what I see the biggest downfall.
The idea of Kotlin multiplatform itself is good, but I don't think Jetbrains as a company can sustain it. They're trying to do too much for their size and it shows. There are bits and pieces everywhere but they lack polish.
There's a lot of "Kotlin way" libraries, frameworks and language constructs that are all 1/2 backed. They either have bugs, missing enough features that you can't use it in a full project or get abandoned. It lost focus moving to multiplatform. Perhaps it'd be better if they focused back on being a better Java. Not to mention the Kotlin compiler is as slow as a snail. This is being worked on in 2.0, but for now and for a long time it's been terrible.
On the other hand Java has gotten stronger and caught up a lot. There's now less incentive for Java developers to migrate. The only big switch has been Google and Android. Whilst others have moved - those are all Java first frameworks with Kotlin "support". This arguable relies on the developer to somewhat know Java.
For non-Java developers - Kotlin is as hard to get into as Java. You need Intellij (the Jetbrains IDE), to install the JVM and work out Gradle (in Kotlin it's recommended vs Maven). This enough can be a showstopper for some. There are a lot of layers and hurdles before you can even "Hello World". For the some crowd, there are those that are anti Java / JVM and hence won't adopt it.
Likely a lot more pain points...
I wanted to like Kotlin a lot more and do, but it's not all perfect.
- sureglymop 3y agoThese are good points. In my opinion, Kotlin is easy to get into for anyone with some programming experience (not necessarily Java) and it is very well documented. The issue though is the tooling. Maven or Gradle is what's hard to get into, not Kotlin itself as a language. It sucks that there is such a barrier to just get things running. If there was a simple "rustup" or "cargo" like command that sets everything up imo. it would be more popular.