this post was submitted on 05 Apr 2024
522 points (94.4% liked)

Programmer Humor

19503 readers
1268 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 19 points 7 months ago (2 children)
[–] [email protected] 15 points 7 months ago (3 children)

This is literally how this all started for us lol. Senior wanted to try to migrate everything to Kotlin in our project. Migration never finished. Now one of our major repos is just half Kotlin half Java. Devs on our team learn Kotlin by unexpectedly encountering it when they need to touch that code.

[–] [email protected] 9 points 7 months ago

Maybe it's because I know both languages but is that really a big issue for people? The interop is great, and kotlin is very readable, so the cost of context switching between the two is miniscule.

Some people have an extreme aversion to learning new things though. I feel that holding yourself to the standards and limits of your lowest performers isn't a great thing.

[–] [email protected] 4 points 7 months ago (1 children)

Sounds like you're making progress, your devs are slowly learning a better language that will let them work faster and will soon be able to help port the rest of the codebase and then you can really accelerate when no one needs to touch or know Java.

[–] [email protected] 3 points 7 months ago

I really hope so. Last code I reviewed was full of !! and companion objects trying to emulate Java static instead of top-level consts. Even I'm still trying to figure out what idiomatic Kotlin looks like. We got a ways to go...

[–] [email protected] 3 points 7 months ago (1 children)

Doesn't Kotlin has interoperability with Java? I didn't used it much yet but I'm about to in a few months. Is it that difficult to just refactor things to Kotlin when you need to change something in the project? I'm asking because I just can't work with verbose languages and would prefer Kotlin to Java everyday.

[–] [email protected] 1 points 7 months ago

The interoperability is both a blessing and a curse imo since it let us half-ass the integration by leaving a bunch of Java code unconverted. I could start refactoring everything but then my team would stop reviewing my PRs due to the diff size (and then my manager would eventually find out that I've been using up work time doing this instead of shipping features during crunch week).

I really much prefer Kotlin to Java. I just wish my team had actually had a commitment to it instead of just sorta using it with no migration plan.

[–] [email protected] 3 points 7 months ago* (last edited 7 months ago) (1 children)

Just use Scala*** ((objectively better language¹))

  1. scala does not support breaking out of loops, it does errors on early returns, uses parentheses for array indexing, compiles extremely slowly, ...
[–] [email protected] 1 points 7 months ago

Just use Clojure****