Android & Kotlin Technical Articles

Detailed articles on Android development, Jetpack Compose internals, Kotlin coroutines, and open source library design by skydoves, Google Developer Expert and maintainer of Android libraries with 40M+ annual downloads. Read practical guides on Retrofit, Compose Preview, BottomSheet UI, coroutine compilation, and more.

Exclusive Articles
RSS

This is a collection of private or subscriber-first articles written by the Dove Letter, skydoves (Jaewoong). These articles can be released somewhere like Medium in the future, but always they will be revealed for Dove Letter members first.

Deep Dive into Kotlin Data Classes, Coroutines, Flow, and K2 Compiler

This book is designed for Kotlin developers who want to deep dive into the Kotlin fundamentals, internal mechanisms, and leverage that knowledge in their daily work right away.

KotlinCoroutines
Wednesday, January 15, 2025
How Compose Synchronizes with Android's Choreographer

Every frame in a Compose application starts with a signal from the Android Choreographer. The Choreographer is the system component that schedules work to run in sync with the display's VSYNC pulse, ensuring that UI…

ComposeCoroutinesAndroid
Sunday, May 10, 2026
The Machinery Behind the Magic: How Kotlin Turns suspend into State Machines

Kotlin Coroutines have become the standard for asynchronous programming on the JVM, offering developers a way to write sequential, readable code that can pause and resume without blocking threads. Most developers…

CoroutinesKotlin
Tuesday, February 24, 2026
Building a Google Maps Style Bottom Sheet with Jetpack Compose

Google Maps popularized a bottom sheet pattern that most Android developers recognize immediately: a small panel peeking from the bottom of the screen, expandable to a mid height for quick details, and draggable to full…

ComposeCoroutinesAndroid
Sunday, February 15, 2026
WorkManager Internals: How Guaranteed Background Work Actually Works, and Why Service Can't

Android's WorkManager has become the recommended solution for persistent, deferrable background work. Unlike transient background operations that live and die with your app process, WorkManager guarantees that enqueued…

CoroutinesArchitectureKotlin
Thursday, February 12, 2026
Scalable API Response Handling Across Multi Layered Architectures with Sandwich

Modern Android applications commonly adopt multi layered architectures such as MVVM or MVI, where data flows through distinct layers: a data source, a repository, and a ViewModel (or presentation layer). Each layer has…

CoroutinesNetworkArchitecture
Sunday, February 8, 2026
CancellationException in Coroutines

Kotlin Coroutines introduced structured concurrency as a fundamental principle, ensuring that coroutines are properly scoped and cancelled when their parent scope completes. At the heart of this mechanism lies…

CoroutinesKotlin
Sunday, January 18, 2026
Exploring the Internal Mechanisms of Landscapist Core

Landscapist Core is a standalone image loading engine built from scratch for Kotlin Multiplatform. Unlike Landscapist's wrappers around Coil, Glide, and Fresco, Landscapist Core handles fetching, caching, decoding, and…

CoroutinesArchitectureKotlin
Sunday, January 18, 2026
Breaking down the ViewModel's Internal Mechanisms and Multiplatform

Android's ViewModel has become an essential component of modern Android development, providing a lifecycle-aware container for UI-related data that survives configuration changes. While the API appears simple on the…

Kotlin MultiplatformCoroutinesArchitecture
Tuesday, January 6, 2026
How Coil works under the hood: LRU caching, performance trade-off, bitmap sampling

Image loading is one of the most critical yet complex aspects of Android development. While libraries like Glide and Picasso have served developers for years, Coil emerged as a modern, Kotlin-first solution built from…

CoroutinesPerformanceKotlin
Monday, November 24, 2025
A Study: How Retrofit, written in Java, interpolates Kotlin's Coroutines to enable `suspend` functions

In the modern Android development ecosystem, the synergy between Kotlin and Java is quite still important since many of very traditional projects are written in Java. A prime example of this great interoperability is…

CoroutinesNetworkKotlin
Sunday, August 24, 2025

Like what you see?

Subscribe to Dove Letter to get weekly insights about Android and Kotlin development, plus access to exclusive content and discussions.