Kotlin went mainstream in May 2017 thanks to a welcome assist from Google, but Big Nerd Ranch’s Kotlin journey started in 2015 with an internal app called KoffeeKüp.
In our focus on delivering high-quality courses, books, and applications, it sometimes became easy to pass menial tasks like refilling the coffee carafe onto the next under-caffeinated developer.
We needed a way to encourage each other to refill the coffee, and KoffeeKüp was born.

KoffeeKüp provided us with a playground for playing with some of the technologies that were piquing our interest at the time: MVVM, data binding, Slack bots, and most importantly, Kotlin.
From that point forward, we started building internal apps and experiments in Kotlin.
We offered Kotlin work on our consulting projects, and once Google announced their official support, our clients were the ones starting the Kotlin conversation.

The Book

Our books are the result of our combined experience in application development and in teaching our courses.
By the time it gets to you, the content in Kotlin Programming: The Big Nerd Ranch Guide has been taught in numerous classes, where we take your feedback and hear the problems that you’re running into as developers.

In Kotlin Programming: The Big Nerd Ranch Guide, we start from core principles that you may know from other languages: basic data types, conditionals, collections etc. and introduce them within the context of the Kotlin programming language.
If you’re a Java developer, some of this will be familiar to you.
Kotlin adds useful twists to these tried-and-true standards; once you use conditional expressions, for example, you’ll see opportunities to clean up lots of existing code.

With that foundation set, we dive deep into object-oriented programming principles in Kotlin.
Kotlin gives you remarkable power in how you initialize objects - we have a whole chapter on it!
You’re not limited to object-oriented programming in Kotlin, though - we’ll also walk through how Kotlin gives you the flexibility to integrate functional programming into your workflow.

Kotlin Programming: The Big Nerd Ranch Guide is platform-agnostic, but we make sure to take some time to highlight common patterns on Android.

There’s so much more to cover, from anonymous functions to extensions and beyond.
We do this all in Big Nerd Ranch’s example-driven style: we introduce concepts within the context of a project that you get to build throughout the book.
If you’ve ever wanted to build your own text adventure, then this is the book for you.

We humbly hope that you love the book as much as we love the language that spawned it.