Java to Kotlin: Revolution or Overhyped Transition?

Java to Kotlin: Revolution or Overhyped Transition?

Topic about migration from java to Kotlin it’s more about “religion” in my opinion. Kotlin is definitely reasonable in case when you are developing Android mobile application. And about using it on mobile side there is no second thoughts. ?

?But what about not mobile device but backend side for Kotlin and we are looking migration from Java to Kotlin?

I want to do here honest review here and look deep without any marketing ad is it worth it migration from java to kotlin in real project.

I think every instrument including programing language it’s just instrument to solve some problems and create some new.

So when we chose something we need to look deeper in our case why we need change our code database from Java to Kotlin

?So why you should not migrate from Java to Kotlin:

1.???? No boost performance after migration. Company\Dev Team will not get any performance advantages or boost speed after moving to Kotlin from Java. Both programing languages uses Java Virtual Machine (JVM). Under the hood, Kotlin compiles to JVM bytecode, which can be executed by any standard JVM. So competition Java vs Kotlin it’s competitions JVM vs JVM. Who wins here? The correct answer there is no winners. But because of specific Kotlin futures it’s possible to get minor overheads, which could impact the performance of microservices, particularly in high-load environments in same cases.?

2.???? Learning Curve and Team Expertise. Company already have a big code database on Java and team not supporting moving to Kotlin. Let’s imagine if just one member or few members in develop team want to migrate to Kotlin CTO\ Engineering manager should looking with critical thinking of it. How many members of team really want and can easily (not only by words) start be writing on Kotlin? What will happened if one day few Kotlin funs will just leave company after finished migration and then what impact will be in this case? Once you moved Kotlin you need separate team to support it or current java developers should make step on learning curve Java to Kotlin. ????

3.???? ROI and Justification. The benefits of migrating to Kotlin might not justify the costs involved, especially if your current Java codebase is stable, well-optimized, and meets all business requirements. The effort required to retrain the team, refactor code, and test thoroughly might not result in a significant enough improvement to warrant the change.

4.???? Long-Term Maintenance. Over the long term, maintaining a Kotlin codebase may introduce challenges if the team lacks deep expertise in the language. It’s easy to find library interface on Java with code example but Kotlin example in most cases are not there for developer.

5.???? Hiring and training. Hiring and training new developers familiar with Kotlin might also be more difficult compared to Java, which has a larger talent pool. For example based on index.dev Java have 443508 jobs and Kotlin have only 10027 opened. While Java 11% always on top 3 programming languages with Python - 16%, GO - 10% (by Google) Kotlin – 1,48 placed on places 14-15 with Scala 1.59% (another JVM based lang) not even included in top 10.

6.???? Future and History. Let’s see it on different angle of view. How many successful opensourced platforms was developed on Kotlin? Java was originally appeared 1995 (29 years ago) and only top well know projects are Spring Framework, Apache Hadoop, Apache Kafka, Elasticsearch, Apache Tomcat, Keycloak, Jenkins and many others. How about GO (2009-14 years ago) that using for developing mainstream in our days Kubernetes ecosystem on it. Yes because behind GO there is big company Google. Long time ago behind java was Sun and after Oracle. Typescript by Microsoft. Java it’s enterprise stack standard language from JAVA EE times and have big history starting 1991. How about Kotlin. Kotlin was originally were appeared 13 years ago and developed by JetBrains company. I personally love JetBrains products and active fun of it developing tools but JetBrains it’s company not gigantic as Google or Oracle or Microsoft. So for backend it’s more hard for them pushing there project to word. Even they were succeed with mobile platforms with Google company approve. But for 13Y almost like GO 14y Kotlin language not included even in top 10 programing languages (excluding mobile development). ?

?Why you can migrate Java to Kotlin:

1.???? Develop team all in one voice want to do migration Java to Kotlin (all in one voice should be determinate on team meetings) and after meeting everybody wants to rewrite code to kotlin and support it in long term.

2.???? Investor or company support develop team financially with their passion moving to kotlin and see same advantages about moving like increase loyalty and motivation of development team.

3.???? HR department and investors are ready for challenges finding good not junior but senior Kotlin developer on small market, ready to train current developers team and understands time effort for learning curve and migration ussies.

?Conclusion:

?Migrating from Java to Kotlin might seem appealing due to strong developers teams support and effort to do so, but it’s essential to weigh the benefits against the potential downsides. If your current Java-based microservices are performing well, the risks and costs associated with migration may not be justified.

In many cases, enhancing the existing Java codebase or incrementally adopting Kotlin where it makes the most sense might be a more prudent approach.

要查看或添加评论,请登录

Konstantin B.的更多文章

社区洞察

其他会员也浏览了