DEV Community

Cover image for Kotlin Multiplatform: Ready or Not?
Justin Mancinelli
Justin Mancinelli

Posted on • Edited on

Kotlin Multiplatform: Ready or Not?

The results of my twitter poll are in:

Liquid error: internal

Final results: already started = 44%; Ready to jump in = 21%; still a bit too early = 35%

What will it take to move from "too early" to "ready"?

If you have started, what have you built and what successes and challenges have you experienced?

If you haven't, what's holding you back?


This question also inspired a more general one: How do you know when a technology is ready?

Top comments (6)

Collapse
 
atkaranshah profile image
Karan Shah

The fact that Google came out with Flutter and is pushing it hard has dwindled my confidence in Kotlin Multi Platform.

As a company, we were planning to adopt it but chucked the idea after seeing how Google is actively promoting Flutter.

I know Flutter isn't for backend but we can just use a more mature tooling there like Ruby on Rails or NodeJS

Collapse
 
piannaf profile image
Justin Mancinelli

planning to adopt it but chucked the idea after seeing how Google is actively promoting Flutter

Thank you for being transparent about that. Google definitely has been putting more money into developer relations and marketing than JetBrains is. The Android team and Flutter team are different teams with different budgets (from the outside looking in). Someone at Google wants to see how far Flutter can go, but the Android team is not slowing down with their own stuff and doubling down on their commitment to Kotlin.

I know Flutter isn't for backend but we can just use a more mature tooling there like Ruby on Rails or NodeJS

Yeah, and backend devs are no strangers to mixing technologies. Anyone using Java for backend already would probably be better served by choosing Kotlin than changing technologies. Kotlin on JVM is very mature and Kotlin is supported by many cloud services too.

One of my concerns is Flutter on iOS because I doubt Apple will work with Google and I expect Cupertino widgets will lag. Not too big of an issue if you have all custom widgets or don't worry about Material widgets on iOS, but I do think more mature or bigger scale apps will run into issues.


Thank you for your thoughts

Collapse
 
kpgalligan profile image
Kevin Galligan

I would also point out that there will be a Kotlin Multiplatform plugin for Android Studio next year that will let you run/debug iOS apps with shared code, from Android Studio. You really can't think of "Google" as a company with a single strategy. I can assure you the Chrome team would love to convince you that none of this matters because of PWAs.

Thread Thread
 
atkaranshah profile image
Karan Shah

Totally agree with you! I would love to see that in action and then course correct then :)

Collapse
 
atkaranshah profile image
Karan Shah

We have shipped iOS apps with Flutter and they work great. Never had any performance issues. We built a common UI for Android and iOS so saved a lot of time there too!

While Kotlin might be supported by hosting providers - the community, third party plugins, etc aren't so great. These matter a lot and the adoption for Flutter is wild

Thread Thread
 
kpgalligan profile image
Kevin Galligan

"Wild" I would not necessarily agree with. There's a lot of developer interest, but for anything that isn't greenfield or of a significant size, there is significant risk and pushback. That message is obviously not telegraphed by the Flutter team, but it is a common response in our experience.

However, it's not really "Kotlin vs Flutter". The Android community gets into this debate. They're quite different and will be used by totally different teams on different things. I think it'll be more Flutter vs Hybrid app (or similar). However, predicting the future is not easy. Maybe it'll all be Flutter in a few years?