Skip to content

Instantly share code, notes, and snippets.

@jaymoid
Last active March 30, 2021 09:44
Show Gist options
  • Save jaymoid/655b8dab1d0476d4e2930f326569fecf to your computer and use it in GitHub Desktop.
Save jaymoid/655b8dab1d0476d4e2930f326569fecf to your computer and use it in GitHub Desktop.

Some Recommended Kotlin Resources

Books

Kotlin Programming: The Big Nerd Ranch Guide
Josh Skeen, David Greenhalgh
First on the list for a reason.

This is the most well-rounded Kotlin book I have come across. It was written by teachers, has exercises at the end of chapters, recommendations for clean/idiomatic code, and doesn't lend on prior Java knowledge. Additionally it was released in 2018 so it includes more of the recent language features.
Safari
Amazon

Kotlin in Action
Dmitry Jemerov, Svetlana Isakova
This was the first major book to come out, and was written by two of engineers at JetBrains.

It's a very thorough book, and covers a lot of core syntax and features for the time it was written, it's very good for that reason. However it lacks end of chapter exercises, it leans on prior Java knowledge (and general programming knowledge), and it doesn't include some the more recent language features due to the time it was released (e.g. coroutines). Although reasonably easy to follow, I found it a little dry. It doesn't have the pedagogy and engaging approach that new people the language may need (especially non Java devs).
Manning books link
Amazon
Safari

Books that aren't out yet, but...

Head First Kotlin
David Griffiths, Dawn Griffiths
Available as an EAP on Safari. I'm a big fan of the teaching style of the head first books, David & Dawn Griffiths have each written several from the this series (I had their Android book, which was very useful). So far it looks like a good gentle introduction to Kotlin, rich with tips, diagrams, plus amusing and memorable examples.
Safari

Atomic Kotlin, book and online course
Bruce Eckel, Svetlana Isakova
Svetlana Isakova (Jetbrains Kotlin team and coauthor of Kotlin in Action) joins forces with Bruce Eckel, who is probably best known for writing the best selling "Thinking in Java" back in 1998.
Online course
Free Sample
Main site

Videos

Hadi Hariri's O'Reilly video series
Jetbrains' Kotlin developer advocate takes you through all the features of Kotlin. From the basics to the advanced stuff, plus some of the more functional programming things.
Safari: Introduction to Kotlin
Safari: Advanced Kotlin Programming
Safari: Functional Programming in Kotlin

KotlinConf You can watch all of the talks from KotlinConf 2017 and 2018 online:
2018
2017

Courses

Coursera - Kotlin for Java Developers (JetBrains official)
Svetlana Isakova, Andrey Breslav
https://www.coursera.org/learn/kotlin-for-java-developers

Online Resources

Kotlin By Example
Comprehensive example of kotlin features, can be edited and re-ran from the browser!
https://play.kotlinlang.org/byExample/overview

Try.kotl.in!
http://try.kotl.in - Try Kotlin straight in your browser. Try.kotl.in contains several different areas:

  1. Example code, from "Hello World!" to higher order functions. Everything you need to get used to the Kotlin Syntax.
  2. Kotlin Koans, A series of exercises, each one teaches you a new Kotlin feature as you progress... (Also available on github to fork and to run in your IDE, if you'd prefer - I'd recommend this approach.)
  3. Kotlin In Action, all the sample code from the book.

Kotlin homepage
Links to most things and instructions to get you up and running: http://kotlinlang.org, such as Language Reference & API docs

Kotlin Weekly Stay up to date with the latest articles and news on Kotlin. Website Twitter

Podcasts

Talking Kotlin
Great podcast, hosted by Hadi Hariri with various guests.
http://talkingkotlin.com

Fragmented Podcast Strictly speaking an Android podcast but they have so many podcasts that heavily focus on Kotlin, it's worth checking out to cherry pick out the Kotlin ones.
http://fragmentedpodcast.com/

Online Coding katas/challenges

First see Kotlin Koans above, but these are also good:

Exercism
Coding challenges, with the added bonus of mentors that review your code and offer suggestions and help. https://exercism.io/

Hackerrank
Website providing plenty of coding challenges.
https://www.hackerrank.com/

Codewars
A personal favourite of mine. Solve problems, see other people's solutions.
https://www.codewars.com/

CodinGame
Literal gamification of learning a programming language and techniques.
https://www.codingame.com

Kata-log
Not Kotlin specific, but a noteworthy selection of coding katas.
http://kata-log.rocks/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment