Kotlin has been emerging as a programming language to keep a close eye on. It started as an internal project at JetBrains back in 2011 and was released early the next year. Taking inspiration from both classic C-based languages and a number of modern alternatives like Scala, Kotlin is branded as a "pragmatic" language and modeled to encourage smarter coding and easier readability. JetBrains has been tiptoeing up to an official v1.0 release for a few months, and today, it's finally here.

While it's still a fledgling language, Kotlin has earned some enthusiastic supporters among the Android development community, even a few Googlers have discussed using it in projects. Much of its popularity is due to JVM compatibility and support for Java 6; but more importantly, it's possible to build a project with a mix of code files written in either Kotlin or Java. This means existing code can be reused without modification and new code can be written in whatever language best serves the situation. In many ways, this is a great companion (or replacement) to Java, particularly with respect to code that controls the UI of Android apps.

If you need a convincer to at least check out Kotlin, just take a look at this blog post of tricks and shortcuts for Android Development by Antonio Leiva–let your brain hug the beautifully short code that's possible with lambda support. There's also a quick introduction video that shows off a little bit of what can be done.

In the announcement post, JetBrains points out that Kotlin is now used in quite a few of its own projects and has been adopted by many other companies for production work, as well. JetBrains is committing to maintain long-term backwards support starting with v1.0. In other words, new versions should not break code written for v1.0 or later.

There are plenty of blog posts and official documentation that cover learning and using Kotlin. Support is already baked into the IntelliJ IDEA Ultimate and Community editions, and it can be added to Android Studio by opening Preferences -> Plugins -> Install JetBrains plugin and picking Kotlin from the list (ignore the Kotlin Extensions package, it has been deprecated). Support is also available for Eclipse in the Marketplace. There's even a web-based live runner at try.kotlinlang.org for testing code without installing anything locally.