# Why Learning Scala Gave Me Déjà Vu of Kotlin: A Developer's Journey

DevFeed: [Why Learning Scala Gave Me Déjà Vu of Kotlin: A Developer's Journey](<https://devfeed.tech/articles/why-learning-scala-gave-me-deja-vu-of-kotlin-a-developer-s-journey-22877.md>)

Original publisher: [Read original article](<https://medium.com/mindorks/why-learning-scala-gave-me-d%C3%A9j%C3%A0-vu-of-kotlin-a-developers-journey-3126b0e80272?source=rss----f1a763fc7443---4>)

Author: Kavya P S

Published: 2024-10-16T06:49:14Z

Content type: opinion

Language: en

Sources: [Mindorks - Medium](<https://devfeed.tech/sources/mindorks-medium.md>)

Topics: [Scala](<https://devfeed.tech/topics/scala.md>), [Kotlin](<https://devfeed.tech/topics/kotlin.md>), [Functional programming](<https://devfeed.tech/topics/functional-programming.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [beginners-guide](<https://devfeed.tech/tags/beginners-guide.md>), [developer](<https://devfeed.tech/tags/developer.md>), [functional-programming](<https://devfeed.tech/tags/functional-programming.md>), [journey](<https://devfeed.tech/tags/journey.md>), [kotlin](<https://devfeed.tech/tags/kotlin.md>), [learning](<https://devfeed.tech/tags/learning.md>), [programming](<https://devfeed.tech/tags/programming.md>), [scala](<https://devfeed.tech/tags/scala.md>)

## AI overview

A Kotlin Android developer reflects on beginning to learn Scala for backend development and finding familiar concepts in its syntax and features. The article compares the languages through examples including conciseness, type inference, functional programming, null safety, extension functions, pattern matching, and operator overloading. The author notes that the comparison is based on only a few hours of Scala study.

## Source excerpt

Imagine you're 2 years deep into creating cool stuff with Kotlin for Android and you decide to venture into an unfamiliar territory -- Backend development with Scala. You are all prepared to start from zero. But as you go on, it feels strangely familiar, like meeting an old friend. Let me take you through my journey -- exploring Scala was a bit like déjà vu, reminding me of Kotlin in unexpected ways. Come along as I share this story of two coding worlds that seemed oddly similar to me! Disclaimer: Before I begin, I am only one day deep into Scala learning -- okay 2-5 hours deep thanks to this RockTheJVM tutorial! So, this article is not a consolidated list, but a spoiler before you learn the basics of Scala as a Kotlin developer (or vice versa). Before we begin, here's a "textbook" answer for similarities between Kotlin and Scala (thanks to ChatGPT) -- feel free to skip it! Kotlin and Scala, while having their unique features, share some similarities in their syntax. Here are a few key similarities between Kotlin and Scala:1. Conciseness: Both Kotlin and Scala are designed to reduce boilerplate code, allowing developers to write more with less. They provide concise syntax for common operations, making the code cleaner and easier to read. 2. Type Inference: Both languages support type inference, allowing developers to omit explicit type declarations in many cases. The compiler can often deduce the types based on the context, reducing verbosity in code. 3. Functional Programming Features: Both languages incorporate functional programming concepts. They support higher-order functions, immutable data structures, lambda expressions, and various functional programming paradigms. 4. Null Safety: Kotlin and Scala provide features to handle null references safely. Kotlin has a robust system with nullable and non-nullable types, while Scala includes options like `Option` or `Some` to deal with null values. 5. Extension Functions/Methods: Both languages support extension functions