Well said! Languages are tools. The tools are either suitable or less-than-suitable for a given problem domain.
Java and Kotlin are both very mature, successful languages, on JVM which is an amazing platform. (And the IDE tools available with the refactoring power is jaw-droppingly wonderful.)
I sort of liken the Java/Kotlin battle like the Java/C# battle. Same story, once again. Java on JVM is successful, with wonderful tools. And C# on .NET is successful, with wonderful tools.
Which tool to use, for which platform, really depends on the problem trying to be solved and for what target audience, and with what kind of deployment model.
Everything in the top 50 of the TIOBE Index charts is easily a winner, as a reflection of the industry.
I couldn't agree more!
Also, the battle is kinda healthy for the languages to keep up and not slack.
I completely agree with you. I used Java for a long time, and Kotlin was a breath of fresh air. Especially since we can't use Java 9 and above on Android. However, I had moments where I was solving a given problem in Kotlin and thought "Eh, this would've been easier/more straightforward to do in Java", and that's OK. Both languages have their pros and cons, but ultimately both are means to an end. People seem to easily forget that we could already do amazing stuff with Java, long before Kotlin even existed.
Exactly. You have spoken the truth.
I love Kotlin, and it introduced me to a whole new set of features i could not have dreamed in java(altough java is not lagging behind anymore). But let us not forget that if Kotlin is so great is mostly because Java JVM , libraries and community are great. And Java isnt going anywhere
I agree with this. I also prefer Kotlin at the moment and get to use it at work but do feel like Java gets pooped on a lot.
It's not that bad I'm fine with it but I definitely would rather use Kotlin over it at the moment.
That said, like you also mentioned. I haven't even tried java 10+ yet. It's getting better but I don't think it's there yet.
Yes, Kotlin is really nice.
Unfortunately, as you said, some people talk down on Java more than is needed.
It's too much this vs that in software and it's only getting worse lately. Take for example C# it's like Kotlin guys. Just hate the Java all the way and compare previous issues with current features of opposite program. And it's worse on global scale now FP vs OOP. Well in case FP people forgot a lot of things they use are built with OOP style. Although on both sides there are people who start this talk down on "opposite" side in my experience it's usually anti-Java people and FP people who start useless discussions.
Comparing things is extremely useful for learning but why think it's the only approach if you like it? This is kind of getting religiously extreme. Scala is good example how to p**s of everyone. It's useful it provides both FP and OOP and does not exclude something just because some programming ideology think it's bad it lets you make the decision. It should be also with the languages and tech in general. The best programming language/paradigm, framework, OS... is the one that gets the job done (or the one that makes you more money :D )
Kotlin does sound really cool. I personally haven't tried it yet.
When it was decided to do an Android app for our graduation project, my colleague suggested using Kotlin, but I thought we should leverage our knowledge in Java as it was the first language we learned at university and the one we took the most courses in, and it has served us well!
Great I develop with kotlin,I will comment that it fantastic nonetheless Java is quite good and has a strong community.The developers of both languages do not need to panic because they similar and easy to switch my advise is that it better to work smart than hard
Streams and lambdas are awful in Java 8. Completable Futures are... ok, but way more complicated than coroutines. Java’s type system is way less safe... I don’t need to compare kotlin to 7... 8 is bad enough.
It's like spoken languages:
Norwegian, Swedish and Danish are so like they can be understood by each other...
English have many country adaptions.
German is strictly
Italian is fast...
Swahili... I don't know any...
really Good Topic
Java makes me want to slit my throat open and Kotlin not, what can I say 🤷♂️
I guess that everyone is entitled to have an opinion at some point.
If you're interested in some more info, check out this article by Jake Wharton on Android's Java 8 Support
I'm bias because I really didn't how understand programming Android apps till I started to use Kotlin.
That's understandable and fine. There is absolutely no fault there.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.