Jetpack Compose: First Impressions and Learning Resources ➟
Jetpack Compose is finally in beta. Here are my first impressions using its beta, and some recommended resources for getting started with it.
I started learning Jetpack Compose this week. Two days into that adventure, here's a quick look at how a neat clock design can be built up in Compose, step-by-step.
Publishing Android libraries to MavenCentral in 2021 ➟
MavenCentral is the place to be for Android libraries, but publishing there is no easy task. With JCenter going away soon, this problem is more timely than ever. Here's the step-by-step guide on how to do it.
Sealed goodies coming in Kotlin 1.5
Kotlin 1.5 will bring exciting new features, among them improvements to sealed classes and an introduction of sealed interfaces. Let's take a look at what that will look like!
Let's send this one off so that we can get started on a better one. The "usual" recap of what I've done this year.
Mastering API Visibility in Kotlin
When designing a library, minimizing your API surface - the types, methods, properties, and functions you expose to the outside world - is a great idea. This doesn't apply to just libraries: it's a consideration you should make for every module in a multi-module project.
Effective Class Delegation
One of the most significant items of the Effective Java book is Item 18: Favor composition over inheritance. Let's see how Kotlin promotes this with class delegation.
Krate, a better SharedPreferences experience
Accessing SharedPreferences using its API directly can be somewhat inconvenient. Krate is a library built on Kotlin delegates to simplify the use of SharedPreferences.