THTom Horvatinunderdroid.hashnode.dev·Apr 7 · 7 min readProto DataStore for Configuration, Room for Entities: Choosing the Right Cache MediumThere's a reflexive tendency in Android development to pick one persistence library and apply it everywhere. You chose Room, so everything goes in Room. You liked DataStore, so now your user preferenc00
THTom Horvatinunderdroid.hashnode.dev·Apr 1 · 13 min readSelf-Referential Generics in Kotlin: When Type Safety Requires Talking to YourselfKotlin's type system is expressive enough to let you write code that is simultaneously statically typed, runtime validated, and ergonomic at the call site. That combination usually requires some machi00
THTom Horvatinunderdroid.hashnode.dev·Mar 26 · 5 min readLean CachingOrchestrating data between a remote API and a local database is a foundational problem in mobile development. While the industry consensus rightly leans toward the Single Source of Truth pattern, the 00
THTom Horvatinunderdroid.hashnode.dev·Mar 24 · 10 min readStop Copying Gradle CodeIf you've worked on a multi-module Android project, you know the pain: build.gradle.kts files multiplying like rabbits, each containing the exact same Android compileSdk, Kotlin compiler options, and 00