Kotlin Articles
Kotlin Value Classes and Inline Classes: Zero-Overhead Type Safety
A deep dive into Kotlin inline class and value class compilation, boxing elimination, JVM signatures, Android performance patterns, and serialization compatibility.
Read Post
Kotlin Symbol Processing: KSP from Annotation Scanning to Code Generation
A full walkthrough of KSP as a KAPT replacement, from SymbolProcessor and Resolver to CodeGenerator, incremental builds, multiplatform support, and migration.
Read Post
Kotlin Sealed Classes and Interfaces: Type-Safe UI State
A practical guide to Kotlin sealed classes and sealed interfaces, from exhaustive when checks to type-safe Compose UI state, MVI reducers, Flow results, and Navigation routes.
Read Post
Kotlin Contracts: Smart Casts, Type Inference, and callsInPlace
A deep dive into Kotlin Contracts, showing how returns() implies and callsInPlace help the compiler recover smart casts, variable initialization, and better type inference.
Read Post
Kotlin Context Receivers: Type-Safe Implicit Contexts
How Kotlin Context Receivers provide type-safe implicit context injection, avoid Multiple Receivers ambiguity, and fit Android ViewModel and Compose architecture.
Read Post
Jetpack Compose Phases: From Composition to Layout and Drawing
A deep dive into the three Jetpack Compose phases: Composition, Layout, and Drawing, with state reads, skip behavior, and performance guidance.
Read Post
Android Custom Lint Rules: From UAST Trees to Detector Implementation
A practical end-to-end guide to Android custom Lint rules, covering UAST, Detector implementation, packaging, integration, and debugging.
Read Post
Android On-device LLM Streaming Output: From Tokens to Compose UI
A full-stack architecture for Android on-device LLM streaming output, covering KV Cache memory pressure, Kotlin Flow backpressure, and incremental Compose rendering.
Read Post
Android DataBinding Two-Way Binding: From ObservableField to StateFlow
A deep dive into Android DataBinding two-way binding, generated binding code, invalidation loops, and the architectural move from ObservableField and LiveData to StateFlow and Compose.
Read Post
Android BLE End to End: GATT, Scanning, and Long-Lived Connections
A practical guide to Android BLE development, covering the GATT protocol stack, scan power tradeoffs, reconnection, Doze handling, and multi-device long-connection management.
Read Post
Android Feature Flags and Gradual Rollouts
A practical Android feature flag architecture covering remote config, local cache, hash buckets, staged rollout, kill switches, sticky enrollment, and Firebase tradeoffs.
Read Post
Android Internationalization: Configuration, Resources, and App Locale
A practical guide to Android internationalization, covering Configuration, ContextWrapper isolation, Android 13 per-app locales, and Crowdin translation pipelines.
Read Post
Advanced Kotlin Coroutines and Flow: Applications and Internals
Async programming is unavoidable in Android development. This guide explains advanced Kotlin Coroutines and Flow usage, from structured concurrency to reactive streams.
Read Post
Android Modular Scroll Containers: From ViewTypes to Section Engines
A section-based Android page container architecture using ConcatAdapter, lazy loading, and module-level paging to decouple complex ecommerce screens.
Read Post