Kotlin

Join the Kotlin Track
Kotlin is a pragmatic programming language for JVM and Android that combines OO and functional features and is focused on interoperability, safety, clarity and tooling support.
Track mentors

5 Mentors

Our mentors are friendly, experienced Kotlin developers who will help teach you new techniques and tricks.
Track students

1,359 Students

Join hundreds of students who have enjoyed learning and improving their skills by taking this track.
Track exercises

61 Exercises

Hundreds of hours have gone into making these exercises fun, useful, and challenging to help you enjoy learning.

About Kotlin

Kotlin was designed and developed by JetBrains, the company behind IntelliJ. It is a language that runs on the JVM which can target versions 6+ (including the Android platform). JetBrains wanted to use a statically typed language which can remove Java boilerplate code, provide modern functional paradigms, and had seamless two-way Java interoperability with their existing codebase. The JVM already had alternate languages like Groovy and Scala but neither fit the bill with their desired criteria, so they built Kotlin.

Kotlin syntax is similar to Scala and Swift but pulls in the best-of-breed features from other languages such as C# and Groovy. Kotlin took a pragmatic approach at features included in the language by only providing functionality that has been proven to be useful for developers. With this decision they implemented a subset of features of Scala with the intent that it will provide more maintainable code with an easier learning curve for developers looking for a "better Java".

JetBrains has a dedicated team of developers working on Kotlin with the codebase available on Github.

Join the Kotlin track
fun getGreeting(): String {
    return "Hello, World!"
}

Exercism is a great website

Exercism is a great website where I was able to have some very interesting challenges.

Relaxed. Encouraging. Supportive.

Meet the Kotlin Track mentors

Once you join the Kotlin language track, you will receive support and feedback from our team of mentors. Here are the bios of a few of the mentors of this track.

Avatar of Uzi Landsmann

Uzi Landsmann https://github.com/uzilan

I have been a developer for about 15 years, working daily with Java. I love learning new languages and am trying to learn and adopt a functional programming style.
Avatar of Mike Gehard

Mike Gehard My musings on software.

I love writing Kotlin because it has some of the power of Scala without all of the type system complexity. It is a breath of fresh air in the Java ecosystem for those of us that like the JVM but don't like Java.
Avatar of Jacob Andersen

Jacob Andersen https://github.com/simpleauthority

I've been using Kotlin for smaller projects for about a year. I find its simplicity and expressive nature very refreshing. I'm ready to help you bring your Kotlin skills to the next level.
Avatar of Mike Cifelli

Mike Cifelli https://github.com/macifell

I've been a Java programmer for quite some time and recently started converting some of my code over to Kotlin. The results have left me with a deep appreciation of the language, which is both clean and concise. It's also nice that it allows for an incremental conversion.
Avatar of Adrian Spanu

Adrian Spanu https://github.com/aspanu

I work as a software engineer full time. Although I've never worked professionally in Kotlin, I've really enjoyed the language and I generally use it for interview problems or personal projects. I'm looking forward to helping others with it as I learn along myself.
Fun. Challenging. Interesting

Community-sourced Kotlin exercises

These are a few of the 61 exercises on the Kotlin track. You can see all the exercises here.

Grains
medium
integers
Saddle Points
medium
arrays
conditionals
exception handling
integers
loops
mathematics
Robot Name
medium
pattern matching
randomness
regular expressions
strings
text formatting
Clock
medium
equality
integers
logic
object oriented programming
strings
time
Simple Cipher
hard
cryptography
exception handling
mathematics
randomness
security
strings
Minesweeper
medium
conditionals
games
integers
lists
matrices
strings
Passionate. Knowledgeable. Creative.

Meet the Kotlin Track maintainers

The Kotlin Maintainers are the brains behind the Kotlin Track. They spend their spare time creating interesting and challenging exercises that we can all learn from. We are incredibly grateful for their hard work. Here are the bios of a few of the maintainers of this track.

Sam Warner

I am a software developer and consultant working for Black Pepper Software, a software company based in Leamington Spa, England. I'm a recent Computer Science graduate from the University of Warwick, and love all things to do with computers!

Get started with the Kotlin track. As with everything on Exercism, it's 100% free!

Join the Kotlin Track