this post was submitted on 25 Aug 2023
66 points (94.6% liked)
Programming
17364 readers
154 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities !webdev@programming.dev
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Java is getting better each year plus Kotlin works in the same eco system and is hyper popular. I don't think that Java will wither any time soon.
I really like Kotlin, I would much prefer using it at work instead of Java
It sure is! We moved a few years ago and no one regrets.
Advertising it on work is not an option? Because the technical barrier to change language inside the JVM ecosystem is quite low.
Why not use it at work? It’s incredibly easy. You can even replace it a single file at a time.
That's not possible for one person to do out of their own personal preferences in a large scale enterprise application.
It would be a project wide migration with tons of people working on it and testing afterwards.
I do not know why you think this. You bring it up at an architectural meeting, you begin by explaining the reduction in bugs (there are plenty of studies for this). Then after you get buy in you can literally add the Kotlin library to your pom or build.gradle or buck or whatever system you use and then you can add a single file for Kotlin and it just works. You don’t have to migrate anything, even existing files. I know. I’ve done it multiple times at multiple companies. Migration is incredibly easy if you want to do it, but you can literally just have both side by side with no problems. You wouldn’t need testing for anything except the new code you added. In fact a great way to start with Kotlin is by using it for test files. Then you don’t need to test anything related to the Kotlin code at all!
And yes, I’ve been the “one person” pushing the Kotlin so I do understand the political and technical problems you have to deal with. It really isn’t as difficult as you think.
Going to a hybrid would technically be easy it's true, but very few people know Kotlin so no one would write it, not even the ones who know it since others need to be able to read it.
I'm not nearly high enough hierarchically to call a shot like this or be able to continually enforce it. I usually always ask my team leader for his opinion even if I'm simply adding some kind of dependency.
I really think you’re overstating how difficult Kotlin is to learn. I’ve converted over 30 people to Kotlin, and it doesn’t take more than a few minutes for them to get the gist of it. If you use Lombok it’s even easier. Just say it’s Lombok without all the bytecode manipulation, it’s actually part of the language.
People love using it once they see it. I’ve had one single person go back to using Java after using Kotlin. Do you use anything like groovy, cucumber, aspectj, powermock, etc? If so you have an even greater argument here. It’s much easier to learn Kotlin than to get any new employee up to speed on those tools and frameworks.
Just try. It really sounds like you don’t believe in yourself here. I wasn’t high ranking when I switched my last company over to Kotlin. The language really speaks for itself. There are also plenty of resources giving you ammo for convincing.
Kotlin is a very easy transition, and it sorts out a ton of issues that you find in Java. Certainly easier than moving to Rust.