Kotlin + Coroutines + Jetpack Compose are more like a match made in heaven. I am glad that Google went on the path of introducing compose as a declarative ui framework that gives one full control and transparency of the UI state. Kotlin gives us the power of expressiveness and avoiding too much boilerplate we used to write in Java, Coroutines saves us from callback hell and Compose saves us from inconsistent behaviour introduced by inheritance in legacy android view system including the hurdles of not having a single source of truth in legacy android view system.