kotlowski.hashnode.devStop Googling Like a Junior: Advanced Search Operators for Android DevelopersMost Android developers use Google incorrectly. They type keywords, skim the first results, open blogs, read opinions, and hope the answer is there. This works for basics. It fails immediately when the problem is real: obscure crashes, lifecycle edge...Jan 8·3 min read
kotlowski.hashnode.devBuilding an Android App Without Gradle or Android StudioUnderstanding the Android Build Process From First Principles Most Android developers have built hundreds of apps — yet very few have actually built an APK. They press Run in Android Studio. Gradle executes. An app appears on the device. But what act...Jan 4·5 min read
kotlowski.hashnode.devWhy Dagger Hilt Fails in Android Projects (The Same 3 Reasons Every Time)If Dagger Hilt fails in your Android project, it almost never fails randomly. It fails in the same three places, over and over again — not because Hilt is complex, but because its setup is unforgiving.You can write code that looks correct, compiles w...Dec 26, 2025·3 min read
kotlowski.hashnode.devSupercharge Your Debugging: Mastering Network Inspector in Android StudioHave you ever hit a wall trying to debug an API call in your Android app? Maybe the server responds with unexpected data, or your Retrofit call just doesn't go through—but you can't figure out why. Android Studio’s Network Inspector is your secret we...Dec 18, 2025·3 min read
kotlowski.hashnode.devremember vs rememberSaveable in Jetpack Compose - What's the Real Difference?This article expands on the basic difference between remember and rememberSaveable in Jetpack Compose and explains how state, lifecycle, and configuration changes interact under the hood. Why state management matters in Compose Jetpack Compose is...Dec 9, 2025·3 min read