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.
Join the Kotlin Track
Track mentors

15 Mentors

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

4,101 Students

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

64 Exercises

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

About Kotlin

fun getGreeting(): String {
    return "Hello, World!"
}

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

A tremendous learning opportunity to explore the depth of your own knowledge

Exercism is fantastic in learning new languages but that is not the extent of it. If you are a "more experienced" programmer you may have encountered impostor syndrome: the idea you don't really know what you think you know. Exercism lets you solve problems and put them in the space of open feedback which is a tremendous learning opportunity to explore the depth of your own knowledge. Even if you have been programming in a language for awhile it is worth checking into Exercism to see where you stand with current implementation practices.

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 Rajesh Khadka

Rajesh Khadka Twitter

I love to share the knowledge. Kotlin similarities with other modern programming language brought me into it. Currently working on building mathematical foundations for data science.
Avatar of Lidonis Calhau

Lidonis Calhau https://github.com/lidonis

I have been a web developer for quite some time. I really like Kotlin because it's design the way a would write a new OO language. I hope we can learn it a little bit better on this track.
Avatar of James Landrum

James Landrum James Landrum

I jumped on the Kotlin train back in 2014 after learning about it being a better alternative to the awesome RetroLambda and have been a massive fan since.
Avatar of Will Madison

Will Madison https://github.com/willmadison

Passionate developer. Live long learner. Father. Geek. Frat Boy :). I've written Kotlin professionaly and it is truly a lovely and pragmatic language!
Avatar of Alex Ahern

Alex Ahern https://github.com/aahern

I work as an Android developer on one of the oldest apps in the UK Play Store. We have been using Kotlin as our primary language for around a year now, and I'd like to help others develop their skills while at the same time developing my own.
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.
Fun. Challenging. Interesting

Community-sourced Kotlin exercises

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

Flatten Array
medium
stacks
strings
Pangram
easy
pattern matching
regular expressions
strings
Series
medium
conditionals
lists
loops
strings
type conversion
Secret Handshake
easy
bitwise operations
conditionals
cryptography
enumerations
integers
loops
transforming
Largest Series Product
medium
integers
loops
strings
type conversion
math
Rail Fence Cipher
medium
cryptography
algorithms
strings
transforming
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.

Avatar of Sam Warner

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