Archive for May 18, 2017

Thursday, May 18, 2017 [Tweets] [Favorites]

Android Adds Official Kotlin Support

Steve Yegge (Hacker News):

The only way a new language can make a big splash -- and I think this has been true for at least ten, maybe twenty years -- is for it to have a “killer app”. It needs a platform that everyone wants to use so badly that they’re willing to put up with learning a new language in order to program on that platform.

It turns out the perfect killer app here -- and this brings us full circle -- is Android’s crappy Red Light APIs. When you’re zooming along the road in Android-land, every time you hit an API that stops you in your tracks, you curse the platform. It doesn’t actually matter how many good APIs Android has, as long as there are sufficiently many bad ones to make you pause and look around for big solutions.

[…]

When you have a big gap like that, there’s an opportunity for a language-based solution. And unsurprisingly, the full-on departures are all based around specific languages that aren’t Java.

Kotlin’s competitive advantage, though, is that it’s not a full-on departure. It’s completely 100% interoperable and even interminglable with Java, almost (though not quite) to the extent that C++ was to C. Kotlin feels like an evolutionary step. You can just start mixing it right into your existing Android project, right there in the same directories, and call back and forth without batting an eyelash.

Mike Cleron (Hacker News):

Today the Android team is excited to announce that we are officially adding support for the Kotlin programming language. Kotlin is a brilliantly designed, mature language that we believe will make Android development faster and more fun. It has already been adopted by several major developers — Expedia, Flipboard, Pinterest, Square, and others — for their production apps. Kotlin also plays well with the Java programming language; the effortless interoperation between the two languages has been a large part of Kotlin’s appeal.

The Kotlin plug-in is now bundled with Android Studio 3.0 and is available for immediate download. Kotlin was developed by JetBrains, the same people who created IntelliJ, so it is not surprising that the IDE support for Kotlin is outstanding.

In addition to the IDE support, we’re announcing a collaboration with JetBrains to move Kotlin into a non-profit foundation. (Kotlin is already open sourced under Apache2.)

Maxim Shafirov:

Starting now, Android Studio 3.0 ships with Kotlin out of the box, meaning Android developers no longer need to install any extras or worry about compatibility. It also means that moving forward, you can rest assured that both JetBrains and Google will be supporting Android development in Kotlin.

In case you are concerned about other platforms that Kotlin supports (Kotlin/JVM for server and desktop, Kotlin/JS and Kotlin/Native), please be sure that they are as important for us as ever. Our vision here is to make Kotlin a uniform tool for end-to-end development of various applications bridging multiple platforms with the same language. This includes full-stack web applications, Android and iOS clients, embedded/IoT and much more.

Brandon Williams & Lisa Luo (tweet):

At Kickstarter, Android and iOS development co-exist harmoniously. Our small team of native engineers have spent the past two years embracing functional programming, from building our Android app using RxJava to rewriting our iOS app in Swift using ReactiveSwift. We have learned a lot from a cross-platform functional workflow and will talk about how FP, Swift and Kotlin have unified our approach in writing consistent code across platforms. We will give a tour of the features of Kotlin and all its similarities, strengths, and weaknesses with respect to Swift.

See also: Swift is like Kotlin.