LanguagesLunch Talk15min
The Java Habits I Unlearned After Reviewing Kotlin
The talk explores how reviewing Kotlin code revealed better practices that improved the speaker’s Java programming. It covers lessons on null safety, immutability, and functional design, showing how modern Java supports these ideas. It’s a personal journey toward writing clearer, safer, and more intentional Java without switching languages.
talk.summaryAiDisclaimer
Rijo SamABN AMRO Bank
Working with the same language for years can make certain habits feel natural, even when they quietly make code harder to understand and maintain. I discovered this while reviewing Kotlin code written by my wife. Her solutions were often smaller, safer, and easier to reason about than my Java equivalents, even when solving the same problems. That contrast forced me to question long-standing Java habits I had stopped noticing.
Join me as I share examples from those code reviews and show how they changed the way I write Java today. I walk through how I now approach null safety, how I design immutable data structures, and how a more functional style helped me simplify real production code. I also show how modern Java supports many of these ideas, making it possible to apply the lessons without switching languages.
This talk is not a language comparison and not a migration story. It is a personal account of how learning from someone else’s Kotlin helped me write clearer, safer, and more intentional Java code.
Join me as I share examples from those code reviews and show how they changed the way I write Java today. I walk through how I now approach null safety, how I design immutable data structures, and how a more functional style helped me simplify real production code. I also show how modern Java supports many of these ideas, making it possible to apply the lessons without switching languages.
This talk is not a language comparison and not a migration story. It is a personal account of how learning from someone else’s Kotlin helped me write clearer, safer, and more intentional Java code.